【问题标题】:How to use compiled wxwidgets with cmake如何在 cmake 中使用已编译的 wxwidgets
【发布时间】: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。

标签: c++ cmake wxwidgets


【解决方案1】:

CMake 说您的 cmake 最低版本 3.0.2 低于 wxWidgets 最低 cmake 版本 3.1.0

尝试输入命令:cmake_minimum_required(VERSION 3.1.0)

这样,您所需的最低 cmake 版本将是 3.1.0,这样就可以了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-07-06
    • 1970-01-01
    • 1970-01-01
    • 2012-10-02
    • 1970-01-01
    • 2021-07-07
    • 1970-01-01
    • 2020-07-31
    相关资源
    最近更新 更多