Как включить исходный код lwIP в мой проект?

В настоящее время я реализую простой сервер tcp/ip, используя оценочную плату Atmel AT91SAM9260 (микроконтроллер на базе ARM с несколькими периферийными устройствами).

Некоторые примеры, приведенные Atmel, включают веб-сервер на основе uIP, но uIP не может обеспечить необходимую пропускную способность.

Я нашел тот же самый пример, основанный на версии 1.1.1 (или чуть выше), который меня вполне удовлетворил.

Недавно у меня начались проблемы со стеком и я не мог найти порт на AT91SAM9260 с более новой версией lwIP. Для сборки проекта я использую Eclipse+Yagarto+gcc в качестве стека разработки.

После простой замены исходного кода последней версии 1.4.0 (доступной по адресу http://download.savannah.gnu.org/releases/lwip/) в свой проект и пытаясь исправить все ошибки компиляции, я сдался.

Структура исходного кода очень похожа, но, видимо, нужно сделать слишком много настроек.

Есть ли конкретное руководство по адаптации исходного кода к моему стеку? Разве код C++ не должен был просто компилироваться в моем стеке?


person Jonas    schedule 03.05.2012    source источник


Ответы (1)


В вики LwIP http://lwip.wikia.com/wiki/Projects_that_use_lwIP я вижу ссылка на предоставленные порты LwIP 1.3.0. Это может быть отправной точкой, по крайней мере, для файла ethernetif.c.

Чтобы попытаться ответить на второй вопрос: предполагается, что C (не C++) компилируется, но все же необходимо (по крайней мере):

  • настройте lwipopts.h, чтобы определить, как должен использоваться LwIP
  • предоставьте ethernetif.h/ethernetif.c, чтобы привязать ваше оборудование к LwIP
  • настроить sys_arch.h/sys_arch.c
person Baard    schedule 16.03.2013