【发布时间】:2013-10-22 05:39:50
【问题描述】:
我在 x86 架构上使用 OpenIMSCore。我需要为 power-pc 交叉编译 OpenIMS。在 /ser_ims/Makefile.defs 文件中有一个 ppc 选项。但我无法弄清楚如何为 ppc 交叉编译它。没有配置文件,我可以通过它配置 IMS 并为 ppc 编译它。有没有人交叉编译IMS?我尝试通过命令编译
- 制作 CFLAGS="arch=Power Macintosh"
- 制作 CFLAGS="arch=ppc"
但是这两个命令都不起作用。它给出以下错误:
Makefile.defs:598:您使用的是旧的且不受支持的 gcc 版本 (G++),编译风险自负! powerpc-linux-gnu-gcc -g -O9 -funroll-loops -Wcast-align -Wall -DNAME='"ser"' -DVERSION='"2.1.0-dev1 OpenIMSCore"' -DARCH='"i386"' -DOS='linux_' -DOS_QUOTED='"linux"' -DCOMPILER='"powerpc-linux-gnu-gcc G++"' -D__CPU_i386 -D__OS_linux -DSER_VER=2001000 -DCFG_DIR='"/usr/local/etc/ser /“” -DPKG_MALLOC -DSHM_MEM -DSHM_MMAP -DDNS_IP_HACK -DUSE_IPV6 -DUSE_MCAST -DUSE_TCP -DDISABLE_NAGLE -DHAVE_RESOLV_RES -DDBG_QM_MALLOC -DUSE_DNS_CACHE -DUSE_DNS_FAILOVER -DUSE_DST_BLACKLIST -ggdb -DUSE_TLS -DTLS_HOOKS -DFAST_LOCK -DADAPTIVE_WAIT -DADAPTIVE_WAIT_LOOPS = 1024 -DCC_GCC_LIKE_ASM -DHAVE_GETHOSTBYNAME2 -DHAVE_UNION_SEMUN - DHAVE_SCHED_YIELD -DHAVE_MSG_NOSIGNAL -DHAVE_MSGHDR_MSG_CONTROL -DHAVE_ALLOCA_H -DHAVE_TIMEGM -DHAVE_EPOLL -DHAVE_SIGIO_RT -DSIGINFO64_WORKARROUND -DHAVE_SELECT -c core_cmd.c -o core_cmd.o
core_cmd.c:在函数“core_shmmem”中: mem/../fastlock.h:181:错误:在重新加载“asm”时找不到类“MQ_REGS”中的寄存器 mem/../fastlock.h:358:错误:在重新加载“asm”时找不到类“MQ_REGS”中的寄存器 mem/../fastlock.h:181:错误:在重新加载“asm”时找不到类“MQ_REGS”中的寄存器 mem/../fastlock.h:181: error: 'asm' 操作数有不可能的约束
【问题讨论】:
标签: linux gcc makefile powerpc cross-compiling