[英]Linphone compiling problems on osx
I'm trying to compile linphone on mountain lion. 我正在尝试在山狮上编译linphone。 I have downloaded the sources and followed all the instructions in the README.macos file. 我已经下载了源代码,并按照README.macos文件中的所有说明进行操作。 The first time, when I got to '$ port install ige-mac-integration' an error occurred. 第一次,当我进入“ $ port install ige-mac-integration”时,发生了错误。 It said gtk2 had to be installed with x11, however, the instructions said to install it with quartz and no_x11. 它说gtk2必须与x11一起安装,但是说明说要与石英和no_x11一起安装。 I tried installing gtk2 again, this time with x11, but when I get to the compiling process it tells me quartz is needed. 我这次尝试用x11再次安装gtk2,但是当我进入编译过程时,它告诉我需要石英。 I can't install both, because the gtk2 installation will complain about it, and it seems I need both to complete the entire process of installing and compiling linphone. 我不能同时安装这两个程序,因为gtk2安装会抱怨它,而且看来我需要两者都完成安装和编译linphone的整个过程。
I have tried these steps with the downloadable sources, as well as the git sources, both gave me the same problems. 我已经尝试过使用可下载源以及git源进行这些步骤,都给了我同样的问题。 Linphone does not have a forum, so I couldn't ask it on their site. Linphone没有论坛,所以我无法在他们的网站上提问。
I just need to get the sources and start using them, so any recommendations on how to open the linphone source, edit it, and compile/run it would be very welcome. 我只需要获取源代码并开始使用它们,因此,关于如何打开linphone源代码,对其进行编辑以及对其进行编译/运行的任何建议都将受到欢迎。 The ideal situation would be where I can just open an xcode project file. 理想的情况是我可以打开一个xcode项目文件。
This is the readme file: 这是自述文件:
**********************************
* Compiling linphone on macos X *
**********************************
You need:
- Xcode (download from apple or using appstore application)
- Macports: http://www.macports.org/
Download and install macports using its user friendly installer.
- Install build time dependencies
$ port install automake autoconf libtool intltool
- Install some linphone dependencies with macports
$ port install speex
$ port install libosip2 # WARNING: currently outdated in macport
$ port install libeXosip2 #WARNING: currently outdated in macport
$ port install ffmpeg-devel
$ port install libvpx
- Install srtp (optional) for call encryption
$ port install srtp
If that fails, get from source:
$ git clone git://git.linphone.org/srtp.git
$ cd srtp && autoconf && ./configure --prefix=/opt/local && make libsrtp.a
$ sudo make install
- Install zrtpcpp (optional), for unbreakable call encryption
$ port install cmake
$ git clone git://git.linphone.org/zrtpcpp.git
$ cd zrtpcpp && cmake -Denable_ccrtp=false . && make
$ sudo make install
- Install gtk. It is recommended to use the quartz backend for better integration.
$ port install gtk2 +quartz +no_x11
$ port install hicolor-icon-theme
- Compile and install the tunnelsu
If you got the source code from git, run ./autogen.sh first
Then or otherwise, do:
$ ./configure --prefix=/opt/local && make && sudo make install
- Compile linphone
If you got the source code from git, run ./autogen.sh first.
Then or otherwise, do:
$ ./configure --prefix=/opt/local --with-readline=/opt/local --disable-strict --disable-x11 --with-srtp=/opt/local --with-gsm=/opt/local --enable-zrtp && make
Install to /opt/local
$ sudo make install
Done.
If you want to generate a portable bundle, then install gtk-mac-bundler.
Use git:
$ git clone https://github.com/jralls/gtk-mac-bundler.git
$ cd gtk-mac-bundler && make install
$ export PATH=$PATH:~/.local/bin
#make this dummy charset.alias file for the bundler to be happy:
$ sudo touch touch /opt/local/lib/charset.alias
Then run, inside linphone source tree:
1. Run configure as told before but with "--enable-relativeprefix" appended.
$ make
$ make bundle
The resulting bundle is located in linphone build directory, together with a zipped version.
For a better appearance, you can install the gtk-quartz-engine (a gtk theme) that make gtk application more similar to other mac applications (but not perfect).
$ git clone https://github.com/jralls/gtk-quartz-engine.git
$ cd gtk-quartz-engine
$ autoreconf -i
$ ./configure --prefix=/opt/local && make
$ sudo make install
Generate a new bundle to have it included.
Below is the details to configure the dependencies and build linphone. 以下是配置依赖关系和构建linphone的详细信息。
============================================================== ================================================== ============
Step: 1:- Dependency configuration: 步骤:1:-依赖关系配置:
I just followed the instruction which is available in "README.macos" upto sqlite3 configuration. 我只是按照sqlite3配置中“ README.macos”中可用的说明进行操作。 I had some problem with dependancies configuration. 我对依赖项配置有一些问题。
Because of macport version, srtp configuration is failed. 由于macport版本,srtp配置失败。 So I have downloaded "MacPorts-2.1.3-10.8-MountainLion.pkg" and installed manually. 因此,我下载了“ MacPorts-2.1.3-10.8-MountainLion.pkg”并手动安装。
Because of GTK version, libsoup is failed. 由于GTK版本,libsoup失败。 So I have downloaded "GTK_2.18.5-X11.pkg" and installed manually. 因此,我下载了“ GTK_2.18.5-X11.pkg”并手动安装。
After the manual installation, I have followed "README.macos" again for reconfiguration. 手动安装后,我再次遵循“ README.macos”进行重新配置。
NOTE: Sometime terminal won't recognize "wget". --> Solution: just execute below command. echo 'alias wget="curl -O"' >> ~/.bash_profile
Step: 2:- Compile and Install: 步骤2:-编译并安装:
I got some problem related to intltool
while compiling. 编译时遇到一些与intltool
有关的问题。
Solution: just I set the path by executing below commands 解决方案:我只是通过执行以下命令来设置路径
export PATH=$PATH:/opt/local/bin
export MANPATH=$MANPATH:/opt/local/share/man
export INFOPATH=$INFOPATH:/opt/local/share/info
Now it is successfully compiled and installed. 现在,它已成功编译并安装。
Step: 3:- Creating bundle to run the app: 步骤:3:-创建捆绑包以运行应用程序:
Just I followed below commands to make the build. 我只是按照以下命令进行构建。
If you want to generate a portable bundle, then install gtk-mac-bundler.
Use git:
$ git clone https://github.com/jralls/gtk-mac-bundler.git
$ cd gtk-mac-bundler && make install
$ export PATH=$PATH:~/.local/bin
#make this dummy charset.alias file for the bundler to be happy:
$ sudo touch touch /opt/local/lib/charset.alias
Then run, inside linphone source tree:
1. Run configure as told before but with "--enable-relativeprefix" appended.
$ make
$ make bundle
It will create " linphone.app
" file in current linphone directory. 它将在当前linphone目录中创建“ linphone.app
”文件。 It will support only for " Mountain Lion
". 它将仅支持“ Mountain Lion
”。
Step: 4:- Support for lower version: (eg: Lion, Snow Leopard
...) 步骤:4:-支持较低版本:(例如: Lion, Snow Leopard
...)
We have to configure " libiconv hack
" to supporting for lower version 我们必须配置“ libiconv hack
”以支持较低版本
I think it will help you. 我认为它将为您提供帮助。
I wrote an answer here . 我在这里写了一个答案 。 It's a bit long but I sincerely hope it is clear enough and will help you. 它有点长,但我衷心希望它足够清楚,能为您提供帮助。 It contains the build settings and other libs you need to include. 它包含构建设置和您需要包括的其他库。 Cool stuff I didn't need to run the make
:) 很酷的东西,我不需要运行make
:)
Best, 最好,
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.