请参考https://whycan.cn/t_4266.html,补全运行库。
我的是提示not found
后面解决了,依据帖子,gcc需要用buildroot output里面的gcc,然后添加c文件,-o test,然后编译出来就可以顺利运行了
荔枝派官方的文档实在太多坑,选了musl,但是U-boot又用gnu的编译器,这个应该才是最误导的地方
]]>建议用: arm-2014.05-29-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
这个绝对可以的, 经过实战检验的:
whycan@ubuntu:/opt/arm-2014.05/bin$ ./arm-none-linux-gnueabi-gcc -v Using built-in specs. COLLECT_GCC=./arm-none-linux-gnueabi-gcc COLLECT_LTO_WRAPPER=/opt/arm-2014.05/bin/../libexec/gcc/arm-none-linux-gnueabi/4.8.3/lto-wrapper Target: arm-none-linux-gnueabi Configured with: /scratch/maciej/arm-linux-2014.05-rel/src/gcc-4.8-2014.05/configure --build=i686-pc-linux-gnu --host=i686-pc-linux-gnu --target=arm-none-linux-gnueabi --enable-threads --disable-libmudflap --disable-libssp --disable-libstdcxx-pch --enable-extra-sgxxlite-multilibs --with-arch=armv5te --with-gnu-as --with-gnu-ld --with-specs='%{save-temps: -fverbose-asm} %{funwind-tables|fno-unwind-tables|mabi=*|ffreestanding|nostdlib:;:-funwind-tables} -D__CS_SOURCERYGXX_MAJ__=2014 -D__CS_SOURCERYGXX_MIN__=5 -D__CS_SOURCERYGXX_REV__=29' --enable-languages=c,c++ --enable-shared --enable-lto --enable-symvers=gnu --enable-__cxa_atexit --with-pkgversion='Sourcery CodeBench Lite 2014.05-29' --with-bugurl=https://sourcery.mentor.com/GNUToolchain/ --disable-nls --prefix=/opt/codesourcery --with-sysroot=/opt/codesourcery/arm-none-linux-gnueabi/libc --with-build-sysroot=/scratch/maciej/arm-linux-2014.05-rel/install/opt/codesourcery/arm-none-linux-gnueabi/libc --with-gmp=/scratch/maciej/arm-linux-2014.05-rel/obj/pkg-2014.05-29-arm-none-linux-gnueabi/arm-2014.05-29-arm-none-linux-gnueabi.extras/host-libs-i686-pc-linux-gnu/usr --with-mpfr=/scratch/maciej/arm-linux-2014.05-rel/obj/pkg-2014.05-29-arm-none-linux-gnueabi/arm-2014.05-29-arm-none-linux-gnueabi.extras/host-libs-i686-pc-linux-gnu/usr --with-mpc=/scratch/maciej/arm-linux-2014.05-rel/obj/pkg-2014.05-29-arm-none-linux-gnueabi/arm-2014.05-29-arm-none-linux-gnueabi.extras/host-libs-i686-pc-linux-gnu/usr --with-isl=/scratch/maciej/arm-linux-2014.05-rel/obj/pkg-2014.05-29-arm-none-linux-gnueabi/arm-2014.05-29-arm-none-linux-gnueabi.extras/host-libs-i686-pc-linux-gnu/usr --with-cloog=/scratch/maciej/arm-linux-2014.05-rel/obj/pkg-2014.05-29-arm-none-linux-gnueabi/arm-2014.05-29-arm-none-linux-gnueabi.extras/host-libs-i686-pc-linux-gnu/usr --disable-libgomp --disable-libitm --enable-libatomic --disable-libssp --enable-poison-system-directories --with-build-time-tools=/scratch/maciej/arm-linux-2014.05-rel/install/opt/codesourcery/arm-none-linux-gnueabi/bin --with-build-time-tools=/scratch/maciej/arm-linux-2014.05-rel/install/opt/codesourcery/arm-none-linux-gnueabi/bin SED=sed Thread model: posix gcc version 4.8.3 20140320 (prerelease) (Sourcery CodeBench Lite 2014.05-29) whycan@ubuntu:/opt/arm-2014.05/bin$
一样问题,用晕哥说的 arm-2014.05-29-arm-none-linux-gnueabi 测试可以;
下了 arm-2014.05-29-arm-none-linux-gnueabi-i686-mingw32.tar.bz2
在windows下eclipse里编译app,放到板里能正常运行;
建议用: arm-2014.05-29-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
这个绝对可以的, 经过实战检验的:
ubuntu18.04 x64需要安装32bit的依赖包:
sudo apt-get install lib32ncurses5 lib32z1 -y
]]>建议用: arm-2014.05-29-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
这个绝对可以的, 经过实战检验的:
编译 f1c100s 的文件系统只能用 2014.05-29 吗?能不能用更新的,感觉好老啊。
]]>没有影响.
你用 buildroot 编译的文件系统?那你应该用 buildroot 的 out/target 目录里面的 libc 才对.
我想可能与内核的编译器有关。晚上我再把UBOOT,内核,buildroot 都使用晕哥推荐的重新编译一圈
]]>我是用编译器目录的。不过我编译内核的编译器和buildroot的编译器不是同一个,不知道是不是有影响
没有影响.
你用 buildroot 编译的文件系统?那你应该用 buildroot 的 out/target 目录里面的 libc 才对.
]]>我遇到和楼主一样的问题,这个其实根本原因是buildroot用的编译器和编应用程序的编译器不同导致的。因为你会用到标准库,标准库是buildroot的编译器编的。
buildroot我用的是4.x,就是他推荐自带的版本,我用这个编译器编应用完全没问题
我现在也在这个坑里,请问, 是buildroot的版本要用 4.x 还是 gcc版本要 4.x ?
]]>现在在这个坑里,能说一下如何解决吗?
https://whycan.cn/t_3265.html#p28156
本贴 12 楼
]]>