- 论坛徽章:
- 0
|
今天编译utu2440的viv(开发板自带)时,着实费了点劲.
按以下步骤编译:
1.解压
$tar xvf s3c2440-utulinux-vivi.tar.bz2
2.修改Makefile,主要修改以下几行
ARM_GCC_LIBS = /usr/local/arm/2.95.3/lib/gcc-lib/arm-linux/2.95.3
LINUX_INCLUDE_DIR = /usr/local/arm/2.95.3/include
CROSS_COMPILE = /usr/local/arm/2.95.3/bin/arm-linux-
其实当时就很费解,为什么要指定绝对路径, 如 CROSS_COMPILE = arm-linux-
然后在PATH中指定编译器所在目录的路径,事实上本人也是这么做的, 没想到噩梦就此开始了.
先后用3.4.1, 3.3.2的版本编译,出现一系列错误,如:
cannot exec `cpp0' //发现只在2.95.3版本中存在
boot_kernel.c:175: sizeof applied to an incomplete type //应该是头文件的问题
as: unrecognized option `-mapcs-32' //在/usr/local/arm下建立一个到2.95.3的链接才解决
最终结论: 编译器版本最好为2.95.3, 并且安装目录需要为/usr/local/arm/2.95.3 (如果不是,建立符号链接),终于明白ARM_GCC_LIBS, CROSS_COMPILE为什么要这么设了.
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/75705/showart_1275039.html |
|