У меня есть проект со следующей структурой дерева реж:Cmake и ресурсы путь
CMakeLists.txt
\src
test.cpp
\include
test.h
\resources
various resource files
test.cpp содержит правильный путь (по отношению к корню) для того, чтобы указать на ресурсы в директории ресурсов. При запуске CMake с исходным зданием в каталоге сборки каталог \ build создается как поддиректор корня, но теперь ресурсы, на которые ссылаются ранее правильные пути, жестко закодированные в test.cpp, больше не доступны, потому что рабочий каталог не является корнем.
Как я могу управлять ресурсами с использованием CMake и из-источника?
Спасибо, но первое предложение кажется мне действительно очевидным !!! : D Так что это не добавило значения вашему ответу ... То, что я имел в виду в своем посте (хотя было ясно), состоит в том, что проблема связана с построением вне источника (эта модальность кажется единственной полезно для четкого разделения источников и исполняемых файлов с помощью CMake!), что приводит к тому, что работающий динамик отличается и, по крайней мере, ниже уровня ниже корень. Так что это особенность CMake ... Я не встречал такой проблемы с муравьями или другими инструментами. Во всяком случае, я попытаюсь понять, как использовать команды, которые вы предложили. Tnx много! – davide
@davide Я не думаю, что здесь есть что-то специфичное для CMake. Все программы обычно запускаются вне источника просто потому, что именно так развертываются программы. Даже с программами с открытым исходным кодом вы отправляете источники, чтобы программа могла быть изменена, а не так, чтобы она могла работать. – Angew