Ini adalah bingkai kosong untuk proyek di C ++. Seharusnya membantu memulai proyek baru tanpa banyak peduli tentang pengaturan proyek/membangun lingkungan.
external/CMakeLists.txt dan cmake/cleanCppExtension.cmake TODO Lihat cara kerja TODO
git clone https://github.com/kracejic/cleanCppProject.git yourNewProject
cd yourNewProject
mv .git .git-cleanCppProject
git init
git add .
git commit -m "first commit"
Lebih banyak tentang cara mulai bekerja.
Kami meningkatkan repo ini secara teratur, jika Anda ingin mendapatkan lebih banyak dari kami, cobalah untuk menarik repo utama.
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
Dua cara, yang diuji:
berbasis msys2
pacman -S cmake g++ gitpacman -S clang mingw-w64-x86_64-clang-tools-extra mingw-w64-x86_64-clang-analyzer doxygenc:Program FilesGraphviz , sehingga skrip dapat menemukannya) dan menambahkan subdirektori bin ke jalur , instal java (miliki direktori binnya di jalur ), unduh file jaruml plantuml dan miliki di jalur .Microsoft Visual Studio
brew install llvm doxygen cppcheck graphvizMakefiles Standar:
mkdir build ; cd build
cmake ..
make -j8
Ninja membangun dentang penyihir, membangun semua+doc dan instal ke folder dist:
mkdir build ; cd build
cmake -GNinja -DCMAKE_CXX_COMPILER="clang++" ..
ninja all doc install
Rilis Build yang akan menginstal dirinya ke /usr setelah sudo make install
mkdir build ; cd build
cmake .. -DCMAKE_INSTALL_PREFIX="/usr" -DCMAKE_BUILD_TYPE="Release"
make -j8 all
sudo make install
Pada jendela Anda harus lebih suka ninja karena jauh lebih cepat daripada membuat (tetapi tidak memiliki warna di shell).
Dengan GCC:
mkdir build ; cd build
cmake -GNinja ..
ninja install
Anda dapat menggunakan cmake -G "MSYS Makefiles" .. Jika Anda ingin menggunakan make.
Pertama, Anda mungkin ingin mengubah nama proyek di CMakeLists.txt utama. Cukup buka folder dengan proyek dan buat direktori baru dan buat file proyek dengan ini:
mkdir buildmsvc
cd buildmsvc
cmake -G "Visual Studio 14 2015" ..
Dan sekarang Anda dapat membuka file .sln dengan Visual Studio. Anda perlu mengklik kanan pada target yang dapat dieksekusi dan ditetapkan sebagai proyek startup . Untuk benar -benar melihat jendela konsol yang ingin Anda lakukan mulai tanpa debugging , karena ketika dijalankan dalam mode debug saja, janda konsol ditutup terlalu cepat.
Catatan: Ketersediaan beberapa target tergantung pada ketersediaan yang dapat dieksekusi tertentu (misalnya format dentang untuk target format )
build_dir/doc/doc/index.htmldoc/CMakeLists.txt-DCMAKE_INSTALL_PREFIX - Lokasi untuk instalasi-DVERSION_HOST - Bangun nama mesin, lihat versi.h.in-DCMAKE_BUILD_TYPE - untuk jenis build-DMEASURE_ALL=ON/OFF - Ukur waktu semua kompilasi, paling baik digunakan dengan bangunan berulir tunggal. Membutuhkan perintah time (unix).-DUSE_GOLD_LINKER=ON/OFF - apakah akan menautkan dengan linker emas.Hak Cipta (C) 2019 Kracejic
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
Pemberitahuan hak cipta di atas dan pemberitahuan izin ini harus dimasukkan dalam semua salinan atau bagian substansial dari perangkat lunak.
Perangkat lunak ini disediakan "sebagaimana adanya", tanpa jaminan apa pun, tersurat maupun tersirat, termasuk tetapi tidak terbatas pada jaminan dapat diperjualbelikan, kebugaran untuk tujuan tertentu dan nonpringement. Dalam hal apa pun penulis atau pemegang hak cipta tidak akan bertanggung jawab atas klaim, kerusakan atau tanggung jawab lainnya, baik dalam tindakan kontrak, gugatan atau sebaliknya, timbul dari, di luar atau sehubungan dengan perangkat lunak atau penggunaan atau transaksi lain dalam perangkat lunak.