|
stm32f4discovery+scmRTOS4, Вопрос чайника: можно ли запустить? |
|
|
|
 |
Ответов
|
Jun 20 2014, 10:03
|

фанат дивана
     
Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684

|
Цитата(IgorKossak @ Jun 20 2014, 14:02)  Я бы не стал ставить утилиты пакета MSYS в несвойственное им место. Тулчейн может обновиться. Другие среды и тулчейны могут использовать эти утилиты в своих целях. Мало ли ещё какие причины могут быть? Да, конечно лучше в отдельную папку. Просто я описывал как покороче. Цитата(IgorKossak @ Jun 20 2014, 14:02)  Лучше проинсталлировать MSYS стандартным способом с сохранением пути к нему в переменной PATH. Дело в том, что я не нашёл на сайте mingw нормального инсталлятора MSYS. Самый последний инсталлятор - msys-1.0.11, от 2008 года. Дальше просто куча частей, разложенная в кучу архивов. Я решил, что лучше взять компоненты поновее. Цитата(IgorKossak @ Jun 20 2014, 14:02)  А вот путь к тулчейну я в переменной PATH не сохраняю, а указываю в Project->Properties->C/C++ Build->Environment в переменной PATH (у меня Eclipse Luna, но и в других аналогичных IDE есть похожее). Так удобнее и при экспериментах с разными тулчейнами и с переносимостью проекта лучше. Считаю, что makefile должен работать самостоятельно, на завися от эклипсы. Поэтому все параметры сборки проекта - в нём. Это и для переносимости в том числе. При экспериментах ничто не мешает мне задать в makefile путь к любому тулчейну, если занадобится. А дефолтные тулчейны - в PATH. Цитата(Сергей Борщ @ Jun 20 2014, 14:34)  А у меня путь к самому свежему компилятору прописан в PATH (что позволяет его вызывать из командной строки без полного указания пути), но при необходимости можно в makefile добавить в начало PATH путь к любому другому (подсмотрел у ReAl) А чем это лучше, вот такого варианта: Код TOOL = arm-none-eabi- CC = $(TOOL)gcc CXX = $(TOOL)g++ LD = $(TOOL)g++ (при необходимости заменяем на: Код TOOL = /path/to/another/toolchain/arm-none-eabi- CC = $(TOOL)gcc ... )?
--------------------
Если бы я знал, что такое электричество...
|
|
|
|
|
Jun 20 2014, 11:26
|

Шаман
     
Группа: Модераторы
Сообщений: 3 064
Регистрация: 30-06-04
Из: Киев, Украина
Пользователь №: 221

|
Цитата(AHTOXA @ Jun 20 2014, 13:03)  Дело в том, что я не нашёл на сайте mingw нормального инсталлятора MSYS. Самый последний инсталлятор - msys-1.0.11, от 2008 года. Дальше просто куча частей, разложенная в кучу архивов. Я решил, что лучше взять компоненты поновее. mingw-get-setup.exe Можно выбрать то, что нужно. Цитата(AHTOXA @ Jun 20 2014, 13:03)  Считаю, что makefile должен работать самостоятельно, на завися от эклипсы. Поэтому все параметры сборки проекта - в нём. Это и для переносимости в том числе. При экспериментах ничто не мешает мне задать в makefile путь к любому тулчейну, если занадобится. А дефолтные тулчейны - в PATH. Это безусловно, если собирать из командной строки. Но если в проект входят ещё и настройки среды (файлы .project, .cproject, что в последнее время сполошь и рядом делается), что удобно для индексатора и discovering, то на мой взгляд лучше по-моему. Кроме того, "дефолтные тулчейны - в PATH" могут подложить свинью, поскольку оттуда трудно отследить какие именно инструменты вызываются. Например, у меня установлены две версии тулчейна от GCC ARM Embedded и один от CodeSourcery. Чтобы переключиться с одного на другой в Вашем варианте надо поменять переменную PATH и перелогиниться в системе (у меня по крайней мере так). В то время как используя мой вариант, не нужно даже среду перезапускать, а достаточно подправить переменную PATH в среде, при этом автоматически осуществляется редискаверинг и реиндексация. Мне так показалось удобнее, но я не настаиваю.
|
|
|
|
|
Jun 20 2014, 12:55
|

фанат дивана
     
Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684

|
Цитата(IgorKossak @ Jun 20 2014, 17:26)  mingw-get-setup.exe Можно выбрать то, что нужно. О, спасибо, я как-то проглядел. Хотя не люблю я эти веб-инсталляторы  Цитата(IgorKossak @ Jun 20 2014, 17:26)  Это безусловно, если собирать из командной строки. Но если в проект входят ещё и настройки среды (файлы .project, .cproject, что в последнее время сполошь и рядом делается), что удобно для индексатора и discovering, то на мой взгляд лучше по-моему. В этом случае сложнее перетащить проект в другую IDE. В моём же варианте - настройки сборки проекта - в makefile, настройки среды - в .project, .cproject. Цитата(IgorKossak @ Jun 20 2014, 17:26)  Кроме того, "дефолтные тулчейны - в PATH" могут подложить свинью, поскольку оттуда трудно отследить какие именно инструменты вызываются. Например, у меня установлены две версии тулчейна от GCC ARM Embedded и один от CodeSourcery. Чтобы переключиться с одного на другой в Вашем варианте надо поменять переменную PATH и перелогиниться в системе (у меня по крайней мере так). Нет, я говорил немного о другом. Я говорил о вызове с полным указанием пути к тулчейну. То есть, дефолтный компилятор вызывается как arm-none-eabi-gcc, а компилятор из другого тулчейна - как C:/tools/cs/2011.09-69/arm-none-eabi-gcc. При этом никаких изменений в PATH вносить не надо. Впрочем, я тоже не настаиваю на этом варианте
--------------------
Если бы я знал, что такое электричество...
|
|
|
|
|
Jun 20 2014, 13:16
|

Шаман
     
Группа: Модераторы
Сообщений: 3 064
Регистрация: 30-06-04
Из: Киев, Украина
Пользователь №: 221

|
Цитата(AHTOXA @ Jun 20 2014, 15:55)  То есть, дефолтный компилятор вызывается как arm-none-eabi-gcc, а компилятор из другого тулчейна - как C:/tools/cs/2011.09-69/arm-none-eabi-gcc. О! Почти пришли к общему знаменателю. За исключением лишь того, что я не пользуюсь понятием "дефолтного" тулчейна, ибо не понимаю этой сущности. У меня тулчейн всегда конкретный, записанный с полным путём (в переменной PATH среды разработки, в системной же PATH - никаких путей к тулчейнам). Что же касается makefile, то указывать там полный путь, на мой взгляд - моветон, ибо совершенно не переносимо.
|
|
|
|
|
Jun 20 2014, 15:24
|

фанат дивана
     
Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684

|
Цитата(IgorKossak @ Jun 20 2014, 19:16)  О! Почти пришли к общему знаменателю. Да, мы близки к этому  Дефолтный тулчейн - это, скажем, текущий стабильный. Вышел новый gcc-arm-embedded - я его протестировал, убедился в его работоспособности, и прописал в PATH. И с этого момента все проекты компилируются им. Вам же, чтобы откомпилировать старые проекты новым тулчейном -- придётся менять настройки для каждого проекта. (Хотя может быть вы как раз наоборот, не станете менять, ибо раз проект разработан с конкретной версией компилятора, то пусть с ней и сопровождается. В этом случае всё нормально.) Что касаемо указания полного пути в makefile, то это делается только на время эксперимента, потом убирается. Так что на переносимость не влияет.
--------------------
Если бы я знал, что такое электричество...
|
|
|
|
Сообщений в этой теме
Legath stm32f4discovery+scmRTOS4 May 11 2012, 11:04 AHTOXA Можно, работает без каких-либо доработок.
Можете в... May 11 2012, 11:09 Legath Цитата(AHTOXA @ May 11 2012, 15:09) Можно... May 11 2012, 12:51  AHTOXA От ОС конечно. Прямо целиком пример берите.
Ну или... May 11 2012, 13:59   Legath Цитата(AHTOXA @ May 11 2012, 17:59) От ОС... May 11 2012, 15:31    AHTOXA Всегда пожалуйста
Забыл написать. Если захотите ис... May 11 2012, 17:52   AHTOXA Цитата(AHTOXA @ May 11 2012, 19:59) Ну ил... Nov 30 2012, 04:21    Pat Цитата(AHTOXA @ Nov 30 2012, 06:21) Меня ... Nov 30 2012, 08:31     AHTOXA Цитата(Pat @ Nov 30 2012, 14:31) Думаю бу... Dec 2 2012, 12:09     viktory_93 RE: stm32f4discovery+scmRTOS4 Jun 19 2014, 14:48      AHTOXA Я не знаком с CoIDE. Судя по всему, в проект кроме... Jun 19 2014, 18:01       viktory_93 Ура! Билдится! Спасибо
Знать бы теперь как... Jun 20 2014, 04:29    viktory_93 Цитата(AHTOXA @ Nov 30 2012, 08:21) Меня ... Jun 15 2014, 21:01     AHTOXA У Sourcery make называется cs-make. Исправьте в на... Jun 16 2014, 04:58 Legath еще глупый вопрос: почему когда в скрипте линковки... May 17 2012, 20:51 AHTOXA Видимо потому, что верхние 64К - это некая CCM (co... May 18 2012, 03:58 Legath А там ошибки в sysinit нет? а то у меня возникла т... May 18 2012, 13:37 AHTOXA На STM32F4DISCOVERY кварц 8МГц, а в примерах (они ... May 18 2012, 16:39 Legath Огромное спасибо за оперативную помощь по переходу... May 18 2012, 18:26 IgorKossak Я бы не стал ставить утилиты пакета MSYS в несвойс... Jun 20 2014, 08:02 Сергей Борщ Цитата(IgorKossak @ Jun 20 2014, 11:02) а... Jun 20 2014, 08:34 Сергей Борщ Цитата(AHTOXA @ Jun 20 2014, 13:03) А чем... Jun 20 2014, 10:16  AHTOXA Так их в любом случае придётся перечислять, из-за ... Jun 20 2014, 11:09    mdmitry Цитата(IgorKossak @ Jun 20 2014, 17:16) О... Jun 20 2014, 15:38     IgorKossak Цитата(mdmitry @ Jun 20 2014, 18:38) P.S.... Jun 20 2014, 16:28
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|