ZAA 0 1 апреля, 2008 Опубликовано 1 апреля, 2008 · Жалоба Собираем httpd-сервер на основе eCos. Контроллер AT91SAM7x256. В качестве основы взята конфигурация eCos - NET. Следующая ошибка встертилась: 1) при попытке собрать тесты (причём и в других конфигурациях тоже встречалась не раз). Пришлось в мэйкфайле закомментировать те тесты, на которые ругался make, убрать standalone stack, lwip stack, урезать размеры некоторых буферов... В общем кое-как тесты собрались 2) при компиляции сервера после устранения всех ошибок возникла та же ошибка: /src/gnutools/arm-elf/bin/../lib/gcc-lib/arm-elf/3.2.1/../../../../arm-elf/bin/ld: address 0x 1415c8 of test section .rodata is not within region rom /src/gnutools/arm-elf/bin/../lib/gcc-lib/arm-elf/3.2.1/../../../../arm-elf/bin/ld: address 0x 1415c8 of test section .rodata1 is not within region rom /src/gnutools/arm-elf/bin/../lib/gcc-lib/arm-elf/3.2.1/../../../../arm-elf/bin/ld: address 0x 1415c8 of test section .fixup is not within region rom /src/gnutools/arm-elf/bin/../lib/gcc-lib/arm-elf/3.2.1/../../../../arm-elf/bin/ld: address 0x 1415c8 of test section .gcc_except_table is not within region rom /src/gnutools/arm-elf/bin/../lib/gcc-lib/arm-elf/3.2.1/../../../../arm-elf/bin/ld: address 0x 212478 of test section .bss is not within region ram collect2: ld returned 1 exit status make: *** [test] Ошибка 1 помогите, плз, кто встречался с подобными ошибками!!! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
v_shamaev 0 1 апреля, 2008 Опубликовано 1 апреля, 2008 · Жалоба Собираем httpd-сервер на основе eCos. Контроллер AT91SAM7x256. В качестве основы взята конфигурация eCos - NET. Следующая ошибка встертилась: 1) при попытке собрать тесты (причём и в других конфигурациях тоже встречалась не раз). Пришлось в мэйкфайле закомментировать те тесты, на которые ругался make, убрать standalone stack, lwip stack, урезать размеры некоторых буферов... В общем кое-как тесты собрались 2) при компиляции сервера после устранения всех ошибок возникла та же ошибка: /src/gnutools/arm-elf/bin/../lib/gcc-lib/arm-elf/3.2.1/../../../../arm-elf/bin/ld: address 0x 1415c8 of test section .rodata is not within region rom /src/gnutools/arm-elf/bin/../lib/gcc-lib/arm-elf/3.2.1/../../../../arm-elf/bin/ld: address 0x 1415c8 of test section .rodata1 is not within region rom /src/gnutools/arm-elf/bin/../lib/gcc-lib/arm-elf/3.2.1/../../../../arm-elf/bin/ld: address 0x 1415c8 of test section .fixup is not within region rom /src/gnutools/arm-elf/bin/../lib/gcc-lib/arm-elf/3.2.1/../../../../arm-elf/bin/ld: address 0x 1415c8 of test section .gcc_except_table is not within region rom /src/gnutools/arm-elf/bin/../lib/gcc-lib/arm-elf/3.2.1/../../../../arm-elf/bin/ld: address 0x 212478 of test section .bss is not within region ram collect2: ld returned 1 exit status make: *** [test] Ошибка 1 помогите, плз, кто встречался с подобными ошибками!!! Так прямо же написано - не влезает в память. Если лень собирать тесты по-одному - поправьте ld-скрипт, подкиньте памяти - оно все и соберется. Только вот пускать те тесты, которые не вмещаются в память не надо. P.S. Для какой модели памяти собирали eCos? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ZAA 0 1 апреля, 2008 Опубликовано 1 апреля, 2008 · Жалоба Так прямо же написано - не влезает в память. Если лень собирать тесты по-одному - поправьте ld-скрипт, подкиньте памяти - оно все и соберется. Только вот пускать те тесты, которые не вмещаются в память не надо. P.S. Для какой модели памяти собирали eCos? Спасибо. Но собственно говоря, меня больше беспокоит само приложение сервера. Ему не хватает памяти процессора. Увеличили в target.ld и RAM, и ROM - приложение собралось, но elf-файл слишком много весит - 3,2 Мб, а полученный из него бинарник - 270 с лишним кБ. А памяти-то всего 64 RAM и 256 flash. Как-нибудь можно "ужать" сами экосовские библиотеки при сборке? какие пакеты можно убрать, чтоб это не нарушало впоследствии работу приложения??? Ещё раз спасибо! :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
v_shamaev 0 1 апреля, 2008 Опубликовано 1 апреля, 2008 · Жалоба Спасибо. Но собственно говоря, меня больше беспокоит само приложение сервера. Ему не хватает памяти процессора. Увеличили в target.ld и RAM, и ROM - приложение собралось, но elf-файл слишком много весит - 3,2 Мб, а полученный из него бинарник - 270 с лишним кБ. А памяти-то всего 64 RAM и 256 flash. Как-нибудь можно "ужать" сами экосовские библиотеки при сборке? какие пакеты можно убрать, чтоб это не нарушало впоследствии работу приложения??? Ещё раз спасибо! :) Единственный способ ужать - это проанализировать карту загрузки, и убрать лишнее из конфигурации. У вас случай такой - руками придется делать. Может, что из функциональности убрать - net он харчистый. При настройке запросто можно получить несобираемую конструкцию, поэтому конфиги (собираемые) лучше хранить, я обычно их нумерую, тогда можно и не запутаться. Сами сборки можно и вытирать, если место не хватает. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ZAA 0 1 апреля, 2008 Опубликовано 1 апреля, 2008 · Жалоба Единственный способ ужать - это проанализировать карту загрузки, и убрать лишнее из конфигурации. У вас случай такой - руками придется делать. Может, что из функциональности убрать - net он харчистый. При настройке запросто можно получить несобираемую конструкцию, поэтому конфиги (собираемые) лучше хранить, я обычно их нумерую, тогда можно и не запутаться. Сами сборки можно и вытирать, если место не хватает. Спасибо за совет! Завтра попробую! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
axle 0 2 апреля, 2008 Опубликовано 2 апреля, 2008 · Жалоба А памяти-то всего 64 RAM и 256 flash. 64 чего? кБ? Да при таком количестве RAM надо забыть о стеке FreeBSD. Посмотрите хотя бы на опцию CYGPKG_NET_MEM_USAGE - память выделенная для сетевого буфера. Ее значение вычисляется как (256*1024)+(CYGPKG_NET_MAXSOCKETS*1024), т.е. 272 кБ по умолчанию. Посмотрите на стек lwIP. Требования к памяти меньше, но какие точно сказать не могу, я с ним не работал. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ZAA 0 3 апреля, 2008 Опубликовано 3 апреля, 2008 · Жалоба 64 чего? кБ? Да при таком количестве RAM надо забыть о стеке FreeBSD. Посмотрите хотя бы на опцию CYGPKG_NET_MEM_USAGE - память выделенная для сетевого буфера. Ее значение вычисляется как (256*1024)+(CYGPKG_NET_MAXSOCKETS*1024), т.е. 272 кБ по умолчанию. Посмотрите на стек lwIP. Требования к памяти меньше, но какие точно сказать не могу, я с ним не работал. Все ж таки удалось собрать этот FreeBSD путем всяческих урезаний и сокращения памяти (которая в конфигурации самого стека). Собрался и тест ping. Но ethernet ведет себя очень странно. Наверняка это из-за наших ухищрений происходит. 2 нижние лампочки моргают одновременно с периодичностью где-то в секунду, при этом Link вообще мелькает с большой частотой. Ну и не пингуется ничего соответственно. С чем именно может быть связана такое неправильное поведение ethernet'а??? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться