工作中需要实现实时视频传输,因此下载了live555的原码,并且在Ubuntu 12.04.1 LTS下编译成功,移植步骤如下:
一、添加配置文件
1. 先拷贝config.linux文件至config.ubuntu
cp config.linux config.ubuntu
2.修改配置文件config.ubuntu
将CPLUSPLUS_COMPILER = c++改为CPLUSPLUS_COMPILER = g++
将LINK = c++ -o 改为LINK = g++ -o
二、安装g++
sudo apt-get install g++
三、编译
1.live555提供了config.linux配置文件因此我先试是否能直接编译
结果出现以下错误:
c++ -c -Iinclude -I../UsageEnvironment/include -I../groupsock/include -I. -O2 -DSOCKLEN_T=socklen_t -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 -Wall -DBSD=1 Media.cpp
make[1]: c++:命令未找到
2.原配置文件不能直接用,所以先拷贝一个再修改
将LINK = c++ -o 改为LINK = gcc -o
./genMakefiles ubuntu
make
结果出现以下错误:
gcc -c -Iinclude -I../UsageEnvironment/include -I../groupsock/include -I. -O2 -DSOCKLEN_T=socklen_t -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 -Wall -DBSD=1 Media.cpp
gcc: error trying to exec 'cc1plus': execvp: 没有那个文件或目录
3.C++代码还是要用g++,唉我这个一直只会用c语言的还以为gcc万能呢
将CPLUSPLUS_COMPILER = gcc改为CPLUSPLUS_COMPILER = g++
将LINK = gcc -o 改为LINK = g++ -o
再来
./genMakefiles ubuntu
make
结果出现以下错误:
g++ -c -Iinclude -I../UsageEnvironment/include -I../groupsock/include -I. -O2 -DSOCKLEN_T=socklen_t -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 -Wall -DBSD=1 Media.cpp
make[1]: g++:命令未找到
4.笨蛋你都没用过g++,赶紧装上
sudo apt-get install g++
我再来
./genMakefiles ubuntu
make
啊哈哈!!!大功告成!