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

CMake - это кроссплатформенный генератор системы сборки с открытым исходным кодом. Он генерирует файлы для систем сборки, такие как собственные файлы сборки, файлы сборки ninja и файлы проектов для нескольких интегрированных сред разработки.

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

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

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

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

1
Каким идиоматическим способом в CMAKE добавить параметр компилятора -fPIC?
Я нашел как минимум 3 способа сделать это, и мне интересно, какой из них идиоматический. Это необходимо сделать почти повсеместно для любой статической библиотеки. Я удивлен, что генератор Makefile в CMake не добавляет это автоматически в статические библиотеки. (если я чего-то не упускаю?) target_compile_options(myLib PRIVATE -fPIC) add_compile_options(-fPIC) set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fpic") …
120 c++  c  cmake 

27
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. CMake Error at CMakeLists.txt:4 (PROJECT): No …

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

6
Как установить уровень предупреждений в CMake?
Как установить уровень предупреждения для проекта (а не всего решения) с помощью CMake ? Должен работать в Visual Studio и GCC . Я нашел различные варианты, но большинство из них либо не работают, либо не соответствуют документации.

5
Каталог вывода / сборки CMake
Я новичок в CMake, прочитал несколько руководств о том, как его использовать, и написал несколько сложных 50 строк сценария CMake, чтобы создать программу для трех разных компиляторов. На этом, наверное, заканчиваются все мои познания в CMake. Теперь моя проблема в том, что у меня есть исходный код, папку с которым …
116 c++  build  makefile  cmake  output 

5
CMake: Как создавать внешние проекты и включать их цели
У меня есть проект A, который экспортирует статическую библиотеку в качестве цели: install(TARGETS alib DESTINATION lib EXPORT project_a-targets) install(EXPORT project_a-targets DESTINATION lib/alib) Теперь я хочу использовать Project A как внешний проект из Project B и включить его встроенные цели: ExternalProject_Add(project_a URL ...project_a.tar.gz PREFIX ${CMAKE_CURRENT_BINARY_DIR}/project_a CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR> ) include(${CMAKE_CURRENT_BINARY_DIR}/lib/project_a/project_a-targets.cmake) Проблема в …

2
Добавление параметров командной строки в CMake
Я создаю большую библиотеку с помощью CMake, и мне хотелось бы, чтобы пользователи могли выборочно включать / отключать определенные части моего процесса сборки. Как я могу добавить параметры командной строки в мою сборку CMake, например, чтобы пользователи могли вводить что-то вроде cmake --build-partone --nobuild-parttwo --dothis=true --dothat=false ..? Очевидно, ключевое слово …

3
Отменить флаги компиляции для отдельных файлов
Я хотел бы использовать глобальный набор флагов для компиляции проекта, что означает, что в моем файле CMakeLists.txt верхнего уровня я указал: ADD_DEFINITIONS ( -Wall -Weffc++ -pedantic -std=c++0x ) Однако для конкретного файла (скажем, «foo.cpp») в подкаталоге я хочу отключить флаги компиляции, чтобы не применять -Weffc ++ (включенная коммерческая библиотека, которую …

8
Инструкции для ОС в CMAKE: Как это сделать?
Я новичок в CMAKE. Ниже приведен простой файл cmake, который хорошо работает в окнах среды mingw. Проблема явно target_link_libraries()связана с функцией CMAKE, где я связываю libwsock32.a. В Windows это работает, и я получаю результаты. Однако, как и ожидалось, в Linux /usr/bin/ldбудет искать то, -lwsock32чего НЕТ в ОС Linux. Моя проблема: …
110 c++  linux  cmake  mingw  portability 

6
Как связать программу C ++ с Boost с помощью CMake
Как должен выглядеть мой файл CMake для связывания моей программы с библиотекой Boost в Ubuntu? Ошибки, отображаемые во время работы make: main.cpp:(.text+0x3b): undefined reference to `boost::program_options::options_description::m_default_line_length' Главный файл действительно прост: #include <boost/program_options/options_description.hpp> #include <boost/program_options/option.hpp> using namespace std; #include <iostream> namespace po = boost::program_options; int main(int argc, char** argv) { po::options_description …
109 c++  boost  cmake 

11
Как получить подробный вывод от CTest с помощью CMake?
Я использую CMake для создания своего проекта. Я добавил двоичный файл модульного теста, который использует платформу модульного тестирования Boost. Этот двоичный файл содержит все модульные тесты. Я добавил этот двоичный файл для запуска CTest: ADD_EXECUTABLE( tftest test-main.cpp ) ENABLE_TESTING() ADD_TEST( UnitTests tftest) Но вывод сборки в Visual Studio показывает только …
109 cmake  ctest 

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.