2016-07-03 8 views
-1

Ich versuche, ein OpenFrameworks-Beispiel mit CMake zu kompilieren. Bisher war ich jedoch nicht erfolgreich. Ich weiß, dass es eine ziemliche Herausforderung ist, diese Frage hier zu stellen, aber ich suche verzweifelt nach einer Lösung.Versuch, ein OpenFrameworks-Beispiel mit CMake zu erstellen

OpenFrameworks unterstützt CMake nativ nicht, jedoch verwende ich eine template, die für die Erstellung von OpenFrameworks mit Clion entwickelt wurde, die effektiv CMake verwendet. Im Folgenden finden Sie eine Erklärung, welche Verfahren ich bis jetzt verfolgt habe, um das Beispiel zu erstellen.

Intro: OpenFrameworks lebt here. Es ist eine Zusammenstellung von libs/headern und einem eigenständigen Kern. Die Beispiele sind gut mit Xcode, aber die Dinge sind kompliziert, wenn man versucht, ohne IDE zu bauen. Die Struktur von OpenFrameworks ist keine gewöhnliche, daher ist das Übergeben von Headern und Bibliotheken ein wenig manuelle Arbeit.

mir erklären lassen, wie der Build-Prozess eines Openframeworks App Werke (basierend auf der Vorlage ich oben erwähnt habe):

1) Die erste CMakeLists.txt ausgelegt ist, in der Beispiel-Anwendungsordner zu leben. Das Skript CMakeLists.txt befindet sich here.

2) Der zweite CMakeLists.txt soll in allen der Openframeworks libs und Header zu ziehen und das Skript CMakeLists.txthere befindet.

Die Idee ist, dass, wenn Sie beginnen, die Beispielanwendung zu erstellen, alle OpenFrameworks-Bits und Teile als eine gemeinsam genutzte Bibliothek erstellt und in sie hineingezogen werden. Dies funktioniert jedoch aus irgendeinem Grund nicht und ich erhalte den folgenden Fehler.

[ 10%] Performing configure step for 'of_shared' 
loading initial cache file /Users/me/dev/cpp_projects/of_sessions/of_3DPrimitivesExample/build/of_shared- prefix/tmp/of_shared-cache.cmake 
-- Configuring incomplete, errors occurred! 
See also "/Users/me/dev/cpp_projects/of_sessions/of_3DPrimitivesExample/build/of_shared-prefix/src/of_shared-build/CMakeFiles/CMakeOutput.log". 
make[2]: *** [of_shared-prefix/src/of_shared-stamp/of_shared-configure] Error 1 
make[1]: *** [CMakeFiles/of_shared.dir/all] Error 2 
make: *** [all] Error 2 

Es scheint, als ob die gemeinsame Build-Phase aus irgendeinem Grund fehlschlägt. Leider hilft die gefaltete lib/include-Struktur von OpenFrameworks auch nicht. Könnten Sie mir bitte helfen zu verstehen, was hier schief gehen könnte? Ich habe bereits ein Problem mit dem Projektbetreuer eingereicht, aber die Dinge bewegen sich in dieser Community etwas langsam. (OSX, CMake 2.8.12)

Antwort

0

Nach weiteren Untersuchungen, habe ich die CMake-Skripte zu arbeiten. Ich brauchte nur ein bisschen Zeit, um zu verstehen, was diese CMake-Dateien machen. Ich habe einige Bits optimiert und angepasst. Jetzt kann ich openFrameworks 0.9.3 als statische lib und als shared lib erstellen und kompilieren.

Es ist mir auch gelungen, die 3DPrimitivesExample unter Verwendung sowohl der STATIC als auch der SHARED Ansätze zu erstellen und zu kompilieren. All dies geschieht mit CMake und VIM. Keine andere IDE (XCode, QtCreator etc.) wurde verwendet.

+0

Dies ist eine gute OFX-Implementierung mit CMake: https://github.com/BildPeter/ofxCMake – symbolix

Verwandte Themen