Вопросы с тегом «cmake»

146
CMake: структура проекта с модульными тестами

Я пытаюсь структурировать свой проект, чтобы включить производственные источники (во srcвложенной папке) и тесты (во testвложенной папке). Я использую CMake для создания этого. В качестве минимального примера у меня есть следующие файлы: CMakeLists.txt: cmake_minimum_required (VERSION 2.8) project...

142
Как создать общую библиотеку с помощью cmake?

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

134
В чем разница между include_directories и target_include_directories в CMake?

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

129
Как скомпилировать 32-битный двоичный файл на 64-битной машине Linux с помощью gcc / cmake

Можно ли скомпилировать проект в 32-битном с cmakeи gccна 64-битной системе? Вероятно, да, но как мне это сделать? Когда я попробовал это «невежественным» способом, без установки каких-либо параметров / флагов / и т.д., просто настройка LD_LIBRARY_PATHпоиска связанных библиотек в ~/tools/libнем,...

127
Ссылка 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]:...

125
Как начать работать с GTest и CMake

Недавно мне предложили использовать CMake для компиляции моих проектов на C ++, и теперь я хотел бы начать писать несколько модульных тестов для своего кода. Я решил использовать утилиту Google Test, чтобы помочь с этим, но мне нужна помощь для начала работы. Весь день я читал различные руководства...

123
Организация проекта C ++ (с gtest, cmake и doxygen)

Я новичок в программировании в целом, поэтому решил, что начну с создания простого векторного класса на C ++. Однако я бы хотел с самого начала выработать хорошие привычки, а не пытаться изменить свой рабочий процесс позже. У меня сейчас только два файла vector3.hppи vector3.cpp. Этот проект будет...

122
Как указать новый путь GCC для CMake

Моя ОС - это centos, у которой по умолчанию указан путь к gcc /usr/bin/gcc. Но он старый, мне нужна новая версия gcc. Поэтому я устанавливаю новую версию по новому пути /usr/local/bin/gcc. Но когда я запускаю cmake, он по-прежнему использует старую версию gcc path ( /usr/bin/gcc). Как я могу...

121
CMake не может найти библиотеку OpenSSL

Я пытаюсь установить программное обеспечение, которое использует cmake для установки себя, когда я даю в commandlin cmake .. это дает мне следующую ошибку в этом файле: CMakeLists.txt -------- строка ---> find_package ( ТРЕБУЕТСЯ OpenSSL): - cmake .. -- Could NOT find Git (missing:...

120
Каким идиоматическим способом в CMAKE добавить параметр компилятора -fPIC?

Я нашел как минимум 3 способа сделать это, и мне интересно, какой из них идиоматический. Это необходимо сделать почти повсеместно для любой статической библиотеки. Я удивлен, что генератор Makefile в CMake не добавляет это автоматически в статические библиотеки. (если я чего-то не упускаю?)...

120
Cmake vs make образцы кодов?

Мне было интересно, есть ли какой-нибудь пример кода для Makefiles ( make) и CMakeLists.txt( cmake), которые оба делают одно и то же (единственная разница в том, что один написан, makeа другой - cmake). Я попытался найти cmake vs make, но так и не нашел сравнения кода. Было бы действительно полезно...

118
CMake не находит компилятор Visual C ++

После установки Visual Studio 2015 и запуска CMake в предыдущем проекте CMake выдает ошибку о том, что не может найти компилятор C. The C compiler identification is unknown The CXX compiler identification is unknown CMake Error at CMakeLists.txt:4 (PROJECT): No CMAKE_C_COMPILER could be found....

117
Самый простой, но полный пример CMake

Почему-то меня совершенно сбивает с толку принцип работы CMake. Каждый раз, когда мне кажется, что я все ближе понимаю, как должен быть написан CMake, он исчезает в следующем примере, который я читал. Все, что я хочу знать, это то, как мне структурировать свой проект, чтобы мой CMake требовал...

116
Каталог вывода / сборки CMake

Я новичок в CMake, прочитал несколько руководств о том, как его использовать, и написал несколько сложных 50 строк сценария CMake, чтобы создать программу для трех разных компиляторов. На этом, наверное, заканчиваются все мои познания в CMake. Теперь моя проблема в том, что у меня есть исходный...

114
CMake: Как создавать внешние проекты и включать их цели

У меня есть проект A, который экспортирует статическую библиотеку в качестве цели: install(TARGETS alib DESTINATION lib EXPORT project_a-targets) install(EXPORT project_a-targets DESTINATION lib/alib) Теперь я хочу использовать Project A как внешний проект из Project B и включить его встроенные...