2012-03-30 4 views
2

У меня установлен Xcode, и инструменты командной строки работают. Macports не удается правильно создать jamvm 1.5.0, поэтому я пытаюсь создать последнюю версию (1.5.4) вручную.Building jamvm 1.5.4 на OS X Lion

./configure не жалуется ни на что.

марка выдает следующее сообщение об ошибке:

Making all in src 
make all-recursive 
Making all in os 
Making all in darwin 
Making all in i386 
/bin/sh ../../../../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I../../../../src -I../../../../src -g -O2 -MT init.lo -MD -MP -MF .deps/init.Tpo -c -o init.lo init.c 
mkdir .libs 
gcc -DHAVE_CONFIG_H -I. -I../../../../src -I../../../../src -g -O2 -MT init.lo -MD -MP -MF .deps/init.Tpo -c init.c -fno-common -DPIC -o .libs/init.o 
mv -f .deps/init.Tpo .deps/init.Plo 
/bin/sh ../../../../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I../../../../src -I../../../../src -g -O2 -MT dll_md.lo -MD -MP -MF .deps/dll_md.Tpo -c -o dll_md.lo dll_md.c 
gcc -DHAVE_CONFIG_H -I. -I../../../../src -I../../../../src -g -O2 -MT dll_md.lo -MD -MP -MF .deps/dll_md.Tpo -c dll_md.c -fno-common -DPIC -o .libs/dll_md.o 
/var/folders/32/hp4r3m7140q7_d3y4j9lw31m0000gn/T//ccG8KLc8.s:159:suffix or operands invalid for `sub' 
/var/folders/32/hp4r3m7140q7_d3y4j9lw31m0000gn/T//ccG8KLc8.s:175:suffix or operands invalid for `push' 
/var/folders/32/hp4r3m7140q7_d3y4j9lw31m0000gn/T//ccG8KLc8.s:187:suffix or operands invalid for `push' 
/var/folders/32/hp4r3m7140q7_d3y4j9lw31m0000gn/T//ccG8KLc8.s:192:suffix or operands invalid for `push' 
/var/folders/32/hp4r3m7140q7_d3y4j9lw31m0000gn/T//ccG8KLc8.s:264:suffix or operands invalid for `add' 
make[5]: *** [dll_md.lo] Error 1 
make[4]: *** [all-recursive] Error 1 
make[3]: *** [all-recursive] Error 1 
make[2]: *** [all-recursive] Error 1 
make[1]: *** [all] Error 2 
make: *** [all-recursive] Error 1 

Как я могу это исправить?

ПРИМЕЧАНИЕ: сборка Macports завершилась с другой ошибкой.

+0

Некоторые поисковые запросы предполагают, что это 32/64 бит путаницы в ассемблере. есть ли флаг настройки для установки 64-битного (если это то, что у вас есть) или принудительной 32-разрядной совместимости? –

ответ

3

Как говорит Эндрю, это проблема, связанная с наличием 32-разрядных инструкций ASM и попыткой скомпилировать ее как 64-битную. Легкий выход - заставить GCC в 32-битный режим.

make clean 
CFLAGS="-m32" ./configure 

Это делает компиляцию и производит для меня двоичный файл.

Смежные вопросы