«cmake» etiketlenmiş sorular

CMake, çapraz platformlu, açık kaynaklı bir derleme sistem üreticisidir. Çeşitli entegre geliştirme ortamları için yerel makefiles, ninja-build ve proje dosyaları gibi derleme sistemleri için dosyalar oluşturur.

4
Yine de CMAKE_MODULE_PATH belirtmeniz gerekiyorsa find_package () ne işe yarar?
CMake kullanarak çalışan bir çapraz platform oluşturma sistemi elde etmeye çalışıyorum. Şimdi yazılımın birkaç bağımlılığı var. Onları kendim derledim ve sistemime kurdum. Yüklü bazı örnek dosyalar: -- Installing: /usr/local/share/SomeLib/SomeDir/somefile -- Installing: /usr/local/share/SomeLib/SomeDir/someotherfile -- Installing: /usr/local/lib/SomeLib/somesharedlibrary -- Installing: /usr/local/lib/SomeLib/cmake/FindSomeLib.cmake -- Installing: /usr/local/lib/SomeLib/cmake/HelperFile.cmake Şimdi CMake, bir dosyayı find_package()açan Find*.cmakeve sistemdeki kütüphaneyi arayan …
167 cmake 


3
CMake tam olarak nasıl çalışır?
Bunu sadece kendim için sormuyorum. Umarım bu soru benim gibi birçok yeni başlayan için bir referans olacaktır, bu kadar küçük bir CMakeLists.txtdosya için sahnelerin arkasında neler olup bittiğini tamamen şaşırttı. cmake_minimum_required (VERSION 2.6) project(Tutorial) add_executable(Tutorial tutorial.cpp) ve çok küçük tutorial.cpp int main() { return 0; } oluşturulan çok fazla dosya …
158 cmake 

5
CMake'de GLOB veya her bir dosyayı ayrı ayrı belirtmek daha mı iyidir?
CMake, bir hedefin kaynak dosyalarını belirtmek için çeşitli yollar sunar. Bunlardan biri globbing ( dokümantasyon ) kullanmaktır , örneğin: FILE(GLOB MY_SRCS dir/*) Başka bir yöntem, her dosyayı ayrı ayrı belirtmektir. Hangi yol tercih edilir? Globbing kolay görünüyor, ama bunun bazı dezavantajları olduğunu duydum.
157 cmake 

4
CMake'te, derleyicinin Clang olup olmadığını nasıl test edebilirim?
Bir dizi çapraz platform CMake derleme betiğimiz var ve Visual C ++ ve GCC ile oluşturmayı destekliyoruz . Clang'ı deniyoruz , ancak CMake betiğimizle derleyicinin Clang olup olmadığını nasıl test edeceğimizi anlayamıyorum. Derleyicinin Clang olup olmadığını görmek için ne test etmeliyim? Şu anda sırasıyla Visual C ++ ve GCC'yi test …
151 c++  c  cmake  clang 


4
Cmake ile paylaşılan bir kütüphane nasıl oluşturulur?
Kendi yazdığım bir Makefile kullanarak derlediğim bir kütüphane yazdım, ama şimdi cmake'ye geçmek istiyorum. Ağaç şöyle görünüyor (Alakasız tüm dosyaları kaldırdım): . ├── include │ ├── animation.h │ ├── buffers.h │ ├── ... │ ├── vertex.h │ └── world.h └── src ├── animation.cpp ├── buffers.cpp ├── ... ├── vertex.cpp └── …


2
CMake: Birim testleri ile proje yapısı
Projemi, üretim kaynaklarını ( srcalt klasörde) ve testleri (alt klasörde) içerecek şekilde yapılandırmaya çalışıyorum test. Bunu oluşturmak için CMake kullanıyorum. Minimal bir örnek olarak aşağıdaki dosyaları var: CMakeLists.txt: cmake_minimum_required (VERSION 2.8) project (TEST) add_subdirectory (src) add_subdirectory (test) src / CMakeLists.txt: add_executable (demo main.cpp sqr.cpp) src / sqr.h #ifndef SQR_H #define …



6
Gcc / cmake ile 64-bit linux makinesinde 32-bit ikili nasıl derlenir
O bir projeyi derlemek mümkün mü 32-bit ile cmakeve gccbir üzerinde 64 bit sistemde? Muhtemelen öyledir ama bunu nasıl yapacağım? Bunu "cahil" bir şekilde denediğimde, herhangi bir parametre / bayrak / vb. Ayarlamadan, sadece LD_LIBRARY_PATHbağlantılı kütüphaneleri bulmayı ayarlamak ~/tools/libonu yok sayıyor ve sadece lib64 adlı alt dizinlere bakıyor gibi görünüyor …
129 linux  gcc  64-bit  cmake  32-bit 

4
Harici kitaplığa bağlantı oluşturun
CMake'nin bir yürütülebilir dosyayı aynı CMake projesi içinde oluşturulmayan harici bir paylaşılan kitaplığa bağlamasını nasıl sağlayabilirim? Sadece yapmak target_link_libraries(GLBall ${CMAKE_BINARY_DIR}/res/mylib.so)hata veriyor make[2]: *** No rule to make target `res/mylib.so', needed by `GLBall'. Stop. make[1]: *** [CMakeFiles/GLBall.dir/all] Error 2 make: *** [all] Error 2 (GLBall is the executable) kütüphaneyi ikili dizine …
126 cmake 

10
GTest ve CMake ile çalışmaya nasıl başlanır
Son zamanlarda C ++ projelerimi derlemek için CMake kullanmaya başladım ve şimdi kodum için bazı birim testleri yazmaya başlamak istiyorum. Bu konuda yardımcı olması için Google Test yardımcı programını kullanmaya karar verdim, ancak başlamak için biraz yardıma ihtiyacım var. Tüm gün boyunca çeşitli kılavuzları ve örnekleri okudum Primer , IBM'de …


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.