Dies ist ein leerer Rahmen für das Projekt in C ++. Es sollte helfen, ein neues Projekt zu starten, ohne sich viel um Projekt-/Build -Umgebungsaufbau zu kümmern.
external/CMakeLists.txt und cmake/cleanCppExtension.cmake todo sehen, wie Todo funktioniert
git clone https://github.com/kracejic/cleanCppProject.git yourNewProject
cd yourNewProject
mv .git .git-cleanCppProject
git init
git add .
git commit -m "first commit"
Mehr in der Arbeit.
Wir verbessern dieses Repo regelmäßig, wenn Sie mehr von uns bekommen möchten, versuchen Sie, das Hauptrepo zu ziehen.
cd yourNewProject/
git pull --git-dir='.git-cleanCppProject'
Arch Linux: sudo pacman -S cmake g++ graphviz git clang clang-tools-extra cppcheck java-runtime-common cppcheck
Ubuntu 16.04: sudo apt-get install cmake g++ graphviz plantuml git clang clang-tidy clang-format cppcheck
Zwei Möglichkeiten, die getestet wurden:
MSYS2 basiert
pacman -S cmake g++ gitpacman -S clang mingw-w64-x86_64-clang-tools-extra mingw-w64-x86_64-clang-analyzer doxygenc:Program FilesGraphviz , so dass Skripte es finden können) und fügen Sie das bin -Unterverzeichnis zum Pfad hinzu, installieren Sie Java (haben Sie das Bin -Verzeichnis auf dem Pfad ), laden Sie die Plantuml -JAR -Datei herunter und haben Sie es auf dem Weg .Microsoft Visual Studio
brew install llvm doxygen cppcheck graphvizStandard -Makefiles:
mkdir build ; cd build
cmake ..
make -j8
Ninja Build Witch Clang, bauen Sie alle+doc und installieren Sie es in den Ordner Dist:
mkdir build ; cd build
cmake -GNinja -DCMAKE_CXX_COMPILER="clang++" ..
ninja all doc install
Release Build, das sich nach sudo make install in /usr installiert
mkdir build ; cd build
cmake .. -DCMAKE_INSTALL_PREFIX="/usr" -DCMAKE_BUILD_TYPE="Release"
make -j8 all
sudo make install
Unter Windows sollten Sie Ninja bevorzugen, da es viel schneller ist als zu machen (hat aber keine Farbe in der Shell).
Mit GCC:
mkdir build ; cd build
cmake -GNinja ..
ninja install
Sie können cmake -G "MSYS Makefiles" .. Wenn Sie make verwenden möchten.
Zuerst können Sie den Projektnamen in den Haupt CMakeLists.txt ändern. Gehen Sie einfach mit dem Projekt in den Ordner, erstellen Sie ein neues Verzeichnis und erstellen Sie mit diesem: Projektdateien:
mkdir buildmsvc
cd buildmsvc
cmake -G "Visual Studio 14 2015" ..
Und Sie können jetzt eine .sln -Datei mit Visual Studio öffnen. Sie müssen mit der rechten Maustaste auf ausführbares Ziel klicken und als Startprojekt festgelegt werden . Um das Konsolenfenster wirklich zu sehen, das Sie ohne Debuggen beginnen möchten, ist die Konsole -Witwe zu schnell geschlossen.
HINWEIS: Die Verfügbarkeit einiger Ziele hängt von der Verfügbarkeit bestimmter ausführbarer Ausführungszeichen ab (z. B. Klangformat für das Formatziel ).
build_dir/doc/doc/index.htmldoc/CMakeLists.txt-DCMAKE_INSTALL_PREFIX - Ort für die Installation-DVERSION_HOST - Maschinenname erstellen, siehe Version.H.in-DCMAKE_BUILD_TYPE - für den Buildtyp-DMEASURE_ALL=ON/OFF - Messen Sie die Zeit aller Zusammenstellungen, am besten mit einzelnen Thread -Build verwendet. Braucht time (UNIX).-DUSE_GOLD_LINKER=ON/OFF - Ob Sie mit Gold -Linker verknüpft werden soll.Copyright (C) 2019 Kracejic
Die Erlaubnis wird hiermit einer Person, die eine Kopie dieser Software und zugehörigen Dokumentationsdateien (der "Software") erhält, kostenlos erteilt, um die Software ohne Einschränkung zu behandeln, einschließlich ohne Einschränkung der Rechte, zu verwenden, zu kopieren, zu modifizieren, zusammenzufassen, zu veröffentlichen, zu veröffentlichen, zu verteilen, zu verteilt, und/oder Kopien der Software zu ermöglichen, um Personen zu beanstanden, an denen die Software zugänglich ist, um die folgenden Bedingungen zu beantragen.
Die oben genannte Copyright -Mitteilung und diese Erlaubnisbekanntmachung müssen in alle Kopien oder wesentlichen Teile der Software enthalten sein.
Die Software wird "wie es ist" ohne Garantie jeglicher Art, ausdrücklich oder stillschweigend bereitgestellt, einschließlich, aber nicht beschränkt auf die Gewährleistung der Handelsfähigkeit, die Eignung für einen bestimmten Zweck und die Nichtverletzung. In keinem Fall sind die Autoren oder Urheberrechtsinhaber für Ansprüche, Schäden oder andere Haftungen haftbar, sei es in einer Vertragsklage, unerbittlich oder auf andere Weise, die sich aus oder im Zusammenhang mit der Software oder anderen Geschäften in der Software ergeben.