如何在 Mac OS X 上的 CMake 下修复 QX11Info 类的链接错误

如何在 Mac OS X 上的 CMake 下修复 QX11Info 类的链接错误

我正在尝试建立克x针,它是为 Linux 设计的,在 OS X 上。我已经通过安装 MacPorts、XCode、KDE ​​等并对构建文件进行了微小的更改来完成大部分工作,但在构建的最后阶段遇到了这个错误该项目:

Linking CXX executable kxstitch.app/Contents/MacOS/kxstitch
Undefined symbols for architecture x86_64:
  "QX11Info::display()", referenced from:
      Editor::keyPressAlphabet(QKeyEvent*) in Editor.o

构建脚本中的关键行是:

cmake -DCMAKE_INSTALL_PREFIX= kde4-config --prefix.. && make -j${THREADS}

这是CMakeLists.txt

缺少的符号似乎是 Qt 的一部分。作为通过 MacPorts 安装 KDE 的一部分,安装了许多 Qt 相关的软件包,包括 qt4-mac、qt4-mac-devel 和 qt4-x11。 cmake的输出包括:

-- Looking for QT_MAC_USE_COCOA
-- Looking for QT_MAC_USE_COCOA - found
-- Found Qt-Version 4.8.2
--  -> QT_QMAKE_EXECUTABLE is /opt/local/bin/qmake
--  -> QT_INCLUDE_DIR is /opt/local/include
--  -> QT_QTCORE_INCLUDE_DIR is /opt/local/include/QtCore
--  -> QT_BINARY_DIR is /opt/local/bin
--  -> QT_LIBRARY_DIR is /opt/local/lib
--  -> QT_PLUGINS_DIR is /opt/local/share/qt4/plugins
--  -> QT_MKSPECS_DIR is /opt/local/share/qt4/mkspecs

对于如何继续的任何建议,我将不胜感激。

更新:我已经读过OS X 上 QtGui 库的问题,虽然我不知道如何将解决方案转换为 CMAKE。

相关内容