Почему libtool выдает ошибки "неподдерживаемые свойства жесткого кода" и что они означают?

Я кросс-компилирую gettext-0.18.2 для Windows, но столкнулся с некоторыми проблемами. На этапах связывания одной из общих библиотек, libtool выдает мне следующее сообщение об ошибке:

/bin/bash ../libtool --tag=CXX ...
libtool: link: unsupported hardcode properties
libtool: link: See the libtool documentation for more information.
libtool: link: Fatal configuration error.

Вы можете увидеть полный журнал сборки, включая libtool команда здесь (ошибка находится в самом низу страницы).

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

Также следует отметить, что действительно странно то, что сборка прошла без ошибок в Ubuntu 12.10 (Quantal)... но она не работает в Ubuntu 12.04, текущей версии LTS.


Дополнительно: я сделал различие линии, вызывающей libtool между успешной сборкой и неудачной сборкой. Дифф выглядит примерно так:

Таким образом, по-видимому, компилятор C++ исключен из команды. Может ли это вызвать вышеуказанную ошибку?

2 ответа

Решение

Ага!

Проблема оказалась чрезвычайно тонкой. Mingw-W64 Установите mingw-w64 пакет в Ubuntu 12.10 (Quantal) списки g ++ - mingw-w64 Установите g ++ - mingw-w64 как зависимость - но это не так в Ubuntu 12.04 (Precise). Так что все, что мне нужно было сделать, это указать g++-mingw-w64 как зависимость сборки.

Причиной фактического сообщения об ошибке выше было то, что скрипту configure не удалось найти компилятор C++ для кросс-компиляторной цепочки инструментов:

квантовое:

checking for g++... i686-w64-mingw32-g++
checking whether the C++ compiler (...) works... yes

Точность:

checking for g++... i686-w64-mingw32-g++
checking whether the C++ compiler (...) works... no

Я знаю, что это может быть тривиально, но обязательно установите libtool-dev:

      sudo apt-get install libtool
sudo apt-get install libtool-dev
Другие вопросы по тегам