转自:http://blog.csdn.net/feifei454498130/article/details/8197103
添加依赖库:
sudo apt-get install build-essential expat libexpat1-dev libssl-dev pkg-config
sudo apt-get install libssl-dev
sudo apt-get install libpulse-dev
sudo apt-get install libdbus-glib-1-dev
sudo apt-get install libgtk2.0-dev libgnome2-dev
sudo apt-get install libasound2-dev
1、 Python 2.4+ 因为swtoolkit只能工作在Python 2.x版本, 所以不能安装Python 3.x版本.
2、libjingle库 libjingle-0.6.6 http://code.google.com/p/libjingle/
3、 swtoolkit: swtoolkit.0.9.1 http://code.google.com/p/swtoolkit/
4、 srtp: http://libjingle.googlecode.com/files/srtp-cvs.zip
解压到libjingle/talk/third_party/srtp
5、scons : scons-2.0.1-1
解压到libjingle目录下新建scons-local
6、gtest:http://code.google.com/p/googletest/downloads/list
解压到libjingle/talk/third_party/gtest/
7、expat-2.0.1: http://sourceforge.net/projects/expat/files/expat/2.0.1/expat-2.0.1.tar.gz
解压到libjingle/talk/third_party/expat-2.0.1/
以上准备完了:
export PATH_TO_SWTOOLKIT=解压后swtoolkit.0.9.1 的目录位置
运行 talk/third_party/expat-2.0.1/configure 与 talk/third_party/srtp/configure.
常见编译错误:
有些库没安装,根据英文提示然后apt-get install 就可以了
./main.scons 将-Werror注释
./talk/session/phone/v4llookup.cc 添加头文件 #include <unistd.h>
./talk/base/openssladapter.cc 添加头文件 #include <unistd.h>
build/dbg/lib/libvideorenderer.a(gtkvideorenderer.o): In function `GtkVideoRenderer':
/share/Vendors/libjingle-0.6.6/talk/session/phone/gtkvideorenderer.cc:53:undefined reference to `g_thread_init'
collect2: ld returned 1 exit status
---g_thread_init 在 gthread-2.0 库中,在 pkg-config 中除了 gtk+-2.0 之外还需要加上 gthread-2.0 一项。
修改文件libjingle.scons
talk.Library(env, name = "videorenderer",
lin_srcs = [
"session/phone/gtkvideorenderer.cc",
],
lin_packages = [
"gtk+-2.0",
"gthread-2.0", //增加
],
)