|
(Make | Rebuild ) && conditional_compiling |
|
|
|
 |
Ответов
|
Nov 16 2007, 11:55
|
Гуру
     
Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823

|
Цитата(dxp @ Nov 16 2007, 13:33)  Вам решение в рамках оболочки IAR EW надо или вообще? Работаю в оболочке. Любое не требующее особых усилий решение, и сообщения достаточно. Давным давно, еще работая на Паскале, после определенного этапа переходил на запуск bat-файла, в котором и перекомпилировалось все, и прошивки готовились, чтобы гарантированно избежать неучтенных изменений установок среды. В принципе, самому нужно быть собраннее, но перерывы отрицательно влияют. Наверно, можно поиграться с определениями, чтобы линкер выдавал ошибку, если файлы компилировались для разных условий.
--------------------
Уходя, оставьте свет...
|
|
|
|
|
Nov 16 2007, 14:10
|

Adept
     
Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343

|
Цитата(Dog Pawlowa @ Nov 16 2007, 17:55)  Работаю в оболочке. Любое не требующее особых усилий решение, и сообщения достаточно. Давным давно, еще работая на Паскале, после определенного этапа переходил на запуск bat-файла, в котором и перекомпилировалось все, и прошивки готовились, чтобы гарантированно избежать неучтенных изменений установок среды. В принципе, самому нужно быть собраннее, но перерывы отрицательно влияют.
Наверно, можно поиграться с определениями, чтобы линкер выдавал ошибку, если файлы компилировались для разных условий. Что-то не улавливаю всю глубину проблемы - если любой из исходников изменен, либо измены опции проекта, то оболочка должна сама пересобирать все, что надо - если изменен исходник, то будет перекомпилирован этот исходник с последующей сборкой (линковкой), если опции проекта - то весь проект целиком. Вы имеете в виду, что она (оболочка) этого не делает? Если так, то это баг. Или в чем проблема? Сам в оболочке не собираю проекты, использую ее только в качестве отладчика.
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
|
Nov 16 2007, 14:48
|
Гуру
     
Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823

|
Цитата(dxp @ Nov 16 2007, 18:10)  Что-то не улавливаю всю глубину проблемы - если любой из исходников изменен, либо измены опции проекта, то оболочка должна сама пересобирать все, что надо - если изменен исходник, то будет перекомпилирован этот исходник с последующей сборкой (линковкой), если опции проекта - то весь проект целиком. Вы имеете в виду, что она (оболочка) этого не делает? Если так, то это баг. Или в чем проблема?
Сам в оболочке не собираю проекты, использую ее только в качестве отладчика. Глубина небольшая: Есть два проекта А и Б, в каждый входят файлы 1 и 2. 1. Работали в проекте А, откомпилировали файлы 1 и 2. 2. Переключили на проект Б. 3. Изменили файл 1. 4. Запустили make - файл 1 будет откомпилирован заново, файл 2 не будет : - Он не изменялся - свойства проектов не изменялись 5. Наблюдаем странные результаты, поскольку в файле 2 было что-то типа: #ifdef PROJ_A char configuration = PROJ_A_CONFIG; #endif #ifdef PROJ_B char configuration = PROJ_B_CONFIG; #endif 6. Чешем затылок 5 минут, и со словом "Эврика" клянем себя, все среды и проч. Теперь вопрос - где баг?
--------------------
Уходя, оставьте свет...
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|