GNU/Libtool кросс-компиляция

У меня очень базовый вопрос о GNU/Libtool, Мой проект построен GNU/autotools и содержит общий объект, созданный GNU/Libtool, Я хочу скомпилировать i386 общий объект на x86-64 машина, так что я делаю

$ ./configure --build=i386
checking for a BSD-compatible install... /usr/bin/install -c
...
checking whether to build shared libraries... no
checking whether to build static libraries... yes
...
config.status: executing depfiles commands
config.status: executing libtool commands
$

Сценарий конфигурации сообщает мне, что разделяемые библиотеки не поддерживаются, и make Команда терпит неудачу. Как исправить эту проблему кросс-компиляции?

Должен ли я найти ответ в руководстве по Libtool?

1 ответ

Решение

--build как правило, для таких вещей, как канадская кросс- компиляция. Вы, вероятно, хотите использовать --host вариант. Вы не указали тип системы, но если ./config.guess дает что-то вроде:

x86_64-apple-darwin или же x86_64-pc-linux-gnu

Тогда вы бы уточнить

--host=i386-apple-darwin или же i386-pc-linux-gnu

Кроме того - вам может понадобиться установить некоторые флаги компилятора для генерации 32-битного кода. например,

env CC="gcc -m32" ./configure --host=....

Часто -m32 вариант достаточно - вам не нужно беспокоиться с --host вариант.

Другие вопросы по тегам