Задача: на машине с Linux Mint 14 (64 бита) собрать КиКАД для 32-битного виндовса. С wxWidgets проблем нет, указал --host=i686-w64-mingw32 --prefix=$BUILD_DIR/../install/wx-win, все собралось и установилось. Теперь сборка собственно КиКАДа. В доке такой вариант сборки не описан или я его не нашел. Гуглением выяснил, что надо создать файл (win-cross.cmake) примерно следующего содержания
CODE
# the name of the target operating system
SET(CMAKE_SYSTEM_NAME Windows)
# which compilers to use for C and C++
SET(CMAKE_RC_COMPILER i686-w64-mingw32-windres)
SET(CMAKE_C_COMPILER i686-w64-mingw32-gcc)
SET(CMAKE_CXX_COMPILER i686-w64-mingw32-g++)
# here is the target environment located
SET(CMAKE_FIND_ROOT_PATH /usr/i686-w64-mingw32)
# adjust the default behaviour of the FIND_XXX() commands:
# search headers and libraries in the target environment, search
# programs in the host environment
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
SET(CMAKE_SYSTEM_NAME Windows)
# which compilers to use for C and C++
SET(CMAKE_RC_COMPILER i686-w64-mingw32-windres)
SET(CMAKE_C_COMPILER i686-w64-mingw32-gcc)
SET(CMAKE_CXX_COMPILER i686-w64-mingw32-g++)
# here is the target environment located
SET(CMAKE_FIND_ROOT_PATH /usr/i686-w64-mingw32)
# adjust the default behaviour of the FIND_XXX() commands:
# search headers and libraries in the target environment, search
# programs in the host environment
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
и указать его cmake ключем -DCMAKE_TOOLCHAIN_FILE=../win-cross.cmake. Также указал путь к wx согласно инструкции: -DwxWidgets_ROOT_DIR=$BUILD_DIR/../install/wx-win"
Теперь cmake находит работающий компилятор и OpenGL но вылетает на поиске wxWidgets.
Возможно кто-то уже имеет опыт такой кросс-сборки? Как его заставить? Я, конечно, могу полезть копать внутренности CMakeModules/FindwxWidgets.cmake, но возможно кто-то уже прошел по этим граблям?