Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1814381
  • 博文数量: 274
  • 博客积分: 2366
  • 博客等级: 大尉
  • 技术积分: 1880
  • 用 户 组: 普通用户
  • 注册时间: 2007-04-22 09:37
文章分类

全部博文(274)

文章存档

2022年(1)

2020年(10)

2019年(7)

2018年(18)

2017年(26)

2016年(32)

2015年(43)

2014年(30)

2013年(44)

2012年(36)

2011年(17)

2010年(10)

分类: LINUX

2016-01-31 09:06:22

环境:ubuntu11.10

编译器:hisiv200的gcc版本4.4.1

代码:valgrind版本3.7

//============================================================

hisiv200 的工具目录在 /home/tomren/hisi-linux

注意设置工具链的时候使用绝对路径!不要使用相对路径,我开始使用~/hisi-linux/...会提示找不到编译器。

(我当时没注意它找不到编译器的提示,因为我反复执行单条命令是可以编译成功文件的)

命令如下:

CC='/home/tomren/hisi-linux/x86-arm/arm-hisiv200-linux/bin/arm-hisiv200-linux-gnueabi-gcc' LD='/home/tomren/hisi-linux/x86-arm/arm-hisiv200-linux/bin/arm-hisiv200-linux-gnueabi-ld' CXX='/home/tomren/hisi-linux/x86-arm/arm-hisiv200-linux/bin/arm-hisiv200-linux-gnueabi-c++' AR='/home/tomren/hisi-linux/x86-arm/arm-hisiv200-linux/bin/arm-hisiv200-linux-gnueabi-ar' CFLAGS="-I/home/tomren/hisi-linux/x86-arm/arm-hisiv200-linux/arm-hisiv200-linux-gnueabi/target/usr/include/" LDFLAGS="-L/home/tomren/hisi-linux/x86-arm/arm-hisiv200-linux/arm-hisiv200-linux-gnueabi/target/usr/lib" ./configure --host=armv7-a-linux --build=i686-pc-linux-gnu --prefix=/home/tomren/valgrind

下面这个只是为了看着工整点:

1 CC='/home/tomren/hisi-linux/x86-arm/arm-hisiv200-linux/bin/arm-hisiv200-linux-gnueabi-gcc' 2 LD='/home/tomren/hisi-linux/x86-arm/arm-hisiv200-linux/bin/arm-hisiv200-linux-gnueabi-ld' 3 CXX='/home/tomren/hisi-linux/x86-arm/arm-hisiv200-linux/bin/arm-hisiv200-linux-gnueabi-c++' 4 AR='/home/tomren/hisi-linux/x86-arm/arm-hisiv200-linux/bin/arm-hisiv200-linux-gnueabi-ar' 5 CFLAGS="-I/home/tomren/hisi-linux/x86-arm/arm-hisiv200-linux/arm-hisiv200-linux-gnueabi/target/usr/include/" 6 LDFLAGS="-L/home/tomren/hisi-linux/x86-arm/arm-hisiv200-linux/arm-hisiv200-linux-gnueabi/target/usr/lib" 7 ./configure --host=armv7-a-linux --build=i686-pc-linux-gnu --prefix=/home/tomren/valgrind

--host 是编译后运行的平台

--build 是编译器运行的平台

--prefix 是执行 make install 后安装的目录

如果使用的 CFLAGS 和 LDFLAGS 如果有多个路径,使用冒号“:”分割。

//============================================================

感觉编译成功也是运气吧,一点点试出来的。

如果把时间都算下来,我差不多试了2天多些,希望能帮助要在相同芯片上使用valgrind的朋友。

//============================================================

在这个正确编译版本之前,我还试了下面这个命令,因为我们的CodeBlocks下的CFLAGS设置了这些参数,

但我在这里也同样设置时编译过程中报错了,我并不知道原因,去掉后就正常编译过了。

CC='/home/tomren/hisi-linux/x86-arm/arm-hisiv200-linux/bin/arm-hisiv200-linux-gnueabi-gcc' LD='/home/tomren/hisi-linux/x86-arm/arm-hisiv200-linux/bin/arm-hisiv200-linux-gnueabi-ld' CXX='/home/tomren/hisi-linux/x86-arm/arm-hisiv200-linux/bin/arm-hisiv200-linux-gnueabi-c++' AR='/home/tomren/hisi-linux/x86-arm/arm-hisiv200-linux/bin/arm-hisiv200-linux-gnueabi-ar' CFLAGS="-fpic -shared -fvisibility=hidden -marm -mcpu=cortex-a9 -mfpu=vfp -mfloat-abi=softfp -march=armv7-a -mtune=cortex-a9 -fsingle-precision-constant -fsigned-char  -I/home/tomren/hisi-linux/x86-arm/arm-hisiv200-linux/arm-hisiv200-linux-gnueabi/target/usr/include/:/home/tomren/hisi-linux/x86-arm/arm-hisiv200-linux/arm-hisiv200-linux-gnueabi/include/c++/4.4.1" LDFLAGS="-L/home/tomren/hisi-linux/x86-arm/arm-hisiv200-linux/arm-hisiv200-linux-gnueabi/target/usr/lib:/home/tomren/hisi-linux/x86-arm/arm-hisiv200-linux/arm-hisiv200-linux-gnueabi/lib" ./configure --host=armv7-a-linux --build=i686-pc-linux-gnu --prefix=/home/tomren/valgrind

//============================================================
此外我还修改了configure文件中的一处地方

我在

gcc_version=`${CC} --version \

| head -n 1 \
| $SED 's/i686-apple-darwin10//' \
| $SED 's/i686-apple-darwin11//' \
| $SED 's/^[^0-9]*\([0-9.]*\).*$/\1/'`

这句话的地方添了下面这句话,对gcc_version又强制赋值了一次。

gcc_version=4.4.1

gcc_version中的4.4.1是通过目标编译器的gcc --version得到的

之所以添上这句话,是因为通过第一条命令的出的gcc_version变量在后面会有问题,后面打印出来是200

(我输出过gcc_version是4.4.1,我并不知道后面使用时为什么是200)

所以默认情况下会出错,得到:

checking dependency style of /home/tomren/hisi-linux/x86-arm/arm-hisiv200-linux/bin/arm-hisiv200-linux-gnueabi-gcc... gcc3
checking for diff -u... yes
checking for a supported version of gcc... no (200)
configure: error: please use gcc >= 3.0 or clang >= 2.9

//============================================================

End :)

阅读(1504) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~