Как подключить библиотеку в clion
Настройка библиотеки MPI в CLion
Привет «параллельным программистам», мы продолжаем настраивать библиотеку MPICH везде, где это возможно и сегодня на операционном столе замечательная IDE CLion от JetBrains. До этого я уже рассказывал о том, как установить библиотеку MPI в систему Linux, и затронул тему настройки MPI в Eclipse.
Необходимо сразу подчеркнуть, что сейчас будет сказка, настройка в CLion несравнимо проще, чем в Eclipse. CLion сам по себе на голову выше многих IDE, поэтому если вы можете себе его позволить, то незамедлительно позволяйте. Сам я бедный студент ЧелГУ и пользуюсь лицензией для студентов, которая будет действовать до тех пор, пока числюсь в списках университета. Спасибо JetBrains за такую возможность!
Подключить библиотеку MPI в CLion
Подключать библиотеку мы будем именно с помощью настроек CMake. Вот, как выглядит CMakeLists.txt вновь созданного проекта.
Готово, теперь CLion знает все функции MPI, но пока не умеет их собирать.
Настроить компилятор MPICC(MPIC++) в CLion
Важное замечание
Буквально только, после очередной переустановки системы, мной было замечено, что библиотека корректно подключилась только с настройкой
cmake_minimum_required(VERSION 3.6)
Заключение
Дело сделано, теперь можно писать программы на MPI в чудесной CLion. А вообще, CMake очень крутая функциональная штука, которую полезно знать. Возможно я посвящу ей отдельную запись со всеми подробностями. А на сегодня у меня все, спасибо за внимание!
Как включить внешнюю библиотеку (boost) в проект CLion C++ с CMake?
у меня есть следующая настройка для разработки C++:
мой CMakeLists.txt файл выглядит так:
когда я создаю проект, я получаю следующую ошибку:
/ Users/nburk/Documents/uni/master/master_thesis/MyProject / test.cpp: 2: 10: фатальная ошибка: файл «boost» не найден
make[3]: * * * [CMakeFiles/MyProject.реж/тест.СРР.o] Ошибка 1 make[2]: * * * [CMakeFiles/MyProject.dir/ all] Ошибка 2 make[1]: * * * [CMakeFiles/MyProject.dir/ rule] Ошибка 2 сделать: * * * [MyProject] Ошибка 2
может кто-то указать в правильном направлении, как убедиться, что я могу включить boost функциональность s в мой проект CLion c++?
обновление: Благодаря ответу @Waxo я использовал следующий код в моем CMakeLists.txt который:
я теперь прошел не нашел-ошибка, но вместо этого я получаю следующее:
ошибка CMake в / приложения / CLion ВП.app / содержание / bin / cmake / share / cmake-3.1 / модули / FindBoost.с CMake:685 (файл):
строки файла «/usr/местные/погреб/повышение/1.57.0/повышение/версия.ГЭС» не может быть прочитан.
стек вызовов (последнего): CMakeLists.txt: 11 (find_package)
есть идеи, что мне все еще не хватает? Указанная строка (685) в FindBoost.с CMake это: file(STRINGS «$
2 ответов
проведя весь день над этим вопросом, я решил его сам. Это была довольно глупая ошибка, и все намеки в ответе @Waxo были действительно полезны.
после короткой последовательности высказываний должно быть достаточно, чтобы успешно (и платформенно-независимо) включить boost на :
эти линии делают магию здесь. Для справки, вот полный CMakeLists.txt файл, который я использовал для отладки в отдельном проекте командной строки:
попробуйте использовать CMake find_package (Boost)
он работает лучше, и CMake сделан для перекрестной компиляции, и предоставление абсолютного пути не является хорошим в проекте CMake.
Edit:
потому что вы не связываете библиотеку boost с вашей выполнимый.
Clion и SFML
Вступление
Привет, это статья посвящена установке и подключение библиотеки SFML к среде разработки Clion в Linux Ubuntu. Я не могу гарантировать что это способ заработает на других дистрибутивах linux, но то что это работает в Ubuntu гарантирую на 90 %.
Проблемы
Я заметил что у многих людей возникают трудности подключения sfml не только к Clion, но и к другим средам разработки отличных от Visual Studio. Это видно по количеству запросов на форуме и видеороликов на youtube. В частности это проблемы связанны с cmake.
Установка
Итак приступим. Для начала воспользуемся информацией с официального сайта sfml, по установке на Ubuntu.
Забыл упомянуть что способ который я описываю работает с sfml 2.5 и выше. Для начала открываем терминал и вставляем туда команду:
для установки sfml по стандартному пути.
Подключение
Открываем ваш clion и создаем новый c++ проект. После создание открываем файл — CmakeList.txt.
По умолчание ваш CmakeList.txt выглядит так.
Мы же изменим его вот так.
В строке find_package() мы находим sfml по стандартному пути. В строке target_link_libraries() мы подключаем библиотеки. Вы также можете подключить остальные библиотеки sfml, например: sfml-network.
Тогда это будет выглядеть так: target_link_libraries(ваш проект sfml-graphics sfml-audio sfml-network).
Запуск!
Все готов обновляем ваш CmakeList.txt. и можно запускать.
Вставляем в ваш файл с функцией main тестовый код с сайта sfml.
Заключение
И теперь вы можете работать с вашими sfml проектами в среде разработки clion.Или другой среды использующей build — систему cmake.
Для написание статья использовалась следующая информация: официальный сайт SFML.
Русские Блоги
Как использовать CMake для импорта сторонних библиотек в CLion
Как использовать CMake
Все операторы CMake записываются в файл с именем CMakeLists.txt. Когда файл CMakeLists.txt подтвержден, вы можете использовать команду ccmake для настройки соответствующих значений переменных. Эта команда должна указывать на каталог, в котором находится CMakeLists.txt. После завершения настройки используйте команду cmake для создания соответствующего make-файла (в Unix-подобной системе) или файла проекта (при компиляции с помощью соответствующего инструмента программирования под окном).
Базовый рабочий процесс:
Выполнение CMake очень простое. Сложность заключается в том, как написать файл CMakeLists.txt. Ниже приводится краткое введение в подготовку файла CMakeLists.txt с примером. Посмотрите на следующий файл CMakeLists.txt.
Или используйте следующий CMakeLists.txt
Вторая строка указывает, что сгенерированный проект называется test_math.
Строка 4 определяет каталог файла заголовка как включаемый
Строка 8 указывает каталог исходного файла как src и назначает его переменной окружения DIR_SRCS.
Строка 10 устанавливает значение переменной среды TEST_MATH равным значению переменной среды DIR_SRCS, здесь используется, чтобы показать, как использовать переменные среды для присвоения значений переменным среды.
Строка 14 назначает библиотеку математических функций переменной среды LIBRARIES. Конечно, эту переменную среды можно не указывать, а имя библиотеки можно использовать непосредственно позже.
Поместите CMakeLists.txt в текущий каталог и выполните CMakeLists.txt
Вы можете сгенерировать исполняемый файл, файл bin в каталоге / bin, и запустить его, чтобы увидеть, соответствует ли результат ожидаемому.
1. Основное использование
Установка: После загрузки бинарного пакета его можно сразу распаковать и использовать.
Используйте: cmake dir_path, сгенерируйте файлы проекта или файлы makefile
Во-вторых, концепция
out-of-sourceСборка, в отличие от сборки из исходного кода, то есть размещение скомпилированных выходных файлов и исходных файлов в разных каталогах;
В-третьих, основная структура
1. Положитесь на файл CMakeLists.txt, можно указать одну главную цель проекта и подкаталоги, включенные в основной каталог;
2. Используйте проект, чтобы указать имя проекта в CMakeLists.txt проекта, add_subdirectory, чтобы добавить подкаталоги
3. Подкаталог CMakeLists.txt унаследует настройки родительского каталога CMakeLists.txt (подлежит проверке).
4. Грамматика
4. set (var a; b; c) set (var a b c) #define variable var и присвоить ей a; b; c такой список строк
6. Условное заявление:
8. Заявление о петле
V. Внутренние переменные
CMAKE_C_COMPILER: Укажите компилятор C
CMAKE_CXX_COMPILER:
EXECUTABLE_OUTPUT_PATH: Путь хранения исполняемого файла
LIBRARY_OUTPUT_PATH: Путь к файлу библиотеки
BUILD_SHARED_LIBS:Switch between shared and static libraries
Использование встроенных переменных:
>> Укажите в CMakeLists.txt, используйте set
В-шестых, порядок
project(ПРИВЕТ) # Указываем название проекта, название сгенерированного проекта ВК;
>> include_directories ($
>> link_directories ($
add_subdirectory: Содержит подкаталоги
>> add_executable (helloDemo demo.cxx demo_b.cxx) # Скомпилировать cxx в исполняемый файл——
add_definitions: Добавить параметры компиляции
>> add_definitions (-DDEBUG) добавит определение макроса DEBUG в командную строку gcc;
>> target_link_libraries (demo Hello) # Подключить исполняемый файл и Hello к финальному файлу demo
add_library:
>> add_library (Hello hello.cxx) # Скомпилируйте hello.cxx в статическую библиотеку, такую как libHello.a
add_custom_target:
message( status|fatal_error, “message”):
Семь, описание
8. FAQ
1) Как получить все исходные файлы в каталоге
2) Как указать цель компиляции проекта
>> Обозначение команды проекта
3) Как добавить динамические и статические библиотеки
>> Добавьте команду target_link_libraries
4) Как распечатать сообщения при выполнении CMAKE
>> Обратите внимание на корпус
5) Как указать заголовочный файл и путь к файлу библиотеки
>> include_directories и link_directories
>> Может вызываться несколько раз для установки нескольких путей
>> link_directories влияет только на цели, стоящие за ним
6) Как отличить отладочную версию от релизной
7) Как установить условную компиляцию
НапримерВ отладочной версии устанавливается параметр компилятора DEBUGИ изменения не должны менять CMakelist.txt
>> Используйте команду option, например:
option(DEBUG_mode «ON for debug or OFF for release» ON)
>> Ограничения: этот метод не может напрямую установить сгенерированный make-файл, но должен использовать команды для установки параметров перед make; для отладочной и выпускной версий это эквивалентно двум каталогам: cmake и make edit_cache соответственно;
8) Как добавить определение макроса компиляции
>> Используйте команду add_definitions, см. Описание раздела команд
9) Как добавить зависимости компиляции
Используется, чтобы гарантировать, что зависимости должны быть построены перед компиляцией целевого проекта
10) Как указать целевой каталог документов
>> Создайте новый каталог, выполните cmake в каталоге для создания файла Makefile, чтобы результат компиляции был сохранен в этом каталоге, аналогичном
11) Папок много, нужно ли каждую папку собирать в файл библиотеки?
>> Вы не можете использовать CMakeList.txt в подкаталоге, а напрямую указывать подкаталог в верхнем каталоге
12) Как установить зависимую версию cmake
13) Как указать относительный путь
14) Как настроить каталог для компиляции промежуточных файлов
15) Как использовать сравнение строк или чисел в предложениях IF
>> Сравнение чисел LESS, GREATER, EQUAL, сравнение строк STRLESS, STRGREATER, STREQUAL,
IF(AAA STREQUAL abc)
Сообщение (СТАТУС «истина») # должен выводить истину
16) Компилировать ли только необходимые файлы cpp при изменении файла h
17) На машине установлены VC7 и VC8, CMAKE автоматически выполнит поиск компилятора, но как указать определенную версию?
18) Как указать параметры компиляции в зависимости от ОС
>> IF( APPLE ); IF( UNIX ); IF( WIN32 )
19) Могут ли некоторые команды до и после компиляции выполняться автоматически?
>> Да, подлежит уточнению
20) Как распечатать вывод make
Интеллектуальная рекомендация
Базовая часть heapsort
поддерживать скопился Прикрепите метод найти слева и справа Вы также можете использовать следующее для достижения обратного порядка Каждый раз после положительной последовательности перемещайте максим.
[Интерпретатор] Создание простого интерпретатора (реализация на языке Go, часть 1)
Каталог статей [Интерпретатор] Создание простого интерпретатора (реализация на языке Go, часть 1) 1. Описание Два, код Три, результаты бега [Интерпретатор] Создание простого интерпретатора (реализация.
Экспорт данных из командной строки MongoDB в формат json / csv
Концептуальные проблемы в гибернации
оглавление Бизнес Что такое транзакция? Зачем использовать транзакцию? Характеристики транзакции (кислота) Одновременные проблемы транзакции Используйте ThreadLocal Management Conference (GetCurrentsi.
Получите подробную интерпретацию распределенной файловой системы HDFS
В результате получим следующее приложение:
Настройка IDE CLion
После того, как Вы создатите проект, необходимо его настроить для работы с библиотекой Qt необходимо настроить путь к этой библиотеке через аргумент CMAKE_PREFIX_PATH.
Далее в CMake Options через CMAKE_PREFIX_PATH указываем путь к библиотекам Qt для CMAKE. Полный путь к библиотекам может быть следующим:
Вся запись префикса будет следующей:
В настройках же это окно будет выглядеть следующим образом.
CMakeLists.txt
В CMakeLists.txt кроме информации добавленной по умолчанию необходимо будет добавить поиск и подключение библиотек Qt через использование функций find_package и target_link_libraries.
main.cpp
В остальном же написание первого HelloWorld будет сходным разработкой под Qt Creator.
При разработке под Qt Creator с использованием системы сборки CMake не понравилось то, что при добавлении файлов в проект Qt Creator не прописывает их в CMakeLists.txt, то есть файлы создаются, но не включаются в проект. Также имеет ещё ряд небольших неудобств, хотя IDE CLion ещё далеко по удобству в работе с очень специфическим функционалом Qt, хотя бы взять автодополнение макросов Qt, автоматическое создание недостающих участников класса (переменные и методы) по этим макросам, работу с дизайнером и т.д.
Рекомендуем хостинг TIMEWEB
Рекомендуемые статьи по этой тематике