https://github.com/visualboyadvance-m/visualboyadvance-m/blob/master/cmake/Toolchain-cross-m32.cmake

ите, что есть много похожих вопросов, но я нахожу, что поиск в Google для запросов CMake всегда приводит к похожим, но не одинаковым сценариям, конфликтующим командам CMake и так далее!

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

/usr/bin/ld: i386 architecture of input file `*external-32bit-lib*' is incompatible with i386:x86-64 output

Из того, что я собираю, я должен поэтому использовать:

set (CMAKE_CXX_FLAGS "-m32")

Это меняет дело - теперь я получаю несколько ошибок, таких как:

/usr/bin/ld: i386 architecture of input file `*project-output-lib*' is incompatible with i386:x86-64 output

И все равно получите те же ошибки для внешней библиотеки тоже. ядумать это потому что-m32 заставил gcc генерировать 32-битные двоичные файлы, но ld все еще пытается получить 64-битный вывод? Дальнейшее поиск по этой проблеме не принесло никакого успеха, поэтому, если бы кто-нибудь смог убедиться, что я прав, и дать правильный способ сделать это, я был бы очень благодарен!

Большое спасибо!

Ответы на вопрос(6)

Ваш ответ на вопрос