@iliyapisany

Как работать с иде для билда всех исходников одной командой?

Здравствуйте.
Вопрос состоит в том, как настроить иде (в частности clion) для компиляции программ так, что бы итоговые файлы оказывались в одной директории.

Так, у меня есть программа, которая взаимодействует с watchdog.
Эта программа ищет исполняемый файл watchdog в той же директории, где и лежит сама.
Так же есть несколько dll, которые лежат в другой директории, которая, в свою очередь, находится там же где и исполняемые файлы.

Хочется создавать всю эту структуру используя одно нажатие на билд, а не копировать множество файлов ручками.
  • Вопрос задан
  • 57 просмотров
Решения вопроса 1
@iliyapisany Автор вопроса
Решение вопроса оказалось в переменных cmake:
CMAKE_RUNTIME_OUTPUT_DIRECTORY, отвечающий за директорию, куда будет помещен результат add_executable конкретно ДАННОГО проекта, в котором и была описана эта переменная
CMAKE_LIBRARY_OUTPUT_DIRECTORY, отвечающий за директорию библиотек
CMAKE_ARCHIVE_OUTPUT_DERICTORY, отвечающий за файлы экспорта библиотек
Для каждого CMakiLists.txt переменные свои!
https://cmake.org/cmake/help/v3.0/prop_tgt/LIBRARY...
https://cmake.org/cmake/help/v3.0/prop_tgt/ARCHIVE...
https://cmake.org/cmake/help/v3.0/prop_tgt/RUNTIME...
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@Alexander1705
install

UPD.

Эта программа ищет исполняемый файл watchdog в той же директории, где и лежит сама.
Так же есть несколько dll, которые лежат в другой директории, которая, в свою очередь, находится там же где и исполняемые файлы.


Програма понятия не имеет где она "лежит" (разве что есть какой-либо платформозависимый инструменарий). Есть такое понятие, как working directory, но она не обязана совпадать с расположением программы. В Clion можно легко поменять эту директорию (edit configurations).
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы