Компиляция Bochs на Snow Leopard Mac OS X

Все они и, по крайней мере, два других перечислены на странице инструментов beanstalkd wiki:

Лучшие из них:

9
задан Peter Hosey 12 December 2009 в 05:26
поделиться

3 ответа

Snow Leopard по умолчанию компилирует 64-битную версию, но приложения GUI Carbon должны быть 32-битными.

1
ответ дан 4 December 2019 в 11:06
поделиться

Во-первых, вам нужно будет запустить «make dist-clean», чтобы избавиться от некоторого кода библиотеки, который будет успешно скомпилирован в 64-битном режиме - это не удаляется обычным «make clean», только более радикальный dist -чисто. В противном случае ваша сборка попытается смешать 32- и 64-битный код, что не сработает.

Теперь установите CFLAGS и CXXFLAGS так, чтобы они содержали переключатель -m32 для принудительного использования 32-битного режима. Повторно запустите ./configure, затем make, и вы должны получить рабочий двоичный файл 'bochs'.

Однако, решив проблемы сборки, вы, вероятно, обнаружите, что версия Carbon больше не работает; версия X11 кажется лучшей ставкой. (По крайней мере, в моей системе Snow Leopard сборка Carbon выйдет из строя на раннем этапе с ошибкой утверждения; X11 работает так, как ожидалось.) Вы можете запустить 64-битную сборку X11 без зависимости от углерода, но я еще не пробовал этого, только 32-битный.

4
ответ дан 4 December 2019 в 11:06
поделиться

В дополнение к тому, что сказал Джеймс (добавив переключатель -m32), вам может понадобиться добавить "-arch i386" тоже.

Вот модифицированный конф-файл, который я использовал для сборки:

set echo
CFLAGS="-arch i386 -m32 -pipe -O3 -I/sw/include -fomit-frame-pointer -finline-functions -falign-loops=16 -falign-jumps=16 -falign-functions=16 -falign-labels=16 -falign-loops-max-skip=15 -falign-jumps-max-skip=15 -fprefetch-loop-arrays $CFLAGS"
CPATH="/sw/include"
CPPFLAGS=""
CXXFLAGS="$CFLAGS"
LDFLAGS="-arch i386 -m32 -L/sw/lib"
CXX="g++ -arch i386 -m32"

export CFLAGS
export CPATH
export CPPFLAGS
export CXXFLAGS
export LDFLAGS
export CXX

./configure --enable-sb16 \
     --enable-ne2000 \
     --enable-all-optimizations \
            --enable-cpu-level=6 \
            --enable-x86-64 \
            --enable-sse=2 \
            --enable-pci \
            --enable-acpi \
            --enable-debugger \
            --enable-clgd54xx \
            --enable-usb \
     --enable-plugins \
     ${CONFIGURE_ARGS}
5
ответ дан 4 December 2019 в 11:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: