So beheben Sie einen Linkfehler unter CMake für die Klasse QX11Info unter Mac OS X

So beheben Sie einen Linkfehler unter CMake für die Klasse QX11Info unter Mac OS X

Ich versuche zu bauenAbonnieren, das für Linux entwickelt wurde, auf OS X. Ich bin schon fast soweit, indem ich MacPorts, XCode, KDE usw. installiert und kleinere Änderungen an der Build-Datei vorgenommen habe, aber in der Endphase des Erstellens des Projekts erhalte ich diesen Fehler:

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

Die Schlüsselzeile im Build-Skript lautet:

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

Hier istCMakeLists.txt.

Das fehlende Symbol scheint Teil von Qt zu sein. Im Rahmen der Installation von KDE über MacPorts wurden viele Qt-bezogene Pakete installiert, darunter qt4-mac, qt4-mac-devel und qt4-x11. Die Ausgabe von cmake enthält:

-- 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

Für jeden Tipp zum weiteren Vorgehen bin ich dankbar.

UPDATE: Ich habe inzwischen gelesen überein Problem mit der QtGui-Bibliothek unter OS X, obwohl ich nicht weiß, wie ich die Lösung in CMAKE übersetzen soll.

verwandte Informationen