C语言 在 ubuntu for arm 上编译 TCC 时出现问题



我尝试使用 gcc 4.6.3 为 ARM 编译 tcc .但是在共享/静态库 mod 中编译时出现以下错误:

root@localhost:/p/tcc/tcc# make
gcc -o tcc tcc.o libtcc.so.1.0 -lm -ldl -Wall -g -O2 -fno-strict-aliasing -Wno-pointer-sign -Wno-sign-compare -D_FORTIFY_SOURCE=0  -Wl,-rpath,"/usr/local/lib" libtcc.so.1.0: undefined reference to `vrotb'
collect2: ld returned 1 exit status
make: *** [tcc] Error 1

我正在使用来自tcc github的最新分支

刚刚在树莓派(ARMv6 CPU(上检查了它。 https://github.com/TinyCC/TinyCC 存储库,从 tccgen.c vrotb函数中删除static限定符(第 945 行(。它建立并通过"你好世界"。

由于这是一个明显的错误,可能是由他们忘记适应ARM的某些更改引入的 - 我建议执行进一步的测试以确保它按预期工作。应该提交错误报告 - 可能在 github 上。

我知道

这有点令人困惑,但您的问题是您使用了错误的存储库。Fabrice Bellard不再在TinyCC上工作(见 http://bellard.org/tcc/(。出于个人/历史原因,他保留了他的存储库。然而,所有的发展都转移到了 http://repo.or.cz/w/tinycc.git。更令人困惑的是,Fabrice网站的0.9.26版本实际上来自 http://repo.or.cz/w/tinycc.git 存储库,而不是Fabrice自己的。但这都只是沟通问题。简而言之,您应该使用新的存储库。存储库网站上有一个指向邮件列表的链接,您应该在其中报告任何问题,以防新存储库代码无法编译。

最新更新