2015-04-08 4 views
6

Мне нужно перекрестно скомпилировать VALGRIND для запуска на Freescale i.MX278 (ARM 9) под управлением Linux. У меня есть цепочка инструментов, предоставляемая самой Freescale.Кросс-компиляция Valgrind для ARM

Я уже установил переменную PATH в путь цепи инструмента. Я дополнительно используя следующую команду:

$ export CROSS_COMPILE=arm-fsl-linux-gnueabi- 
$ export CC=${CROSS_COMPILE}gcc 
$ export CPP=${CROSS_COMPILE}cpp 
$ export CXX=${CROSS_COMPILE}g++ 
$ export LD=${CROSS_COMPILE}ld 
$ export AR=${CROSS_COMPILE}ar 

$ ./configure --target=arm-fsl-linux-gnueabi \ 
       --host=armv7-fsl-linux-gnueabi \ 
       --prefix=/opt/valgrind \ 
       CFLAGS=-static 

Он проходит ./configure, но не на make с следующей ошибкой:

gcc: error: unrecognized command line option ‘-marm’ 

ответ

13

Сначала выполните следующую команду, чтобы сделать изменения в файле конфигурирования

sed -i -e "s # armv7 # arm # g" configure

Затем запустите опцию configure.

Он будет скомбинирован с успехом.

+0

У меня такая же проблема, и я попробовал ваше решение, но все же получил ту же ошибку. Моя настройка: './configure --target = arm-none-linux-gnueabi --host = armv7-none-linux-gnueabi'. Любой другой способ исправить это? –

+0

Какова версия valgrind, которую вы пытаетесь скомпилировать? –

+0

Я использую последнюю версию valgrind, которая является valgrind-3.13.0. –