Запитання з тегом «cmake»

CMake - це кросплатформенний генератор системи з відкритим кодом. Він генерує файли для таких систем побудови, як рідні файли, файли ніндзя та проекти для декількох інтегрованих середовищ розробки.

4
Яке використання find_package (), якщо вам все одно потрібно вказати CMAKE_MODULE_PATH?
Я намагаюся отримати систему зшивання платформ, яка працює за допомогою CMake. Тепер програмне забезпечення має кілька залежностей. Я склав їх сам і встановив у своїй системі. Деякі приклади встановлених файлів: -- 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 Тепер CMake має a, find_package()який …
167 cmake 

4
Автоматично додавати всі файли в папці до цілі за допомогою CMake?
Я розглядаю можливість переключення міжплатформенного проекту з окремих систем управління побудовою в Visual C ++, XCode та makefiles на CMake. Однією з важливих особливостей, які мені потрібні, є автоматичне додавання всіх файлів у каталозі до цільового. Хоча це зробити легко, але це не легко виконати з Visual C ++ та …

3
Як саме працює CMake?
Я не прошу цього лише для себе. Я сподіваюся, що це запитання стане посиланням для багатьох новачків, які подобаються мені, і виявило надзвичайно здивованим, що саме відбувається за кадром, коли для такого невеликого CMakeLists.txtфайлу cmake_minimum_required (VERSION 2.6) project(Tutorial) add_executable(Tutorial tutorial.cpp) і така маленька tutorial.cpp int main() { return 0; } …
158 cmake 

5
Чи краще вказати вихідні файли за допомогою GLOB або кожного файлу окремо в CMake?
CMake пропонує кілька способів вказати вихідні файли для цілі. Перший - використовувати глобулінг ( документацію ), наприклад: FILE(GLOB MY_SRCS dir/*) Ще один спосіб - вказати кожен файл окремо. Який спосіб є кращим? Глобінг здається легким, але я чув, що у нього є деякі недоліки.
157 cmake 

4
Як у CMake я можу перевірити, чи є компілятором Clang?
У нас є набір сценаріїв побудови міжплатформних CMake , і ми підтримуємо побудову за допомогою Visual C ++ та GCC . Ми пробуємо Clang , але я не можу зрозуміти, як перевірити, чи є компілятор Clang за допомогою нашого сценарію CMake. Що слід перевірити, чи є компілятор Clang чи ні? …
151 c++  c  cmake  clang 



4
Як створити спільну бібліотеку за допомогою cmake?
Я написав бібліотеку, яку я збирав за допомогою самостійно написаного Makefile, але тепер я хочу перейти на cmake. Дерево виглядає так (я видалив усі неактуальні файли): . ├── include │ ├── animation.h │ ├── buffers.h │ ├── ... │ ├── vertex.h │ └── world.h └── src ├── animation.cpp ├── buffers.cpp …

2
CMake: Структура проекту з одиничними тестами
Я намагаюся структурувати свій проект, щоб він включав джерела виробництва (у srcпідпапках) та тести (у testпідпапках). Я використовую CMake для створення цього. Як мінімальний приклад у мене є такі файли: 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 …


3
Яка різниця між include_directories та target_include_directories у CMake?
У мене є структура каталогу для мого коду C ++, який виглядає так: | |->include |->src Я пишу файл CMakeLists.txt для свого коду. Я хочу зрозуміти різницю між include_directoriesі target_include_directoriesв CMake. Яка різниця між їх використанням та тим, щоб додати шлях до файлу включення, який я повинен використовувати?
134 c++  cmake 

6
Як скласти 32-розрядний двійковий файл на 64-бітній машині Linux з gcc / cmake
Чи можна скомпілювати проект в 32-бітному з cmakeі gccна 64-бітної системі? Мабуть, так і є, але як це зробити? Коли я спробував це "невідомим" способом, не встановлюючи жодних параметрів / прапорів / тощо, просто налаштувавши LD_LIBRARY_PATHпошук пов'язаних бібліотек, ~/tools/libвін, здається, ігнорує його і загляне лише у підкаталоги з іменем lib64 …
129 linux  gcc  64-bit  cmake  32-bit 

4
Посилання CMake на зовнішню бібліотеку
Як змусити CMake зв’язати виконуваний файл із зовнішньою спільною бібліотекою, яка не побудована в рамках одного проекту CMake? Просто дію target_link_libraries(GLBall ${CMAKE_BINARY_DIR}/res/mylib.so)дає помилку 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) після …
126 cmake 

10
Як почати працювати з GTest та CMake
Нещодавно мене продали на використанні CMake для складання моїх проектів на C ++, і зараз я хотів би почати писати деякі тести для свого коду. Я вирішив скористатись утилітою Google Test, щоб допомогти у цьому, але потребую деякої допомоги в роботі. Цілий день я читав різні посібники та приклади, зокрема …


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.