CLion и CMake: только сборка библиотеки без исполняемого файла?

Как создать статическую библиотеку только с clion без исполняемого файла? Как выглядит CMakeLists.txt? (без add_executable)

Обновление: если я не добавлю исполняемый файл в Clion, у меня будет ошибка, что исполняемый файл требуется.

Вот мой CMakeLists.txt.


person ilw    schedule 30.03.2015    source источник
comment
Ваша проблема не связана с CLion, это всего лишь вопрос CMake.   -  person usr1234567    schedule 31.03.2015
comment
Хорошо, тогда ваша проблема совершенно не связана с CMake. Вы настраиваете запуск исполняемого файла, и у вас нет исполняемого файла, только библиотека. CLion не может выполнить библиотеку, поэтому возникает ошибка.   -  person usr1234567    schedule 31.03.2015
comment
Я неправильно понял ваш вопрос. Это помогает? stackoverflow.com/questions/27869503/clion-build-depend-targets< /а>   -  person usr1234567    schedule 31.03.2015


Ответы (2)


Это старый вопрос. Но я добавлю ответ на ваш вопрос в помощь другим людям. Вам нужно заменить add_executable на add_library

add_library(target_name source_files)
person Praminda    schedule 27.05.2015
comment
И если вы хотите создать динамическую библиотеку, вы можете использовать add_library(target_name SHARED source_files). - person shawkinaw; 13.10.2016

Краткий ответ: скомпилируйте целевую библиотеку и запустите любую пользовательскую команду в качестве заполнителя, чтобы избежать предупреждения.

Длинный ответ:

CLion позволяет либо собрать весь проект, либо запустить исполняемые файлы/конфигурации.

При запуске исполняемых файлов вы можете выбрать цель для компиляции и исполняемый файл для запуска после компиляции цели. Для исполняемых целей это обычно одно и то же. Вы компилируете исполняемую цель, а затем запускаете ее.

Похоже, это не совсем предназначено для библиотек, но есть обходной путь. Обычно целью является библиотека, а исполняемым файлом — любой исполняемый файл, зависящий от этой библиотеки. Однако обычно это не очень полезно, потому что, если вы хотите запустить этот исполняемый файл, вы можете просто установить этот исполняемый файл в качестве цели, и библиотека все равно будет собрана.

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

У вас нет ничего полезного, что вам нужно запустить после сборки библиотеки, просто выберите любую дешевую команду в качестве заполнителя. Что-то вроде pwd или ls.

Настройка конфигурации

person user2983585    schedule 21.12.2020
comment
как создать исполняемый файл pwd? - person staad; 11.01.2021
comment
Вы можете просто ввести pwd или что-нибудь в этом поле. - person user2983585; 11.02.2021