官方的编译指南参见《README》的第二段“How to Build”,已经是比较详细了,我们这里再详细一些。
- 从 http://www.python.org 下载最新的 Python 2.7 Windows installer,一路 Next 安装之。这里注意将 Python 的路径加入 %PATH% 环境变量,是要 cmd - python 没有报错就 ok 了。
- 安装 SCons, 有多种方法:normal SCons、scons-local、scons-src 及 Windows 安装包。当然是第四种最最方便,下载路径为 http://prdownloads.sourceforge.net/scons/scons-2.0.1.win32.exe。在 Windows 7 下安装的时候,注意用“以管理员身份运行”。以此方法 SCons 将被安装到 C:\Python27\Lib\site-packages\scons-2.0.1 中。此外还需要为 SCons 添加环境变量:
SCONS_DIR - C:\Python27\Lib\site-packages\scons-2.0.1
- 从 http://code.google.com/p/swtoolkit 下载 swtoolkit.0.9.1.zip,直接解压即可。我这里解压到 \LibJingle5\packages\swtoolkit 目录下。
- 下载 LibJingle 的两个依赖库:expat 的 expat-2.01.tar.gz 和 srtp。srtp 需要 CVS 去获取太麻烦了,Google 很贴心的,抓了版本放到 LibJingle 的 downloads 中,我们直接下载即可,也不会出现拿错版本的问题了。
- 从官网下载 libjingle-0.5.1.zip,解压到 \LibJingle5\libjingle-0.5.1 下。
- 再把 step 4 中下载的 expat 解压到 \LibJingle5\libjingle-0.5.1\talk\third_party\expat-2.0.1;而 srtp 解压到 \LibJingle5\libjingle-0.5.1\talk\third_party\srtp。
- 对于 srtp,我们还需要将文件 \LibJingle5\libjingle-0.5.1\talk\third_party\srtp\config.hw 拷贝覆盖到 \LibJingle5\libjingle-0.5.1\talk\third_party\srtp\crypto\include\config.h。
- 在编译前,当然还要确保 MS Visual Studio 已经正确安装。
- 打开命令提示符,进入\LibJingle5\libjingle-0.5.1\talk\ 目录,键入 \LibJingle5\packages\swtoolkit\hammer.bat,回车及开始编译。
D:\LibJingle5\libjingle-0.5.1\talk>D:\LibJingle5\packages\swtoolkit\hammer.bat
scons: Reading SConscript files ...
Warning: Unable to load win32file module; using copy instead of hard linking for env.Install(). Is pywin32 present?
scons: warning: The build_dir keyword has been deprecated; use the variant_dir keyword instead.
File "D:\LibJingle5\packages\swtoolkit\site_scons\site_init.py", line 203, in BuildEnvironmentS
Conscripts
scons: done reading SConscript files.
scons: Building targets ...
________Compiling build\dbg\obj\third_party\expat-2.0.1\lib\xmlparse.obj
xmlparse.c
________Compiling build\dbg\obj\third_party\expat-2.0.1\lib\xmlrole.obj
xmlrole.c
________Compiling build\dbg\obj\third_party\expat-2.0.1\lib\xmltok.obj
xmltok.c
________Creating library build\dbg\obj\expat.lib
Install file: "build\dbg\obj\expat.lib" as "build\dbg\lib\expat.lib"
...
scons: Nothing to be done for `all_test_programs'.
scons: done building targets. - 成功编译后,生成文件位于 \LibJingle5\libjingle-0.5.1\talk\build\dbg\staging。
# '/WX', # warnings are errors另外,哪位高手对 SCons 熟悉的,能否知会大笨熊如何从 Scons 生成 MSVC 的工程?
5 条评论 :
在 64bit Windows7 下,还会有 error “fatal error C1189: #error : You cannot use 32-bit time_t (_USE_32BIT_TIME_T) with _WIN64”,解决方法参见“libjingle does not compile on Windows 7 x64”, from http://code.google.com/p/libjingle/issues/detail?id=78:
As a workaround, you can add the following line after line 62 in the "main.scons" file.
It would be read like this:
....
'HAVE_SRTP',
],
TARGET_ARCH = 'x86',
)
FYI:
《build libjingle for iphone iPhone OS platform》
最后一个提示很有用哦,多谢~
Welcome。
现在 Libjingle 项目更新频繁,没有想到我这么早写的文章还有值得借鉴的地方。
thanks!
发表评论