【发布时间】:2017-06-21 14:17:22
【问题描述】:
尝试在我的项目中使用 wxwidgets 时遇到了一些麻烦(我在 linux 上)。当我使用 wxWidget 3.02 时它运行良好,但是当我尝试使用 3.1.0 时它停止工作。
我仍然有 3.0.2(所以我可以有一些工作)但我想使用 wxlistctrl::EnableCheckBoxes(),所以我得到了 3.1.0。
在我的 CMakeList 中,我将 FIND_PACKAGE(wxWidgets REQUIRED)更改为 FIND_PACKAGE(wxWidgets 3.1.0 REQUIRED)
当我尝试在我的构建目录中cmake ..时,我收到以下错误:
... could NOT find wxWidgets: Found unsuitable version "3.0.2", but required is
at least `3.1.0`(found
-L/usr/local/lib//lib/x86_64-linux-gnu; ...
我知道该库位于/usr/local/lib我试图ln到该目录,我在我的cmake中尝试了很多命令,但我不知道如何告诉cmake在好的库中搜索以找到th wxWidgets我想要的版本。
我很确定这是一个 cmake 错误,但它也可能是一个安装问题(即使我按照教程 here 进行操作)。更多,当我输入gtk-config --version我得到“3.1.1”(这是我期望的版本号,我得到的是git版本)
如果有人有任何问题或想法来解决我的问题,我很乐意阅读它 =)
谢谢!
【问题讨论】:
-
你不能使用一个普通的旧
wx-config脚本来编译你的软件吗?类似g++ -o <my_binary>wx-config --cxxflags --libs`? -
嗨!不,我不能,我的项目太大了,不能这样做。我知道我的项目实际上正在运行,我知道 wxwidgets 3.1 正在运行(感谢示例)但我的 cmake 未能找到 wxwidgets 3.1
-
那么如果您不想使用IDE(例如Anjuta),最简单最简单的解决方案是摆脱3.0并安装3.1。
-
我已经从 github 安装了 3.1 (cd build-gtk && ../configure && make && sudo make install),我试图将 3.0 文件从它们所在的位置移动到另一个位置,但是母鸡,cmake什么也没找到(谢谢你的帮助)
-
比我没主意了。对不起。尝试使用我之前提出的 g++ 命令进行编译。如果可行并且生成的命令将使用 3.1 并且不会失败 - 设置会发生一些奇怪的事情。尝试从头开始安装所有东西,使用 wx 3.0。