odcctools包为Darwin OS提供了binutils。 - 例如,这允许您交叉编译到Darwin和OSX。但是,odcctools似乎无法在64位操作系统上正确构建:
./../expr.c: In function ‘expression’:
./../expr.c:311: error: ‘union <anonymous>’ has no member named ‘n_name’
或者,如果您将CFLAGS设置为-m32
,则会得到:
/usr/bin/ld: skipping incompatible ../libstuff/libstuff.a when searching for -lstuff
/usr/bin/ld: cannot find -lstuff
如何在64位操作系统上构建它?
答案 0 :(得分:3)
设置odcctools makeflags的方式,你不能使用CFLAGS - 你必须同时设置CC 和 CXX:
CC="gcc -m32" CXX="g++ -m32" ./configure blah blah blah
请注意,我必须在我的CXX上添加-fpermissive
才能运行它,但这可能不是必需的!
此外,您可能对this post感兴趣(虽然这对我的设置不够)。
(如果有人有更好的方法,请告诉我!)