Problem mit wxWidgets und CMake
-
Vorab: Ich schreibe das in dieses Unterforum, weil ich den Fehler bei CMake verorte und nicht bei wxWidgets. Sollte das dennoch falsch sein, bitte verschieben.
Ich sitze momentan an einem Projekt, dessen grafische Oberfläche auf wxGTK basieren soll. Da wir CMake als Buildsystem verwenden, benutze ich es auch zum Auffinden der benötigten Bibliotheken und Include-Verzeichnisse:
find_package (wxWidgets COMPONENTS core base REQUIRED) if(wxWidgets_FOUND) include_directories(${wxWidgets_INCLUDE_DIRS}) add_definitions("-D${wxWidgets_DEFINITIONS}" ${wxWidgets_CXX_FLAGS}) else(wxWidgets_FOUND) message(FATAL_ERROR "wxWidgets not found!") endif(wxWidgets_FOUND)
Die Ausgabe in flags.make schaut dann so aus (die anderen CFlags sind von mir so definiert worden):
# CMAKE generated file: DO NOT EDIT! # Generated by "Unix Makefiles" Generator, CMake Version 2.8 # compile CXX with /usr/bin/c++ CXX_FLAGS = -march=native -pipe -Wall -Wwrite-strings -O3 -ffast-math -funroll-loops -fomit-frame-pointer -fPIC -I/usr/local/lib64/wx/include/gtk2-unicode-release-2.8 -I/usr/local/include/wx-2.8 -pthread CXX_DEFINES = -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -D__WXGTK__
Die Include-Verzeichnisse sind soweit richtig. In meinen Dateien inkludiere ich die benötigten Header nach folgendem Muster:
#include <wx/wxprec.h>
Dies entspricht auch definitiv der Ordner-Struktur in /usr/local/include/wx-2.8. Beim Kompilieren wirft der gcc aber nun folgenden Fehler aus:
fatal error: wx/wxprec.h: Datei oder Verzeichnis nicht gefunden compilation terminated.
Die Datei wxprec.h ist vorhanden und liegt dort, wo sie sein soll. Weiß jemand weiter? Googlen hat mich nicht schlauer gemacht.
-
Ich konnte das Problem lösen, Ursache war eine fehlerhafte wxWidgets-Installation.