0

Я строию кросс-платформенный проект. Он был запущен в среде Linux и построен с использованием cmake. Также есть способ использовать cmake на окнах, но я думаю, что Visual Studio справится с этим проще.Константы решения Visual Studio

Итак, теперь я создал пустое решение в отдельной папке (чтобы не смешивать исходные файлы с VS). Но проблема в том, что мне нужно добавить каждую папку в визуальную студию, используя абсолютный путь. Что плохо, когда это решение будет использоваться с другого компьютера Windows.

Главный вопрос: существует ли способ указать относительный путь для включения каталога? Что-то вроде $ (solution_source_folder) .. \ source \ some_component_folder Где solution_folder_path - путь, где решение действительно есть, и папка решения находится на том же уровне, что и исходная папка.

+0

@ Matthew'Cogwheel'Orlando: Исправлено. – legends2k

ответ

0

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

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

Также проекты включают пользовательский .props-файл из локальной учетной записи пользователя, вы можете определить свойства установки/машины, если макросы запаса недостаточно.

Посмотрите here и here для более подробной информации. Для вашего кода вопрос $ (SolutionPath) является префиксом.

+0

Что было бы постоянным для папки решений? – insanebits

2

Я не уверен, почему вы чувствуете необходимость оставить свое решение подальше от вашего кода. Они не будут мешать друг другу, и это упростит добавление файлов в ваши проекты VS.

На вопрос, вы можете использовать property sheets, чтобы указать включенные каталоги по проектам. Просто установите переменную, в которой находятся ваши заголовки, и добавьте ее в путь включения (в лист свойств). Затем добавьте эту страницу свойств в свой проект в визуальной студии.

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

+0

Спасибо, это то, что я искал. upvoted :) – insanebits

Смежные вопросы