【技术应用】vs2010 下编译 libjingle 库
“每个行业都存在机会,就看你会不会寻找。而要找到这种机会,你只需找到两个人:一个是想花钱的那个人,另一个是想挣钱的那个人”
由于我朋友公司出了些问题,萌生了写一个行业信息发布平台软件的想法。
由于对整个过程没有把握, 确切的说,我是那个想挣钱的人,而我对想花钱的那个人没有把握,
那么,我就利用免费的东西做个吧。
想了好多个方案,最让我动心的是使用silverligth技术做前端,自己架设一个服务器,可是在钱途不明朗的情况下,不敢贸然买个服务器,网上又没有找到可免费或租用的服务器,此方案只能暂缓
思考筛选N多个方案后,我对gtalk感上了兴趣,google大公司的背景,我可以放心的去折腾
Libjingle - Google Talk Voice及 P2P 的交互操作函数库
准备:
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',
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工程文件需,把注释掉的放开
改为
)
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
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步