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

а попробуйте кусочками грузить

тогда не упадет, пробовал

Частично помогает если дать gdb команду

set remotetimeout NN

где NN должно больше времени заливки бинарника.

 

 

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


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

Вопрос чисто по Eclipse: после того, как я завершаю отладку своей программы (т.е. нажимаю кнопку Terminate), в окне с исходником остается выделенной строка, на которой я прервал отладку. При переключении перспективы в "обычный" режим редактирования это выделение остается.

 

Существует ли способ это убрать? все-таки не совсем хорошо, когда отладка прекращена, а стрелочка указывает на строку и сама строка подсвечена...

 

 

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


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

Ну что ж, все активные проекты в Keil вроде перешли в состояние "всё работает, файлы упаковать в архив и убрать в дальний угол". Так что начинаю осуществлять свою давнюю мечту - изучить Eclipse + gcc + make. Прочитал все 11 страниц этой темы, узнал много нового. Для себя составил пока такое представление (буду работать с cortex-m3):

1. для самостоятельной сборки под винду различных полезных утилит, включая gdb и openocd, необходим mingw. Но его можно не ставить на первом этапе знакомства, потому как все необходимые тулзы доступны в скомпилированном виде.

2. качается eclipse-cpp сборка (helios самая последняя), gdb сервер идёт из пакета CDT и в эклипсе доступен по умолчанию (или накрайняк ставится через install new software), на zylin можно смело забить.

3. В eclipse ставятся плагины c/c++ gcc cross compiler support и c/c++ gdb hardware debugging - второй нужен, чтобы видеть в режиме отладки регистры процессора? а первый для чего?

4. опять же в Eclipse ставится плагин gnuarmeclipse - доступен как отдельный проект на sf.net - позволяет через оконный интерфейс задавать настройки проекта - нужен новичкам типа меня, которые не смыслят в дебрях makefile (я туда заглянул, процентов 10 понял с первого раза :) )

5. Для сборки проектов под арм необходим тулчейн (который как раз при полном понимании можно пересобирать из репозиториев с помощью mingw) - грубо говоря набор утилит линкер-компилер-ещё всякие необязательные плюшки. для работы "из коробки" в порядке убывания предпочтительны - kgp (Klen GNU Package? :) Не нашёл расшифровки; сборки klen'а все хвалят) - yagarto - sourcery g++ - ну и древние gnuarm, winarm - ими уже вроде как никто давно не пользуется. Качаем сборку kgp, ставим, прописываем путь к kgp\bin в Path (равно как и для mingw\bin).

6. поскольку в сборке kgp есть openocd, то далее можно уже запускать эклипс, добавлять туда новый тулчейн через настройки, и при создании нового своего проекта указывать использование тулчейна kgp.

7. для отладки в железе надо создавать профиль отладки в свойствах проекта. отладка в симуляторе почти бесполезна, поскольку система знает только про ядро, по периферии конкретных контроллеров библиотек нет. Хотя тут надо глянуть, что такое skyeye - я так понял он из этой области как раз.

По мере уточнения информации могу эти пункты откорректировать.

С источниками файлов всех в эклипсе разобрался, запнулся на следующем: на работе сидим за проксёй с авторизацией, и эклипс не выкачивает просто так файлы через 'install new software', хотя список файлов с сервера получает. В опциях General->Network Connections ставлю active provider в 'Manual', и в http,https,socks указываю нашу проксю + логин и пароль, но эклипс всё равно не выкачивает файлы.

Посему у меня такой вопрос: правильно ли я понимаю, что вся связка eclipse+plugins+toolchain в принципе является portable? в том плане, что допустим я дома всю связку настраиваю с прописыванием Path, - копирую на usb диск, - копирую на работе, - прописываю Path и работаю, - и всё то же самое в обратном порядке если что вдруг поменяю?

Буду рад за активную критику и дополнение пунктов. А так, по 6 и 7 пункту видел хорошие руководства для новичков с картинками - я по ним знакомился со средой, делал как описано, всё начинало работать.

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


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

правильно ли я понимаю, что вся связка eclipse+plugins+toolchain в принципе является portable?

Да. Я одно время таскал эклипсу на USB-HDD. (Надо только чтоб везде стояла джава)

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


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

сам Eclipse вроде бы "portable", да вот только с Java у него какие-то особые отношения...

сведения противоречивые: одни говорят, что достаточно установить JRE последней версии, другие - что нужно где-то в реестре (?) что-то прописывать... во всяком случае просто так скопированный на флешку Eclipse на "не родной" машине не стартует. попытка сделать portable-комплект при помощи Virtual Box и Thinstall Virtualization Suite пока что успехом не увенчалась, хотя на виртуалке устанавливал и JRE...

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


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

сам Eclipse вроде бы "portable", да вот только с Java у него какие-то особые отношения...

сведения противоречивые: одни говорят, что достаточно установить JRE последней версии.

так и есть.

запускаю эклипс из батника так:

set JRE_ROOT=%DEVEL_ROOT%/jre/jre-6u12

set WORKSPACE_ROOT=%DEVEL_ROOT%/workspace

set ECLIPSE_ROOT=%DEVEL_ROOT%/eclipse/eclipse-cpp-ganymede-SR2-win32/eclipse

"%ECLIPSE_ROOT%/eclipse.exe"  -vm "%JRE_ROOT%/bin/javaw" -os win32 -arch x86  -data "%WORKSPACE_ROOT%" -vmargs -Xms512m -Xmx1024m

Где DEVEL_ROOT - путь к каталогу на флэшке.

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


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

запускаю эклипс из батника так:

...

Шикарно! спасибо! Скопировал просто установленную jre6 из папки program files в portable каталог - всё работает.

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


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

полезный прием однако, спасибо.

 

2_Aaron

kgp (Klen GNU Package? sm.gif Не нашёл расшифровки

почти угадал ! логика однако сильная штука , не правда ли?

расшифровку искать не нада - ее даст любая тулса которую я собрал запущенная с опцией -v:

klen@klen-desktop:~$ arm-kgp-eabi-ld -v
GNU ld (Klen's GNU package (KGP) for ARM/elf platform) 2.21.52.20110617

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


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

Доброго времени суток коллеги,

 

Заранее извиняюсь если не в ту тему запостил.

Вопрос собственно вот в чем:

 

Есть некая железяка с ARM + Embedded Linux, есть родной SDK (включая тулчейн), который естественно под линукс, есть даже хост-машина где все это развернуто под Debian'ом и работает :biggrin:

Есть другая машина под виндами, с эклипсом и CDT. Хотелось бы собирать все то же самое на ней. Какие телодвижения нужны для этого? :rolleyes:

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


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

...

Есть некая железяка с ARM + Embedded Linux, есть родной SDK (включая тулчейн), который естественно под линукс, есть даже хост-машина где все это развернуто под Debian'ом и работает :biggrin:

Есть другая машина под виндами, с эклипсом и CDT. Хотелось бы собирать все то же самое на ней. Какие телодвижения нужны для этого? :rolleyes:

Гуглите "cygwin". Но лучше используйте нативный линукс.

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


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

Гуглите "cygwin". Но лучше используйте нативный линукс.

А если взять виндовый кросс-компилятор под ARM (бинарники), а хедеры и либы перетянуть из родного SDK? Будет работать?

 

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


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

А если взять виндовый кросс-компилятор под ARM (бинарники), а хедеры и либы перетянуть из родного SDK? Будет работать?

Обычно для систем сборки линукса и его окружения нужна НОРМАЛЬНАЯ файловая система, поддерживающая: атрибуты "файл запускаем", симлинки, для скриптов configure нужен нормальный, человеческий шелл, утилиты (make, patch, tar и прочие). Cygwin пытается дать такое окружение.

Если даже всё это вам и удастся обеспечить под виндой, то работать это будет ооооочень медленно. Субъективно сборка одного и того-же проекта одной и той-же версией компилятора под виндой раз 5 осуществляется дольше.

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


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

под виндой раз 5 осуществляется дольше.

на моих машинах в 4 раза.

ИМХО для маленьких проектов для микроконтроллеров непринципиално.

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


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

Cygwin пытается дать такое окружение.

Спасибо за разъяснение. Хоть понял для чего нужен Cygwin :rolleyes:

 

Итак, если хочется под виндами собирать под линукс, без cygwin'а не обойтись? А какой собственно кросс-компилятор посоветуете?

 

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


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

Спасибо за разъяснение. Хоть понял для чего нужен Cygwin :rolleyes:

 

Итак, если хочется под виндами собирать под линукс, без cygwin'а не обойтись? А какой собственно кросс-компилятор посоветуете?

1. А какая причина использовать для сборки линукса виндоуз?

2. Компилятор для линукса сейчас практически один - gcc.

3. Рекомендую обратить внимание на проект "buildroot". Это набор скриптов, с помощью которого автоматизированно собирается нужный вам кросс-компилятор (из исходных кодов gcc), ядро линукса, загрузчик, файловая система, на которой будет запускаться ядро и минимальный набор утилит, которым все привыкли пользоваться в линуксе.

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


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

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

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

Гость
Ответить в этой теме...

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

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

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

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

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

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