mir_av 0 10 ноября, 2011 Опубликовано 10 ноября, 2011 · Жалоба Подскажите пожалуйста, как установить точки останова в оболочке Eclipse? Использую оболочку Eclipse (Helios Release Build id: 20100617-1415). Компилятор gcc version 4.4.1. и отладчик gdb (GDB) 7.0. Пытаюсь отлаживать ядро Linux. При попытке поставить точку останова в некоторых файлах исходников ядра, вместо нее появляется желтый треугольник с восклицательным знаком? В чем проблема? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Aaron 1 10 ноября, 2011 Опубликовано 10 ноября, 2011 · Жалоба сейчас попробовал - ставятся точки останова в любом месте, никаких проблем (eclipse indigo). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mir_av 0 10 ноября, 2011 Опубликовано 10 ноября, 2011 (изменено) · Жалоба сейчас попробовал - ставятся точки останова в любом месте, никаких проблем (eclipse indigo). А если в например в файле ./linux/net/compat.c? При этом gdb trace выводит: 650,138 (gdb) 650,138 1817-break-insert /usr/src/linux-2.6.31.14/net/compat.c:36 650,502 1817^error,msg="No source file named /usr/src/linux-2.6.31.14/net/compat.c." При удачной установки: 208,155 1823-break-insert /usr/src/linux-2.6.31.14/net/socket.c:269 208,334 1823^done,bkpt={number="11",type="breakpoint",disp="keep",enabled="y",addr="0xc0526138",func\ ="init_once",file="net/socket.c",fullname="/usr/src/linux-2.6.31.14/net/socket.c",line="269",times="\ 0",original-location="/usr/src/linux-2.6.31.14/net/socket.c:269"} Изменено 10 ноября, 2011 пользователем oliva_av Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Aaron 1 11 ноября, 2011 Опубликовано 11 ноября, 2011 · Жалоба простите, я не имел ввиду linux, мне до вас далеко. Копаюсь чисто в своих embedded проектах. Но быстрое гугление говорит о том, что проблема в CDT7 при установке брейкпоинтов в файлах библиотек, слинкованных к проекту. Как вариант попробуйте предлагают брейкпоинты переставлять заново после запуска GDB. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mir_av 0 21 ноября, 2011 Опубликовано 21 ноября, 2011 · Жалоба Модули должны быть статическими, ставятся точки без проблем. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 141 27 января, 2012 Опубликовано 27 января, 2012 (изменено) · Жалоба Сегодня из рассылки по OpenOCD удалось выловить ссылки на еще две сборки gсc-arm. Не припомню, чтобы они упоминалось на этом форуме. Обе сборки под Win и Lin. As part of its ongoing commitment to maintaining and enhancing GCC compiler support for the ARM architecture, ARM is maintaining a GCC toolchain source branch targeted at Embedded ARM Processors, namely Cortex-R/Cortex-M processor families. As part of this, ARM will, at regular intervals, release binaries pre-built and tested from the ARM embedded branch. The improvements will be freely available for integration into 3rd party toolchains, and for direct download by end-users. GNU Tools for ARM Embedded Processors Там также есть подробная инструкция "как собрать атомную бомбу gcc для винды или линуха под убунтой самостоятельно". The Toolchain Working Group now provides pre-built binary versions of Linaro GCC, Linaro GDB and binutils. These binary versions work under generic Linux and Windows and can be used by an end developer to cross-compile programs for either a Linaro Evaluation Build or a bare-metal target. Linaro (искать в конце страницы) Изменено 27 января, 2012 пользователем IgorKossak Первый линк Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ReAl 0 27 января, 2012 Опубликовано 27 января, 2012 (изменено) · Жалоба Спасибо, бум посмотреть. В первой ссылке попутаны местами название и линк. Изменено 27 января, 2012 пользователем IgorKossak Поправил Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
IgorKossak 0 27 января, 2012 Опубликовано 27 января, 2012 · Жалоба Фактически, ссылка в конце страницы Linaro ссылается на GNU Tools for ARM Embedded Processors, но там много и другой полезной информации. Порадовало наличие библиотек с плавучкой под cortex-m4f, как abi-soft, так и hard (в отличие от Sourcery Code Bench Lite). Хотелось бы ещё проверить насколько тяжелы у них реализации функций форматированного вывода. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 141 27 января, 2012 Опубликовано 27 января, 2012 · Жалоба Фактически, ссылка в конце страницы Linaro ссылается на GNU Tools for ARM Embedded Processors,А предыдущая - на их собственную сборку. Сам пока не смотрел. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AHTOXA 18 27 января, 2012 Опубликовано 27 января, 2012 · Жалоба Попробовал "GNU Tools for ARM Embedded Processors", сравнил с последним "свежаком" от klen-а. Вот что вышло на небольшом проекте (Cortex-M3): text data bss kgp 34436 32 38352 ARM 40836 32 38352 Это под линуксом. Работоспособность результата пока не проверял. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Артём__ 0 22 февраля, 2012 Опубликовано 22 февраля, 2012 · Жалоба А как в eclipse с автодополнением. Нажимаю Ctrl+Space и ... никакий ассоциаций: Как-то настраивать надо? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AHTOXA 18 22 февраля, 2012 Опубликовано 22 февраля, 2012 · Жалоба Попробуйте поставить перед ef "::": ::ef. Иногда эклипсу немножко переклинивает, в чём дело - не понял. В других проектах всё нормально, отлично автодополняет. А вот именно в примерах к scmRTOS - нет. Причём и в них местами работает - попробуйте в main(). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Артём__ 0 22 февраля, 2012 Опубликовано 22 февраля, 2012 · Жалоба Попробуйте поставить перед ef "::": ::ef. Помогло. Но этож две лишних буквы писать. местами работает - попробуйте в main(). Да - всё работает. Попробуйте поставить перед ef "::": ::ef. В других проектах всё нормально, отлично автодополняет. А вот именно в примерах к scmRTOS - нет. Хм...тенденция однако. Редактирую обычно проекты в Studio: в 99% всё устраивает. Создал проект с scmRTOS - та же фигня: часто не те блоки #if...#endif становятся неактивными/неактивными, автодополнение как правило работает (возможно благодаря VisualAssist, не знаю справился бы IntelleSence), ну и целом создалось впечатление что с проектом что-то нетак. Думал, что недоконфигурил проект для студии, но теперь получается что Eclipse тоже scmRTOS не переваривает. Возможно все глюки вызваны широким использованием шаблонов и современные IDE не справляются. Надо бы найти время и попробывать создать проект с scmRTOS в AVRStudio 5 - может она справится? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AHTOXA 18 22 февраля, 2012 Опубликовано 22 февраля, 2012 · Жалоба получается что Eclipse тоже scmRTOS не переваривает. У меня другие проекты, в которых автодополнение работает - тоже с scmRTOS. Видимо просто звёзды не так расположились:) У эклипсы самый навороченный парсер, полноценный парсер си/си++, практически компилятор. А в таких сложных системах практически невозможно отловить все баги. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Артём__ 0 22 февраля, 2012 Опубликовано 22 февраля, 2012 · Жалоба У меня другие проекты, в которых автодополнение работает - тоже с scmRTOS. Обнадёживает. Видимо просто звёзды не так расположились:) Звёзды наверное на месте. Как назвали так работает - затмение солнца. Только как его расчитать. У меня другие проекты, в которых автодополнение работает - тоже с scmRTOS. Видимо просто звёзды не так расположились:) У эклипсы самый навороченный парсер, полноценный парсер си/си++, практически компилятор. А в таких сложных системах практически невозможно отловить все баги. Да, не поймать. Сделал так: void Process2() { for(;;) { OS::sleep(1000); LedOn(); OS::sleep(10); LedOff(); } } namespace OS { template <> OS_PROCESS void TProc2::exec() { Process2(); } } Автозавершение появилось. Но по шагам не ходит в отладчике. И корректно ли это? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться