jrtplib编译和交叉编译

==============================================准备工作==========================================================
1.下载jrtplib,jthread
    http://research.edm.uhasselt.be/jori/jrtplib/jrtplib-3.9.1.tar.bz2  (此版本要求jthread1.3.0及以上)
    http://research.edm.uhasselt.be/jori/jthread/jthread-1.3.1.tar.gz
2.安装cmake
    http://www.cmake.org/files/v2.8/cmake-2.8.11.2.tar.gz
    tar xvf cmake-2.8.11.2.tar.gz
    cd cmake-2.8.11.2
    ./bootstrap; make; make install
==============================================X86==========================================================
1.编译jthread
    tar xvf jthread-1.3.1.tar.gz
    cd jthread-1.3.1
    cmake .
    make
    make install
    默认安装到/usr/local/lib
2.编译jrtplib
    tar xvf jrtplib-3.9.1.tar.bz2
    cd jrtplib-3.9.1
    cmake .
    make
    make install
    默认安装到/usr/local/lib

==============================================交叉编译==========================================================
1.交叉编译jthread
    cd jthread-1.3.1
    修改CMakeLists.txt
        set(VERSION 3.9.1)
        #设置目标系统,随便设置
        set(CMAKE_SYSTEM_NAME Linux)
        #设置c++编译器,如果有C代码,就设置C的
        set(CMAKE_CXX_COMPILER arm-hisiv200-linux-gnueabi-g++)
        #设置搜索路径
        set(CMAKE_FIND_ROOT_PATH "/opt/arm-hisiv200-linux" "/home/mo/jrtplib_arm")
        set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NERVER)
        set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
        set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
        #设置安装路径
        set(CMAKE_INSTALL_PREFIX "/home/mo/jrtplib_arm")
    保存好
    cmake .
    make
    make install
    库和头文件都会被安装到/home/mo/jrtplib_arm/lib,/home/mo/jrtplib_arm/include
2.交叉编译jrtplib
    步骤同上

==============================================测试==========================================================
将库和example1放到板子上运行,出现如下错误
ERROR: Can't retrieve login name
看了下代码,解决办法是:export LOGNAME=root,再运行程序

运行成功,但是设置目标地址为127.0.0.1,端口为8000,收不到自己发的数据包
原因是lo没有设置地址,ifconfig lo 127.0.0.1,再次测试,一切正常。

你可能感兴趣的:(jrtplib编译和交叉编译)