准备:
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