【发布时间】:2018-07-26 01:47:50
【问题描述】:
我正在尝试将 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)。我的项目需要来自 wxWidgets 的 jpeg 依赖项。
我确定问题不在于 cmake 文件。但是,问题在于 wxWidgets 编译,因为 cmake 可以找到其他构建的依赖项到 /usr/lib/
我实际上安装了libjpeg-turbo-devel 包,其中包含构建wxWidgets 所需的libjpeg.h,但没有成功创建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
您可以看到 wxWidgets 构建输出文件的第 1543 行,jpeg 库为 buildin,以及同一文件的第 1564 行,make install 命令将所有 libwx_<lib_name>.so 库安装到最终的 /usr/lib 路径中。无论如何,没有人包含所需的库。
【问题讨论】:
标签: c++ cmake shared-libraries wxwidgets building