2012-05-03 26 views
0

我目前正在使用Atmel AT91SAM9260評估板(帶有多個外設的基於ARM的微控制器)實現一個簡單的tcp/ip服務器。如何將lwIP原始源代碼添加到我的項目中?

Atmel提供的一些示例包括基於uIP的Web服務器,但uIP無法處理所需的吞吐量。

我發現基於版本1.1.1(或略高於)的同樣的例子,剛剛服務我。

最近我開始有堆棧問題,我無法找到一個端口到AT91SAM9260與新版本的lwIP。爲了構建這個項目,我使用Eclipse + Yagarto + gcc作爲開發堆棧。

將我最新版本1.4.0(可在http://download.savannah.gnu.org/releases/lwip/)的源代碼替換到我的項目並試圖修復所有編譯錯誤後,我放棄了。

源代碼的結構非常相似,但顯然有太多的調整。

是否有關於將原始源代碼適配到我的堆棧的具體指南? C++代碼是不是應該在我的堆棧上編譯?

+0

你應該嘗試一下,這裏就不問了。 – bmargulies

+0

我確實嘗試過,而且我不會編譯。我會改善這個問題。 – Jonas

回答

1

在LwIP http://lwip.wikia.com/wiki/Projects_that_use_lwIP的wiki中,我確實看到了LwIP 1.3.0貢獻端口的參考。這可能是一個起點,至少對於ethernetif.c文件來說。

要嘗試回答第二個問題:在C(不是C++)應該編譯,但人們仍然有(至少):

  • 設置lwipopts.h確定了LwIP是如何被使用
  • 提供ethernetif.h/ethernetif.c到您的硬件綁LwIP的
  • 設置sys_arch.h/sys_arch.c
相關問題