1. 移植到DM6446开发板
1)下载oRTP源码: http://download.savannah.gnu.org.sixxs.org/releases/linphone/ortp/sources/
| 我们用最新的版本ortp-0.20.0.tar.gz | 22-Feb-2012 16:22 | 503K |
2)库文件编译解压到 /opt/ortp-0.20.0进入主目录:cd /opt/ortp-0.20.0执行如下命令:
a ) ./configure --prefix=/opt/ortp --host= arm-montavista-linux --disable-staticCC=arm_v5t_le-gcc
b)makec)makeinstall 注:执行make时程序报错我们把文件/ortp-0.20.0/src/b64.c 中209-212行注释掉即可#ifndef__WATCOMC__// assert(characters[0] >= 0&& characters[0] < 64);// assert(characters[1] >= 0&& characters[1] < 64);// assert(characters[2] >= 0 &&characters[2] < 64);// assert(characters[3] >= 0 &&characters[3] < 64);#endif /*__WATCOMC__ */ 完成后在/opt/ortp目录下生成文件夹
3)复制头文件和库文件a) 把 include下的ortp文件夹拷贝到/mv_pro_4.0/montavista/pro/devkit/arm/v5t_le/lib/gcc/armv5tl-montavista-linuxeabi/3.4.3/include文件夹下,注意:是将整个ortp文件下一起拷贝,如果只拷贝里面的.h文件,在程序编译时会报错。
b) 把lib文件夹里边的除文件夹pkgconfig以外的文件拷贝到/opt/mv_pro_4.0/montavista/pro/devkit/arm/v5t_le/armv5tl-montavista-linuxeabi/lib
c) 为了能在DM6446平台上运行程序,需要把库文件和头文件拷贝到嵌入式文件系统中。分别拷贝到usrlib和usrinclude中。 到此ortp的交叉编译环境移植成功。
2. 移植到linux PC机进入主目录:cd /opt/ortp-0.20.0执行如下命令:a)./configureb)makec)makeinstall装好以后系统环境如下,静态动态库安装到了/usr/local/lib目录下,包括libortp.la、libortp.so libortp.so.8 libortp.so.8.0.0。头文件在/usr/local/include目录ortp目录下。库文件复制到/usr/lib文件夹下,头文件复制到/usr/include下。3. 程序编译与测试1) PC端程序编译gcc rtp rtprecv.c–o rtprecv –lortp编译接收端程序2) ARM端程序编译arm_v5t_le-gcc rtpsend.c –o rtpsend_arm –lortp 编译ARM端发送程序3) 测试分别在PC端运行./rtprecv test 5000在ARM端运行 ./rtpsend_arm test10.108.20.26 5000可完成从ARM端发送文件test到PC端。