我为c6x架构编译了hello.c程序:
gcc-4.8 -o hello -march ='c64x'hello.c
但它有一个错误:错误:错误值(c64x)for -march = switch
貌似gcc无法识别c64x架构!
我使用的是Ubuntu 12.04 LTS& gcc-4.8版本。 谢谢!
答案 0 :(得分:2)
-march=name
This specifies the name of the target architecture.
但在你的情况下target is TI (c64x) board
,即其arm architecture
。要编译您需要cross-compiler
的arm架构的程序。但是你试图使用与目标目标不同的选项-march在x86
gcc native-compiler
上进行编译。即“gcc”是本机编译器。在您的情况下,您似乎没有在ARM主机上工作,因此“gcc”将无法在x86上为ARM编译。
所以请下载交叉编译工具链,然后使用您的选项编译您的程序。
ubuntu的交叉编译器就在这里
http://www.filewatcher.com/m/gcc-c6x-linux-gnu-4.7.1-0.1.20120606.fc18.1.i686.rpm.10801432-0.html