Я пытаюсь встроить библиотеку wxWidgets в пользовательский путь в операционной системе Fedora 27.
Я достиг wx-config
распознавание пути к файлу и работа с выполнением cmake. Кроме того, я загружаю библиотеки и включаю каталоги на основе модифицированного файла wxWidgets finder cmake, который устанавливаетwx-config
Пользовательский путь успешно.
Но cmake не загружает мою конфигурацию wxWidgets. Я имею в виду, wx_gtk2u_jpeg-3.1
встроенная библиотека не может быть основана (может быть /usr/lib/libwx_gtk2u_jpeg-3.1.so
). я нуждаюсь jpeg
зависимость от wxWidgets для моего проекта.
Я уверен, что проблема не в файлах cmake. Однако проблема заключается в компиляции wxWidgets, потому что cmake может найти другие встроенные зависимости в /usr/lib/
Я на самом деле установил libjpeg-turbo-devel
пакет, который включает в себя libjpeg.h
необходимо для построения wxWidgets без успеха libwx_gtk2u_jpeg-3.1.so
создание.
Самое странное, что $ wx-config --libs
показывает wx_gtk2u_jpeg-3.1
lib, чтобы быть связанным и путями подсказки, что это должно быть основано.
Команды wxWidgets для сборки:
$ ./configure --with-libjpeg=builtin --with-libpng=builtin --with-libtiff=builtin --with-zlib=builtin --with-expat=builtin --enable-webviewwebkit=no --prefix=/opt/cpp_dependencies/2018Q1/usr'
$ make -j 4
$ make install
Вы можете проверить мои файлы cmake, выходные данные cmake и выходные данные сборки wxWidgets, чтобы воспроизвести его: https://gist.github.com/jjalvarezl/b70accae269ef56c56010bedf157c27f
Вы можете увидеть строку 1543 файла вывода wxWidgets, в которой находится библиотека jpeg buildin
и 1564 из того же файла, make install
команда, которая устанавливает все libwx_<lib_name>.so
библиотеки в финал /usr/lib
дорожка. Во всяком случае, никто не содержит необходимой библиотеки.
Пожалуйста, покажите точное сообщение об ошибке, так как неясно, в чем проблема. Что я могу сказать, так это то, что различные встроенные версии сторонних библиотек, таких как libjpeg, всегда статические библиотеки, даже когда сами wxWidgets являются общими. То есть вы никогда не будете иметь libwx_gtk2u_jpeg-3.1.so
, только .a
,
Я также настоятельно рекомендую использовать системные версии сторонних библиотек в системах Unix. Это означает, что ваши приложения wxWidgets будут получать обновления безопасности от вашего поставщика ОС, и вы не рискуете столкнуться с какими-либо несовместимостями из-за использования в вашем приложении 2 разных версий одной и той же библиотеки.
Других решений пока нет …