• Linux下移植pjsip,使用QT开发


    1、移植pjsip

    env:fedora14

    arm-linuc-gcc:gcc version 4.5.1 (ctng-1.8.1-FA) 

    #./configure 

    CC=arm-linux-gcc 

    CROSS_COMPILE=arm-none-linux-gnueabi- 

    --build=i386-linux 

    --prefix=/usr/local/pjsip 

    --host=arm-none-linux-gnueabi 

    --target=arm-none-linux-gnueabi 

    #make dep

    #make 

    #make install

    2、将pjsip库加载进QT工程中

    将以下库添加到pro文件中

    unix:!macx:!symbian: LIBS += -L/usr/local/pjsip/lib/ -lpjsua-arm-none-linux-gnueabi 

    -lpjsip-ua-arm-none-linux-gnueabi 

    -lpjsip-simple-arm-none-linux-gnueabi 

    -lpjsip-arm-none-linux-gnueabi 

    -lpjmedia-codec-arm-none-linux-gnueabi 

    -lpjmedia-videodev-arm-none-linux-gnueabi 

    -lpjmedia-arm-none-linux-gnueabi 

    -lpjmedia-audiodev-arm-none-linux-gnueabi 

    -lpjnath-arm-none-linux-gnueabi 

    -lpjlib-util-arm-none-linux-gnueabi 

    -lresample-arm-none-linux-gnueabi 

    -lmilenage-arm-none-linux-gnueabi 

    -lsrtp-arm-none-linux-gnueabi 

    -lgsmcodec-arm-none-linux-gnueabi 

    -lspeex-arm-none-linux-gnueabi 

    -lilbccodec-arm-none-linux-gnueabi 

    -lg7221codec-arm-none-linux-gnueabi 

    -lportaudio-arm-none-linux-gnueabi  

    -lpj-arm-none-linux-gnueabi 

    -lm 

    -luuid 

    -lnsl 

    -lrt 

    -lpthread  

    -lasound

    INCLUDEPATH += /usr/local/pjsip/include

    DEPENDPATH += /usr/local/pjsip/include

    unix:!macx:!symbian: PRE_TARGETDEPS += /usr/local/pjsip/lib/libg7221codec-arm-none-linux-gnueabi.a 

    /usr/local/pjsip/lib/libgsmcodec-arm-none-linux-gnueabi.a 

    /usr/local/pjsip/lib/libilbccodec-arm-none-linux-gnueabi.a 

    /usr/local/pjsip/lib/libmilenage-arm-none-linux-gnueabi.a 

    /usr/local/pjsip/lib/libpj-arm-none-linux-gnueabi.a 

    /usr/local/pjsip/lib/libpjlib-util-arm-none-linux-gnueabi.a 

    /usr/local/pjsip/lib/libpjmedia-arm-none-linux-gnueabi.a 

    /usr/local/pjsip/lib/libpjmedia-audiodev-arm-none-linux-gnueabi.a 

    /usr/local/pjsip/lib/libpjmedia-codec-arm-none-linux-gnueabi.a 

    /usr/local/pjsip/lib/libpjmedia-videodev-arm-none-linux-gnueabi.a 

    /usr/local/pjsip/lib/libpjnath-arm-none-linux-gnueabi.a 

    /usr/local/pjsip/lib/libpjsip-arm-none-linux-gnueabi.a 

    /usr/local/pjsip/lib/libpjsip-simple-arm-none-linux-gnueabi.a 

    /usr/local/pjsip/lib/libpjsip-ua-arm-none-linux-gnueabi.a 

    /usr/local/pjsip/lib/libpjsua-arm-none-linux-gnueabi.a 

    /usr/local/pjsip/lib/libportaudio-arm-none-linux-gnueabi.a 

    /usr/local/pjsip/lib/libresample-arm-none-linux-gnueabi.a 

    /usr/local/pjsip/lib/libspeex-arm-none-linux-gnueabi.a 

    /usr/local/pjsip/lib/libsrtp-arm-none-linux-gnueabi.a

    3、编译出错

     from ../QT_PJSIP_VOIP/qt_sip.h:3,

     from ../QT_PJSIP_VOIP/mainwindow.h:6,

     from ../QT_PJSIP_VOIP/main.cpp:2:

    /usr/local/pjsip/include/pj/config.h:1161:4: error: #error "PJ_IS_LITTLE_ENDIAN is not defined!"

    /usr/local/pjsip/include/pj/config.h:1165:4: error: #error "PJ_IS_BIG_ENDIAN is not defined!"

    解决:在config.h文件中宏定义

    #define PJ_IS_BIG_ENDIAN 0

    #define PJ_IS_LITTLE_ENDIAN 1

    这样就能编译通过了。

  • 相关阅读:
    Netty 心跳处理
    Netty 搭建 WebSocket 服务端
    Spring Boot 集成 MQTT
    Spring Boot 上传文件
    在 CentOS 7 安装 Tomcat
    神坑之 6666 端口 (默认非安全端口)
    MongoTemplate 移除 _class 字段
    在 CentOS 7 安装 RabbitMQ
    MongoDB 分片集群配置
    tensorflow学习(一)
  • 原文地址:https://www.cnblogs.com/riskyer/p/3226198.html
Copyright © 2020-2023  润新知