|
|
  |
Вопросы по Eclipse, CDT, Zylin embedded CDT, предлагаю обсуждать тут, может потом FAQ выжмем |
|
|
|
May 5 2010, 17:53
|

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

|
А что не получается? Написать makefile? Попробуйте вот это:
iar_eclipse_msp430.rar ( 6.46 килобайт )
Кол-во скачиваний: 131Это я взял свой старый makefile для сборки iar (для borland make) и поправил его для GNU make. Компилирует все *.c файлы, которые найдёт в папке src. К сожалению проверить не на чем, IAR-а давно нет. Исходный makefile.bor прилагается. Пример проекта eclipse - тоже.
--------------------
Если бы я знал, что такое электричество...
|
|
|
|
|
May 6 2010, 09:10
|
Участник

Группа: Участник
Сообщений: 17
Регистрация: 14-01-10
Из: Снежинск
Пользователь №: 54 791

|
Цитата(gotty @ May 5 2010, 12:14)  Вы не уточнили чьей сборкой gcc вы пользуетесь, но у CodeSourcery есть в поставке Sourcery G++ Lite 4.4-191 for MIPS ELF утилита mips-sde-elf-run для запуска программы в симуляторе, или внутри gdb можно, указав "target sim". В Getting Started про это написано. Именно CodeSourceryLite и пользуюсь в качестве компилятора. К сожалению, я не смог запустить mips-sde-elf-run по GettingStarted, поэому вопрос мой остаётся в силе. Надеюсь на вашу помощь.
|
|
|
|
|
May 6 2010, 10:36
|
Знающий
   
Группа: Свой
Сообщений: 526
Регистрация: 24-08-07
Из: Беларусь, Минск
Пользователь №: 30 045

|
Цитата(Konkere @ May 6 2010, 12:10)  К сожалению, я не смог запустить mips-sde-elf-run по GettingStarted, поэому вопрос мой остаётся в силе. Надеюсь на вашу помощь.  Если уж надеетесь, хоть рассказали бы почему не получилось, какие сообщения получили. Попробуйте через gdb в добавок. P.S. с мипсами дела не имел. UPD. Попробовал примерчик с факториалом. Код mips-sde-elf-gcc -EL -mno-float -o factorial.elf factorial.c -T mipssim-hosted.ld mips-sde-elf-gdb.exe ./factorial.elf > target sim > load > b main > run > n топает по строчкам, только принтф не работает  (или я не умею его готовить) Не смотрите что из командной строки, отладчик легко цепляется к эклипсу. Через mips-sde-elf-run запустить не удалось, видимо надо основательно курить мануалы.
|
|
|
|
|
May 6 2010, 19:03
|
Участник

Группа: Участник
Сообщений: 34
Регистрация: 10-03-05
Из: Kiev UA
Пользователь №: 3 237

|
При компиляции в Eclipse у меня и многих других появляется сообщение “Error launching external scanner info generator”. Это относится к различным Eclipse-ам и различным сборкам для различных микроконтроллеров. На интернет имеется множество предложений как от него избавиться. Вопрос теперь не в том как от него избавиться. Интригует уже другое. Пару дней поиска на интенет не дало абсолютно никакого ( ни одного!) ответа на вопрос о том 1 что же, собственно, такое «external scanner info generator», 2 зачем он нужен 3 и как работает. Может ли кто-нибудь дать хоть какое-то объясненте по этому вопросу. Лучше будет в виде живого ответа, поскольку интуиция подсказывает что даже хорошая ссылка не прояснит всё что необходимо.
|
|
|
|
|
May 6 2010, 20:55
|

Гуру
     
Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095

|
Цитата(kiuaki @ May 6 2010, 22:03)  1 что же, собственно, такое «external scanner info generator», 2 зачем он нужен 3 и как работает. Чисто интуитивно: он сообщает оболочке о путях к системным библиотекам. Если он есть, то в дереве проекта в разделе includes появятся папки заголовочных файлов вашего компилятора и оболочка сможет искать в них всякие объявления. Возможно он также сообщает оболочке некоторые предопределенные компилятором символы (__GNUC__ и подобные). Пути из gcc добываются запуском компилятора с соответствующими ключами. Более точно понять, что же из компилятора добывает оболочка можно, прочитав описание ключей запуска: -E -P -v -dD
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
|
May 6 2010, 21:27
|
Участник

Группа: Участник
Сообщений: 34
Регистрация: 10-03-05
Из: Kiev UA
Пользователь №: 3 237

|
Спасибо. Теперь, когда есть подсказка от вас, где почитать по данному поводу, займусь этим. Я связался с Cortex M3 и имею довольно большой объём работы. Выбрал Eclipse (Galileo)+Yagarto. В то же время установил ещё и инструментарий от Olimex ARM-USB-OCD (c Eclipse - Ganymede) . Хочу также настроить Insight. Буду делиться впечатлениями.
|
|
|
|
|
May 7 2010, 15:06
|
Участник

Группа: Участник
Сообщений: 34
Регистрация: 10-03-05
Из: Kiev UA
Пользователь №: 3 237

|
Со вчерашнего дня бороздил интернет по поводу следующего вопроса: Eclipse (Galileo и Ganymede, оба для С/С++ , Yagarto) при создании New Project C не даёт возможности выбрать Generate makefile automatically . Поле greyed out или disabled. Интернет ссылается на то что при создании нового проекта нужно выбрать Managed Makefile тип проекта. С серьёзными времязатратами выяснилось что Managed Makefile термин теперь в Eclipse не используется. Для автоматической генерации makefile теперь дОлжно использовать New Project | C Project | C Executable (или что-то звучащее похожим образом). Но как раз этой опции у меня не возникает. То что предлагается в моих Eclipse- ах это New Project | C Project | Makefile project где имеется выбор из Empty Project и Hello World C++ Project. Toolchains: Other Toolchain и только это. Знает ли кто нибудь как можно осуществить автогенерацию makefile в Eclipse? Может ли быть что у меня не установлен или не прописан в PATH-переменной какой-нибудь компонент? Многие примеры различных проектов при этом номально компилируются. Также, если я добавляю в проект makefile вручную, то он скомпилируется.
|
|
|
|
|
May 9 2010, 21:19
|
Участник

Группа: Участник
Сообщений: 31
Регистрация: 13-03-07
Пользователь №: 26 123

|
Цитата(Konkere @ May 6 2010, 12:10)  Именно CodeSourceryLite и пользуюсь в качестве компилятора. К сожалению, я не смог запустить mips-sde-elf-run по GettingStarted, поэому вопрос мой остаётся в силе. Надеюсь на вашу помощь.  Printf в симуляторе elf-run из под Win32 действительно не работает. В том числе и если запускать target sim в gdb. Об этом уже спрашивали на ARM форуме Sourcery, правда без ответа... Не работает вывод и в симуляторе сборки Клена. Наверное, какая-то общая проблема в заглушками (системными вызовами) для функций _write и т.п. Надо качать ограниченную по времени версию полнофункционального Sourcery c IDE и использовать эмулятор qemu. Тогда printf заработает. Потом можно даже научиться запускать target qemu в gdb и вернуться к применению lite компилятора. К тому же, в qemu можно хотя бы приблизительно считать процессорное время таймером c0_count, а как это делать в sim я так и не нашел. Если я не прав (сам только недавно связался с gcc), с удовольствием выслушаю подсказку. Может надо Mingw доустанавливать?
|
|
|
|
|
May 10 2010, 07:15
|

Гуру
     
Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095

|
Цитата(kiuaki @ May 7 2010, 18:06)  Знает ли кто нибудь как можно осуществить автогенерацию makefile в Eclipse? Смею предположить (сам не пользуюсь, пишу makefile вручную), что оболочка должна знать, какие ключи подставлять компилятору. И как-то должна давать вам возможность задавать их галочками. Вероятно, эти возможности предоставляет соответствующий плугин - для ARM или для AVR. Попробуйте, отпишитесь.
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
|
May 10 2010, 18:19
|
Участник

Группа: Участник
Сообщений: 34
Регистрация: 10-03-05
Из: Kiev UA
Пользователь №: 3 237

|
to Сергей Борщ - Попробуйте, отпишитесь.
Спасибо, Сергей. Но я этих галочек как раз давно стараюсь поймать, т.е. определить где бы они могли находиться. Я сейчас ещё попытаюсь выяснить все ли необходимые компоненты присутсрвуют. Одна возможная закономерность проявляется сейчас в том что там где Eclipse работает с Cygwin – там всё в порядке, (т.е. имеется возможность выбора между Managed Makefile и Standard Makefile типами проекта. Там, где Eclipse работает с YAGARTO,этот выбор может быть или не быть. Сейчас это уточняю. Не исключено, однако, что это тупиковое направление. Отпишусь
|
|
|
|
|
May 11 2010, 04:35
|

Профессионал
    
Группа: Свой
Сообщений: 1 261
Регистрация: 14-05-09
Из: Челябинск
Пользователь №: 49 045

|
Цитата(AHTOXA @ May 5 2010, 23:53)  А что не получается? Написать makefile? Попробуйте вот это:
iar_eclipse_msp430.rar ( 6.46 килобайт )
Кол-во скачиваний: 131Это я взял свой старый makefile для сборки iar (для borland make) и поправил его для GNU make. Компилирует все *.c файлы, которые найдёт в папке src. К сожалению проверить не на чем, IAR-а давно нет. Исходный makefile.bor прилагается. Пример проекта eclipse - тоже. Ну да,,,, не получается написать makefile. Ваш проект скачал, попробовал собрать - ошибки Код --- compiling main.c
IAR C/C++ Compiler V4.20.1.20017/W32, Evaluation edition for MSP430 Command line error: Unexpected command line arguments: Copyright 1996-2008 IAR Systems AB. -c -S -K -gA -RCODE -L./lst/ -q -A./lst/ -t8 mingw32-make: *** [obj/main.o] Error 2 Я сделал свой тестовый проект, типа "Hello word" в иаре. посмотрел с какими ключами вызывается icc430 И xlink. Написал свой makefile с такими же ключами. Код CFLAGS += -o $(OBJDIR) LD_FLAGS = -o $(EXEDIR)/$(TARGET).d43
$(HEX): $(OBJS) makefile @echo --- linking... icc430 $(OBJDIR$)/main.r43 $(LD_FLAGS)
$(OBJDIR)/%.r43: %.c @echo --- compiling $(*F).c $(CC) $(CFLAGS) -o $@ $< Получаю ошибку Код **** Build of configuration Default for project testMSP430 ****
mingw32-make all --- compiling main.cpp
IAR C/C++ Compiler V4.20.1.20017/W32, Evaluation edition for MSP430 Copyright 1996-2008 IAR Systems AB. Command line error: Option can only occur once: --output/-o mingw32-make: *** [Debug/Obj/main.r43] Error 2 Почему так? Как решить проблему?
|
|
|
|
|
May 11 2010, 05:57
|

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

|
Цитата(juvf @ May 11 2010, 10:35)  Код --- compiling main.c
IAR C/C++ Compiler V4.20.1.20017/W32, Evaluation edition for MSP430 Command line error: Unexpected command line arguments: Хм. Видимо у меня был очень старый IAR  Но не суть. Раз ключи запуска вы знаете, то проблема решаемая. Запишите все ключи в CFLAGS. Для проверки правильности формирования командной строки запускайте Код make -n , этот ключ говорит make ничего не выполнять, а лишь напечатать команды, планируемые к выполнению. Цитата Код CFLAGS += -o $(OBJDIR) А здесь вроде нужна большая "O".
--------------------
Если бы я знал, что такое электричество...
|
|
|
|
|
  |
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|