2016-04-07 12 views
4

Wir haben Gradle bereits seit einem Jahr für unser C++ Projekt verwendet, aber mit der wachsenden Komplexität des Projekts und der zunehmenden Nutzung/Erstellung von Bibliotheken beschäftige ich mich mit Situationen wo meine Kenntnis von Gradle zu kurz kommt.Umzug von Gradle nach CMake für C++ Projekt

Das Netz ist voll von hilfreichen Ressourcen für Gradle, aber es ist extrem Java konzentriert. Außerdem habe ich nicht viele C++ Projekte mit Gradle gesehen. Aus diesen Gründen denke ich über den Wechsel zu CMake nach, da ich an einem Punkt bin, an dem ich unsere Build-Skripte wesentlich bearbeiten muss.

Ist der Schritt zu CMake, ein Kampftest und ubiquitäres C/C++ Build-System, es wert? Oder ist es die Sache mit Gradle, die vor kurzem in das C++ Spiel gekommen ist, wert?

Hinweis: Ich weiß, dass sie andere C++ options out there sind, aber CMake scheint die, die unsere aktuelle Lösung am besten ersetzen würde.

Antwort

7

Mein Rat wäre, CMake zu verwenden. Viele Projekte haben es bereits erfolgreich genutzt. CMake verfügt auch über die Funktionen CPack und CTest, die bei der Arbeit mit Projekten sehr hilfreich sind. Darüber hinaus können viele IDE-Projekte mit Gradle oder CMake erstellt werden.

Nur um darauf hinzuweisen, CMake ist kein Build-System, sondern ein Build-System-Generator.

+0

Nach einigen Prototyping sieht CMake wie der Go. Danke für die Antwort. – Jad

+1

Wenn Sie nach einer IDE mit guter CMake Unterstützung suchen, besuchen Sie bitte CLion: https://www.jetbrains.com/clion/ – phoenix

+0

Emacs ist der einzige Editor. Sie können es zu einer IDE machen. https://tuhdo.github.io/c-ide.html genießen. CLion ist zu teuer und langsam. Es ist eine Bloatware. Ich habe es für ein ganzes Jahr benutzt. Zu langsam für die Analyse von C++ - Code. Sie schreiben falschen Code und es gibt Ihnen einen Hinweis nach 30 Sekunden, abhängig von der Codebasis. Für eine ausreichend große Codebasis ist es schwierig, das Projekt selbst zu laden. Sobald ich eine 10G Codebase versuchte und es starb. Ja, ich hatte es 16G JVM Heap gegeben. – user902384