针对ARM的Nano-x交叉编译

时间:2013-04-09 09:16:34

标签: arm cross-compiling

我正在尝试将nano-x交叉编译为arm架构。

我在配置文件中编辑了下一行:

  

ARCH = LINUX-ARM
  ARMTOOLSPREFIX = arm-none-linux-gnueabi -

运行make之后我有下一个错误:

Compiling engine/image_jpeg.c ...
cc1: warning: include location "/usr/include/freetype2" is unsafe for cross-compilation
/home/user/oe/nanox/microwindows-0.92/src/engine/image_jpeg.c:49: fatal error: jpeglib.h: No such file or directory
compilation terminated.
make[1]: *** [/home/user/oe/nanox/microwindows-0.92/src/obj/engine/image_jpeg.o] Error 1
make: *** [subdir-/home/user/oe/nanox/microwindows-0.92/src/mwin] Error 2

每次编译后我都会收到警告:

cc1: warning: include location "/usr/include/some file" is unsafe for cross-compilation

我尝试为我的架构编译,一切顺利。演示正在运行。

还有下一个问题:

In function 'MwSelect':
/home/user/oe/nanox/microwindows-0.92/src/mwin/winmain.c:356: error: impossible constraint in 'asm'
/home/user/oe/nanox/microwindows-0.92/src/mwin/winmain.c:357: error: impossible constraint in 'asm'
/home/user/oe/nanox/microwindows-0.92/src/mwin/winmain.c:358: error: impossible constraint in 'asm'
make[1]: *** [/home/user/oe/nanox/microwindows-0.92/src/obj/mwin/winmain.o] Error 1
make: *** [subdir-/home/user/oe/nanox/microwindows-0.92/src/mwin] Error 2

1 个答案:

答案 0 :(得分:1)

我怀疑你是在编译你的构建系统的头文件而不是目标文件。由于版本不匹配,这是一个奇怪崩溃的秘诀。

使用--sysroot=<target-root>进行编译 - 其中<target-root>是目标文件系统映像的根目录,包括标头和库文件。