$lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 14.04.2 LTS
Release: 14.04
Codename: trusty
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 12.04.4 LTS
Release: 12.04
Codename: precise
sudo apt-get install gcc g++
sudo apt-get install autoconf automake libtool m4 make
sudo apt-get install pkg-config
sudo apt-get install subversion git
-
python:2.7.6
-
perl:5.18.2
-
bash:
-
ruby:qtwebkit编译需要
sudo apt-get install ruby build-essential perl python
sudo apt-get install yasm
sudo apt-get install dh-make debhelper
- qmake
- uic
- rcc
- lrelease
- lupdate
sudo apt-get install bison flex gperf
sudo apt-get install icu-devtools
sudo apt-get install wget
cd /home
wget http://www.cmake.org/files/v3.1/cmake-3.1.0-Linux-x86_64.tar.gz
tar xf cmake-3.1.0-Linux-x86_64.tar.gz
mv cmake-3.1.0-Linux-x86_64 cmake
export PATH=/home/cmake/bin:$PATH
sudo apt-get install libvpx-dev
sudo apt-get install libavcodec-dev libavformat-dev libavutil-dev libswscale-dev
sudo apt-get install libopencv-dev
安装opencv时,会自动安装ffmpeg库
sudo apt-get install libspeex-dev libspeexdsp-dev
sudo apt-get install libssl-dev
sudo apt-get install libcurl4-openssl-dev
sudo apt-get install libqrencode-dev
从 http://pan.baidu.com/s/1hqAINHy 下载linux操作系统的预编译的第三方库,并解压到 ${RABBITRoot}/ThirdLibrary 下。
cd ${RABBITRoot}/ThirdLibrary
7z x ThirdLibrary_linux.7z
修改前缀
cd ${RABBITRoot}/ThirdLibrary/unix
cp ${RABBITRoot}/ThirdLibrary/build_script/change_prefix.sh ${RABBITRoot}/ThirdLibrary/unix/change_prefix.sh
cd ${RABBITRoot}/ThirdLibrary/unix
./change_prefix ${old_prefix} ${new_prefix} #old_prefix是原来的前缀,你可打开一个配置文件查看;
#new_prefix可以省略,省略时用当前目录
如果没有你主机操作系统相同的预编译第三方库,或者你用着出错时,那你需要自己编译第三方依赖库。
编译脚本:
- build.sh unix [source_code_directory] : 编译第三方库脚本
- build_envsetup_unix.sh: 设置编译时需要的变量
- build_XXX.sh unix [source_code_directory] : 编译指定的 XXX 第三方库脚本
环境变量说明:
- QT_ROOT= #qt的安装位置,默认为:${RABBITRoot}/ThirdLibrary/unix/qt
- BUILD_JOB_PARA="-j
cat /proc/cpuinfo |grep 'cpu cores' |wc -l
" #make 同时工作进程参数,建议设置为你机器CUP个数 - RABBIT_BUILD_STATIC="static" #设置编译静态库,注释掉,则为编译动态库
- RABBIT_USE_REPOSITORIES="FALSE" #下载指定的压缩包。省略,则下载开发库。
- RABBIT_CLEAN=TRUE #编译前清理
编译所有依赖的第三方库:
cd ${RABBITRoot}/ThirdLibrary/build_script
./build.sh unix [source_code_directory]
或者只编译其中一个库,例如:libvpx
cd ${RABBITRoot}/ThirdLibrary/build_script
./build_libvpx.sh unix [source_code_directory]
-
openssl:
-
Libxcb:
sudo apt-get install "^libxcb.*" libx11-xcb-dev libxrender-dev libxi-dev
-
libicu:(qtwebkit需要)
sudo apt-get install libicu-dev
-
opengl
sudo apt-get install build-essential sudo apt-get install mesa-common-dev libglu1-mesa-dev
-
libasound2、libgstreamer
sudo apt-get install libasound2-dev sudo apt-get install libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev
-
libfontconfig (需要这个库才能用系统字体,会调用系统 freetype,否则会调用qt自己的freetype。qt自己的freetype字体不含中文)
sudo apt-get install libfontconfig1-dev
-
编译
cd ${RABBITRoot}/ThirdLibrary/build_script ./build_qt.sh unix [source_code_directory]
cd ${RABBITRoot}/ThirdLibrary/build_script
./build_qxmpp.sh unix [source_code_directory]