waf — кросс-компиляция, обнаружение компилятора

У меня есть перекрестно скомпилированные rootfs в ${ARMHOST}, которые я ранее создал через buildroot для цели armv5te/ARM9 (ядро ARM926t, также известное как ARM926ej-s), пытающегося использовать цепочку инструментов CodeLite.

waf distclean
ARMHOST="${HOME}/buildroot-2013.08/output/host";
export PKG_CONFIG_PATH="${ARMHOST}/usr/lib/pkgconffg/";
export CC="${ARMHOST}/opt/ext-toolchain/arm-none-linux-gnueabi/bin/gcc";
export AR="${ARMHOST}/opt/ext-toolchain/arm-none-linux-gnueabi/bin/ar";
export CROSS_COMPILE="/usr/bin/arm-none-eabi-";
export CFLAGS="-march=armv5te -I${ARMHOST}/usr/include/ -I${ARMHOST}/opt/ext-toolchain/arm-none-linux-gnueabi/include/";
export LDFLAGS="-L${ARMHOST}/usr/lib/";
waf configure debug

В результате чего

'distclean' finished successfully (0.000s)
Setting top to                           : ~/Desktop/myapp 
Setting out to                           : ~/Desktop/myapp/build 
Checking for 'gcc' (c compiler)          : not found 
Checking for 'icc' (c compiler)          : not found 
could not configure a c compiler!
(complete log in ~/Desktop/myapp/build/config.log)

Wscript использует context.load('compiler_c gnu_dirs glib2') на каждом этапе для загрузки функций.


Обновление №1: если я заменю compiler_c на gcc, то в итоге получится: CC="${ARMHOST}/opt/ext-toolchain/arm-none-linux-gnoabi/bin/gcc" AR= «${ARMHOST}/opt/ext-toolchain/arm-none-linux-gnueabi/bin/ar». : ${ARMHOST}/opt/ext-toolchain/arm-none-linux-gnueabi/bin/gcc Не удалось определить тип компилятора


Итак, как я могу сказать waf, что этот компилятор основан на gcc? (цепочка инструментов исходного кода lite 2013)

Нужно ли создавать новый профиль компилятора или есть более простой способ?


person drahnr    schedule 09.09.2013    source источник


Ответы (1)


Не используйте .../host/opt/ext-toolchain/arm-none-linux-gnueabi/bin/gcc, но .../host/opt/ext-toolchain/bin/arm-none-linux-gnueabi-gcc - обнаружение gcc, очевидно, сделано каким-то вуду

person drahnr    schedule 09.09.2013