Перейти к содержанию
    

Как задать относительный путь в в Keil MDK-ARM uVision

Товарищи,

Есть 2 проекта в соседних папках, расположенных тут "C:\ОБЩИЙ_ПУТЬ_ВСЕХ_ПРОЕКТОВ".

"БУТЛОАДЕР_01"

"ОСНОВНОЕ_ПРИЛОЖЕНИЕ"

В настройках "ОСНОВНОГО ПРИЛОЖЕНИЯ" во вкладке Utilities я использую Init файл. Там командой "LOAD" прошивается hex-файл бутлоадера:

LOAD C:\ОБЩИЙ_ПУТЬ_ВСЕХ_ПРОЕКТОВ\БУТЛОАДЕР_01\MDK-ARM\БУТЛОАДЕР_01\БУТЛОАДЕР_v01.hex

Нужно как-то заменить этот абсолютный путь до "БУТЛОАДЕР_01" на относительный используя например "Key sequence" или как-то по другому.

Чтобы при копировании этих проектов на другой комп не нужно было править этот абсолютный путь "C:\ОБЩИЙ_ПУТЬ_ВСЕХ_ПРОЕКТОВ".

Что посоветуете ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 hours ago, TOG said:

Что посоветуете ?

У меня была аналогичная проблема (только без русских букв в пути)

использую относительный путь в папках через известную схему "две точки" - возврат в предыдущий каталог:  "..\"

вот картинка для пояснения:

2.thumb.jpg.9ea8c715a51db69893d3c77a3c18addf.jpg

 

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

это чтобы не лазить по коду и править пути, если файл копируется для работы в другой проект, да и нагляднее по коду, а

а все настройки путей соотв. в свойствах конкретного проекта (кстати, чтобы заново не набивать , строку путей можно целиком копировать всю )

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

10 minutes ago, Forger said:

использую относительный путь в папках через, например, чтобы вернуться на верхний каталог из текущего: "..\"

Точно. Получилось !

LOAD ..\..\БУТЛОАДЕР_01\MDK-ARM\БУТЛОАДЕР_01\БУТЛОАДЕР_v01.hex

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

10 часов назад, TOG сказал:

Чтобы при копировании этих проектов на другой комп не нужно было править этот абсолютный путь "C:\ОБЩИЙ_ПУТЬ_ВСЕХ_ПРОЕКТОВ".

Что посоветуете ?

Такое делается во всех нормальных компиляторах через встроенные макросы. Кейл не пользую, но и в IAR и в VisualStudio это есть. Наверняка в Кейл тоже должно быть.

В IAR например такой макрос: $PROJ_DIR$ - указывает на папку текущего проекта. И можно хоть на одном компе в разных местах открывать несколько копий одного - мешать друг другу не будут.

В VS аналогичное выглядит как: $(IntDir), $(OutDir), etc.

Указывать абсолютный путь конечно - глупость.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

36 minutes ago, jcxz said:

$PROJ_DIR$

Если нужно добраться до другого проекта (например, некий common каталог с общими исходниками и библиотеками), то это увы уже не поможет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 hours ago, x893 said:

$PROJ_DIR$/../../common

ну и зачем вообще тогда добавлять $PROJ_DIR$, если и без него работает точно также, поскольку текущий путь уже ведет в корень проекта?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

5 minutes ago, Forger said:

ну и зачем вообще тогда добавлять $PROJ_DIR$, если и без него работает точно также, поскольку текущий путь уже ведет в корень проекта?

Мне не нужно. Но если надо узнать какой диск, то нужно. Или абсолютный путь. Да мало ли для чего.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...