Libupnp 1.4.1 移植到 uClinux
#############################
Libupnp 1.4.1 移植到 uClinux
#############################
1. 下載Libupnp 1.4.1(http://www.virtualworlds.de/upnp/)
2. ./configure參數如下:
#./configure --enable-debug --host=arm-elf --prefix=/root/hmc/mySigma49/RMF86-2.3.49.0_DCC.arm_0725/libupnp-1.4.1
--host:cross compiler(arm-elf-gcc)
--prefix= :等一下make install會安裝的目錄
--enable-debug:將debug功能開啟
3. #make
4.安裝library:
#make install
############################
如何在curacao中使用 Linupnp
############################
1. 確定 Libupnp 中 lib資料夾的位置(這是我的:/root/hmc/mySigma49/RMF86-2.3.49.0_DCC.arm_0725/libupnp-1.4.1/lib)
2. link upnp library :
在 RMF_src/curacao/Makefile.rmf 檔案中,加入以下敘述。
#==vin== upnp library
LDLIB = /root/hmc/mySigma49/RMF86-2.3.49.0_DCC.arm_0725/ libupnp-1.4.1/lib/libupnp.a
/root/hmc/mySigma49/RMF86-2.3.49.0_DCC.arm_0725/ libupnp-1.4.1/lib/libthreadutil.a /root/hmc/mySigma49/RMF86-2.3.49.0_DCC.arm_0725/ libupnp-1.4.1/lib/libixml.a
LDFLAGS += $(LDLIB)
3. 我所加入有關upnp的檔案:myupnp.cpp myupnpAction.cpp
在 RMF_src/curacao/Makefile.rmf 檔案中,加入以下敘述。
search "SRC := "
加入 myupnp.cpp myupnpAction.cpp
4. 重新編譯 curacao相關檔
#################################
使用 Libupnp 所需 include 的檔案
#################################
1. 我所 include 的檔案如下:
#include "../../libupnp-1.4.1/include/upnp/upnp.h"
#include "../../libupnp-1.4.1/include/upnp/ithread.h"
#include "../../libupnp-1.4.1/include/upnp/upnptools.h"
#include "../../libupnp-1.4.1/include/upnp/ixml.h"
2. 基本上所 include的檔案需為 libupnp-1.4.1/include 中的檔案,不可直接 include /src 下的 .h 檔。
##########
Debug 相關
##########
1. IUpnpInfoFile.txt IUpnpErrFile.txt
這兩個檔會紀錄 libupnp 中的程式執行狀況。(需在 ./configure時加上 --enable-debug)
Libupnp 1.4.1 移植到 uClinux
#############################
1. 下載Libupnp 1.4.1(http://www.virtualworlds.de/upnp/)
2. ./configure參數如下:
#./configure --enable-debug --host=arm-elf --prefix=/root/hmc/mySigma49/RMF86-2.3.49.0_DCC.arm_0725/libupnp-1.4.1
--host:cross compiler(arm-elf-gcc)
--prefix= :等一下make install會安裝的目錄
--enable-debug:將debug功能開啟
3. #make
4.安裝library:
#make install
############################
如何在curacao中使用 Linupnp
############################
1. 確定 Libupnp 中 lib資料夾的位置(這是我的:/root/hmc/mySigma49/RMF86-2.3.49.0_DCC.arm_0725/libupnp-1.4.1/lib)
2. link upnp library :
在 RMF_src/curacao/Makefile.rmf 檔案中,加入以下敘述。
#==vin== upnp library
LDLIB = /root/hmc/mySigma49/RMF86-2.3.49.0_DCC.arm_0725/ libupnp-1.4.1/lib/libupnp.a
/root/hmc/mySigma49/RMF86-2.3.49.0_DCC.arm_0725/ libupnp-1.4.1/lib/libthreadutil.a /root/hmc/mySigma49/RMF86-2.3.49.0_DCC.arm_0725/ libupnp-1.4.1/lib/libixml.a
LDFLAGS += $(LDLIB)
3. 我所加入有關upnp的檔案:myupnp.cpp myupnpAction.cpp
在 RMF_src/curacao/Makefile.rmf 檔案中,加入以下敘述。
search "SRC := "
加入 myupnp.cpp myupnpAction.cpp
4. 重新編譯 curacao相關檔
#################################
使用 Libupnp 所需 include 的檔案
#################################
1. 我所 include 的檔案如下:
#include "../../libupnp-1.4.1/include/upnp/upnp.h"
#include "../../libupnp-1.4.1/include/upnp/ithread.h"
#include "../../libupnp-1.4.1/include/upnp/upnptools.h"
#include "../../libupnp-1.4.1/include/upnp/ixml.h"
2. 基本上所 include的檔案需為 libupnp-1.4.1/include 中的檔案,不可直接 include /src 下的 .h 檔。
##########
Debug 相關
##########
1. IUpnpInfoFile.txt IUpnpErrFile.txt
這兩個檔會紀錄 libupnp 中的程式執行狀況。(需在 ./configure時加上 --enable-debug)
powered by performancing firefox
4 Comments:
Hi, 您好:
請問您編譯libupnp時link的pthread library 版本是哪一版? 同時, 請問您有遇到pthread的問題嗎? 因為我在使用libupnp-1.3.1時遇到一些pthread相關的問題, 所以冒昧請教一下,謝謝您。
By 匿名, at 5:46 下午
版本應該是 LinuxThreads version 0.8
我在編譯的時後並沒有遇到pthread相關問題,要不要試試看1.4.1的版本。。。因為似乎跟1.3.1差蠻多的。
By macross, at 5:15 下午
请问你编出来的upnpd文件有多大?我编出来的略大于80K,执行upnpd ppp0 br0时没有任何反应,也不会起upnpd进程,加-f参数时提示"Segmentation fault".
我使用的是mips 32系统,配置命令:
./configure --host=mips-linux --build=mips
我使用的code version:
libupnp-1.3.1/libupnp-1.4.1
linuxigd-1.0
By jhunix, at 3:28 下午
新建upnp技术群72280129,
有兴趣的加进来。
By 匿名, at 2:05 下午
張貼留言
<< Home