vs2010 下编译 libjingle 库

Libj ingle - Google Talk Voice及 P2P 的 交互操作函数库
  Libjingle是Google 提供的C++组件集,它为Google Talk的点对点通讯与语音呼叫 功能提供交互操作性。
  组件包包括了Jingle和Jingle-Audio的google实现的 源代码,它们是XMPP 标准推荐扩展。
  Google的源码发布基于Berkeley协议,也就是说你可以把它们合并到商业或非商业的软件中并发布。

准备:

  1、 python 2.7.1 

  2、libjingle库

  3、 swtoolkit

  4、 srtp

  5、scons 

  6、vs 2010

  7、windows server 2008 r2 [这是我的系统,其他系统没有测试] 

编译:

  按照ligjingle文档上的说明配置环境,vs 2010命令行编译,

      也可以按照libjingle中,main.scons说明生成vs工程,然后打开工程文件编译 

问题:

  1、 TypeError: object of type 'Dir' has no len():

    python版本的问题,可以换一个版本 

  2、 ligjingle默认scons文件没有对32位,64位进行设置(0.5.1有此问题,0.5.2已经没有此问题了)

    修改 talk目录下的main.scons,root_env加入TARGET_ARCH = 'x86',

 

root_env  =  Environment(
  tools 
=  [
    
' component_bits ' ,
    
' component_setup ' ,
    
' replace_strings ' ,
    
' talk_noops ' ,
    #
' talk_linux ' ,
  ],
  BUILD_SCONSCRIPTS 
=  components,
  DESTINATION_ROOT 
=   ' $MAIN_DIR/build ' ,
  CPPPATH 
=  [
    
' $OBJ_ROOT ' ,     # generated headers are relative to here
    
' $MAIN_DIR/.. ' ,  # TODO: how can we use GOOGLECLIENT instead ?
  ],
  CPPDEFINES 
=  [
    # Temp flag 
while  porting to hammer.
    
' HAMMER_TIME=1 ' ,
    
' LOGGING=1 ' ,

    # Feature selection
    
' FEATURE_ENABLE_SSL ' ,
    
' FEATURE_ENABLE_VOICEMAIL ' ,
    
' FEATURE_ENABLE_PSTN ' ,
    
' HAVE_SRTP ' ,
  ],
  TARGET_ARCH 
=   ' x86 ' ,
)

 

  3、 修改 talk目录下的main.scons,注释掉警告视为错误开关

 # '/WX', # warnings are errors

 

 

  4、 修改 talk目录下的main.scons,编译vs工程文件需,把注释掉的放开

  # Solution and target projects
  s = vs_env.ComponentVSSolution(
    # 'libjingle',  # Please uncomment this line if you build VS proj files.
    ['all_libraries', 'all_programs', 'all_test_programs'],
    projects = [p],
  )

 


 

 改为

  # Solution and target projects
  s = vs_env.ComponentVSSolution(
     'libjingle',  # Please uncomment this line if you build VS proj files.
    ['all_libraries', 'all_programs', 'all_test_programs'],
    projects = [p],

  ) 

  5、生成vs工程文件, visual studio cmd 进入talk目录下,执行

hammer --mode=all --vsproj 

    

     6、为了去掉下面的warning, 可以安装pywin32:

"
Warning: Unable to load win32file module; using copy instead of hard linking for env.Install().  Is pywin32 present?
"

pywin32 - Python Extensions for Windows
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值