2016-05-04 1 views
-1

У меня возникли серьезные проблемы с компиляцией кода в Windows (см. Вопрос 3d на http://www.regard3d.org). Я прочитал так много сообщений (два дня заблокирован по этой проблеме) здесь, в stackoverflow и других сайтах, но безуспешно.Проблемы с компиляцией исходного кода с помощью wxWidgets (режим MinGW) в Windows 10

Проблема в том, что ей нужны wxWidgets. Для этого я использую MinGW. У меня есть VS Community (последняя версия). Я бегу мой CMakeLists.txt и каждый раз, когда я получаю сообщение

Could NOT find wxWidgets (missing: wxwidgets_LIBRARIES wxwidgets_INCLUDE_DIRS) 

Я включил каталог WxWidgets установки (которая C:\wxWidgets-3.1.0) в PATH переменной (я перезагрузил к ней вступает в силу) и создал переменную WXWIN (который также содержит каталог установки).

Вопрос: что делать, чтобы решить эту проблему?

Я думаю, что проблема заключается не в создании wxWidgets, а в том, чтобы найти его cmake. Как уже упоминалось, я построил его с помощью MinGW, поэтому у меня есть папка C:\wxWidgets-3.1.0\lib\gcc_dll и папка C:\wxWidgets-3.1.0\include, которая содержит еще две папки с именем wx и msvc. Я использую следующие настройки перед вызвать CMake:

set wxWidgets_ROOT_DIR=C:\wxWidgets-3.1.0 
set R3D_ALT_wxWidgets_INCLUDE_DIRS=include 
set R3D_ALT_wxWidgets_LIBRARIES=lib\gcc_dll 
set wxWidgets_CONFIG_EXECUTABLE=build\msw 
+0

Я думаю, вам нужно изменить FindwxWidgets.cmake в cmake-3.x/share/cmake-3.x/modules. на строке 468 вы можете вставить wxWidgets-3.1.0. На моем компьютере я также определил wxDir = c: \ wxWidgets-3.1.0 и wxWin = c: \ wxWidgets-3.1.0 – LBerger

+0

@DiegoCoelho, вы скомпилировали wxWidgets? Если да, вы использовали MinGW или VS? Имейте в виду, что вы можете напрямую использовать VS для его компиляции, а затем ссылаться на собственный проект - CMake не требуется. Хорошо, глядя на вопрос, я считаю, что вы должны объявлять wxwidgets_LIBRARIES и wxwidgets_INCLUDE_DIRS вместо «R3D_ALT ...», как говорит ошибка. – Igor

+0

** 1 .- ** У вас есть последняя версия cmake? – Joel

ответ

0

Я не очень хорошо знаком с WxWidgets (так что это, вероятно, следует комментарий, но я не могу комментировать, потому что причины ......) , но быстрый хак, который должен работать только метание путь к библиотеке в LD_LIBRARY_PATH или включая его, добавив

CPPFLAGS += -L C:\wxWidgets-3.1.0\lib\gcc_dll -I C:\wxWidgets-3.1.0\include 

на свой Makefile.

В противном случае вы можете явно указать переменные окружения, которые он жалуется вне файла makefile.

Снова, извините, это должен быть комментарий. Это не ... Если кто-то хочет скопировать его в комментарий и удалить его, это будет грандиозно.

0

Благодарим всех вас. Решено! Вчера я скомпилировал как MinGW, так и VS и установил wxWidgets-3.1.0_INCLUDE_DIRS, и это сработало!