编译全志r16的tina2.5笔记

source build/envsetup.sh
lunch
选择astar-parrot-tina
make -j4
pack -d

问题:
Build dependency: Please install Git (git-core) >= 1.6.5
解决:
修改 ./build/prereq-build.mk
$(eval $(call SetupHostCommand,git,Please install Git (git-core) >= 1.6.5, \
    git clone 2>&1 | grep -- --recursive))

$(eval $(call SetupHostCommand,git,Please install Git (git-core) >= 1.6.5, \
    git --version))

问题:
make[3]: Leaving directory '/opt/tina2.5/package/firmware/linux-firmware'
Unescaped left brace in regex is illegal here in regex; marked by <-- HERE in m/\${ <-- HERE ([^ \t=:+{}]+)}/ at /opt/tina2.5/out/host/bin/automake-1.15 line 3938.
make[3]: Entering directory '/opt/tina2.5/package/libs/zlib'
Argument "4.2.1" isn't numeric in numeric ge (>=) at /opt/tina2.5/scripts/feeds line 25.
make[4]: *** [Makefile:432: Makefile.in] Error 1
make[4]: Leaving directory '/opt/tina2.5/out/astar-parrot/compile_dir/target/json-c-0.12'
make[3]: *** [Makefile:56: /opt/tina2.5/out/astar-parrot/compile_dir/target/json-c-0.12/.built] Error 2
make[3]: Leaving directory '/opt/tina2.5/package/libs/libjson-c'
make[2]: *** [package/Makefile:193: package/libs/libjson-c/compile] Error 2
make[2]: *** Waiting for unfinished jobs....
Argument "4.2.1" isn't numeric in numeric ge (>=) at /opt/tina2.5/scripts/feeds line 25.
Argument "4.2.1" isn't numeric in numeric ge (>=) at /opt/tina2.5/scripts/feeds line 25.

解决:
因为perl新版不支持regrex中直接加{
/opt/tina2.5/out/host/bin/automake 与 /opt/tina2.5/out/host/bin/automake-1.15中的
$text =~ s/\${([^ \t=:+{}]+)}/substitute_ac_subst_variables_worker ($1)/ge;
都改成
$text =~ s/\$[{]([^ \t=:+{}]+)}/substitute_ac_subst_variables_worker ($1)/ge;

问题:
<-- HERE in m/\${ <-- HERE ([^ \t=:+{}]+)}/ at ./bin/automake.tmp
解决:
创建 tools/automake/patches/010-automake-port-to-Perl-5.22-and-later.patch
diff --git a/bin/automake.in b/bin/automake.in
index a3a0aa318..2c8f31e14 100644
--- a/bin/automake.in
+++ b/bin/automake.in
@@ -3878,7 +3878,7 @@ sub substitute_ac_subst_variables_worker
 sub substitute_ac_subst_variables
 {
   my ($text) = @_;
-  $text =~ s/\${([^ \t=:+{}]+)}/substitute_ac_subst_variables_worker ($1)/ge;
+  $text =~ s/\$[{]([^ \t=:+{}]+)}/substitute_ac_subst_variables_worker ($1)/ge;
   return $text;
 }


问题:
mkimage: error while loading shared libraries: libssl.so.1.0.0: cannot open shared object file: No such file or directory
解决:
安装uboot-tools(其中会带mkimage),或者单独编译uboot后取其下的mkimage,  然后要用新的mkimage替换掉out/host/bin/mkimage


问题:
gdate.c: In function 'g_date_strftime':
gdate.c:2497:7: error: format not a string literal, format string not checked [-Werror=format-nonliteral]
       tmplen = strftime (tmpbuf, tmpbufsize, locale_format, &tm);
解决:
./out/astar-parrot/compile_dir/host/pkg-config-0.29/glib/glib/gdate.c
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wformat-nonliteral"
       tmplen = strftime (tmpbuf, tmpbufsize, locale_format, &tm);
+#pragma GCC diagnostic pop

问题:
include/linux/compiler-gcc.h:114:1: fatal error: linux/compiler-gcc7.h: No such file or directory
解决:
网上下载一个compiler-gcc7.h到uboot中

问题:
alsamixer-mixer_display.o: In function `display_controls':
mixer_display.c:(.text+0xb48): undefined reference to `_nc_acs_map'
解决:
cd out/astar-parrot/compile_dir/target/alsa-utils-1.1.0/alsamixer
make clean
make

编译成功后,生成usb烧录镜像out/astar-parrot/tina_astar-parrot_card0.img
作者:帅得不敢出门

你可能感兴趣的:(LINUX)