當前位置:首頁 » 編程軟體 » freeswitch單獨編譯模塊

freeswitch單獨編譯模塊

發布時間: 2023-09-24 16:29:14

A. 如何在xshell5中編譯freeswitch源代碼

(1)使用安裝包安裝

Windows用戶可以直接下載安裝文件,然後根據自己的系統選擇不同目錄,32位系統的用戶選擇x86目錄,64位系統的用戶選擇x64目錄。freeswitch.msi是最新的安裝程序,一般隔幾天就會更新一次版本。筆者的測試環境是32位的Windows XP,下載界面如圖3-3所示

如同安裝其他程序一樣,我們全部選擇默認設置即可,也就是說只要連續單擊「Next」按鈕就能安裝完畢。安裝完成後選擇」開始菜單」→「所有程序」→「FreeSWITCH」→ 「FreeSWITCH」便可以啟動FreeSWITCH了,啟動後的界面如圖3-4所示。

如果安裝過程中你沒有修改默認安裝路徑的話,那麼FreeSWITCH的實際安裝路徑是:c:\Program Files\FreeSWITCH,配置文件在該目錄的conf目錄下

(2)從源代碼安裝

如果從源代碼安裝,則首先要下載源代碼。

除此之外,也可以Git倉庫獲取源代碼。Git是FreeSWITCH使用的版本控制工具,從Git倉庫獲取源代碼的好處是可以隨時更新,並可以很方便地切換到不同的代碼分支,甚至「倒回」到任意提交點。

如果從Git倉庫獲取源代碼,需要先在Windows上安裝Git。

安裝Git很簡單,一般來說雙擊安裝文件並連續單擊「Next」按鈕即可安裝完畢。不過,在Windows平台編譯FreeSWITCH有幾個要注意的事情,因此在安裝Git的過程中我們也需要注意以下問題,並做適當的選擇:

將FreeSWITCH的源代碼放到一個「干凈」的目錄下。為避免有時候遇到奇怪的問題,最好把代碼放到一個比較不容易出問題的目錄下,如可以放到
C:\src\freeswitch 或D:\src\freeswitch下,這兩個都是比較好的目錄。而像 C:\My
Documents(有空格)或C:\源代碼中文目錄\freeswitch(有中文)之類的則在編譯或使用時可能會有問題。

B. CentOS7下FreeSwitch1.8源碼安裝過程完整記錄

1、yum 安裝相關的依賴包

yum install -y git gcc-c++ wget alsa-lib-devel autoconf automake bison broadvoice-devel bzip2 curl-devel db-devel e2fsprogs-devel flite-devel g722_1-devel gdbm-devel gnutls-devel ilbc2-devel ldns-devel libcodec2-devel libcurl-devel libedit-devel libidn-devel libjpeg-devel libmemcached-devel libogg-devel libsilk-devel libsndfile-devel libtiff-devel libtheora-devel libtool libvorbis-devel libxml2-devel lua-devel lzo-devel mongo-c-driver-devel ncurses-devel net-snmp-devel openssl-devel opus-devel pcre-devel perl perl-ExtUtils-Embed pkgconfig portaudio-devel postgresql-devel python26-devel python-devel soundtouch-devel speex-devel sqlite-devel unbound-devel unixODBC-devel libuuid-devel which yasm zlib-devel

2、安裝 mod_shout 模塊以支持 mp3 格式

yum install -y libshout-devel lame-devel libmpg123-devel

wget http://downloads.sourceforge.net/project/lame/lame/3.99/lame-3.99.5.tar.gz

tar -zxvf lame-3.99.5.tar.gz

cd lame-3.99.5

./configure --enable-static --enable-shared

make

make install

vi /etc/ld.so.conf

#換行加入:/usr/local/lib

#保存退出 :wq

ldconfig

3、安裝 cmake

yum remove cmake

wget https://cmake.org/files/v3.14/cmake-3.14.0.tar.gz

tar vzxf cmake-3.14.0.tar.gz

cd cmake-3.14.0

./configure

make

make install

4、 安裝 libks

yum install libatomic

git clone https://github.com/signalwire/libks.git

cd libks

cmake .

make

make install

5、安裝 signalwire-c

git clone https://github.com/signalwire/signalwire-c.git

cd signalwire-c/

cmake .

make

make install

ln -sf

/usr/local/lib64/pkgconfig/signalwire_client.pc

/usr/lib64/pkgconfig/signalwire_client.pc

6、下載並安裝 freeswitch1.8

如下 git 為國內址,速度較快,也可以從官方下載源碼

git clone -b v1.8 https://git.oschina.net/nwaycn/freeswitch.git

./bootstrap.sh -j

./configure --enable-portable-binary

--prefix=/usr/local/freeswitch

--with-gnu-ld --with-python --with-openssl

--enable-core-odbc-support --enable-zrtp

--enable-libmp3lame

make

make -j install

如下安裝語音文件,用時會較長

make -j cd-sounds-install

make -j cd-moh-install

7、安裝後的一些操作

設置全局命令軟連接

ln -sf /usr/local/freeswitch/bin/freeswitch /usr/bin/

ln -sf /usr/local/freeswitch/bin/fs_cli /usr/bin/

禁用 freeswitch 上 ipv6

mv external-ipv6.xml external-ipv6.xml.inactive

mv internal-ipv6.xml internal-ipv6.xml.inactive

8、啟動 freeswitch

freeswitch -nc #後台啟動

freeswitch 常用命令

#列出 internal SIP Profile 的狀態

sofia status profile internal

#列出某個 Profile 上所有已注冊用戶

sofia status profile internal reg

#過濾某些符合條件

sofia status profile internal reg 1000

sofia status profile internal user 1000

#列出網關狀態

sofia status gateway gw1

#以上命令都可以將 status 用 xmlstatus 來代替,以列出 XML 格式的狀態,這樣比較容易用

於其他程序解析

#啟動、停止、重啟某個 Profile 的命令

sofia profile internal start #啟動

sofia profile internal stop #停止

sofia profile internal restart #重啟

#有時候修改了某個 Profile 的某個參數,不需要重啟(重啟是影響通話的),可以使用下列

命令讓 FreeSWITCH 重讀 sofia 的配置

#注意並不是所有的參數都能生效

sofia profile internal rescan

#添加了一個新的 gateway 以後,也可以使用 rescan 指令讀取

sofia profile external rescan

#如果是修改了一個網關,則可以先刪除該網關,再 rescan

sofia profile external killgw gw1

sofia profile external rescan

#下列命令可以指定某個網關立即向外注冊或注銷

sofia profile external register gw1

sofia profile external unregister

#開啟該 Profile 的 SIP 跟蹤功能抓 SIP 包

sofia profile internal siptrace on

#有時候,希望將已經注冊的用戶清理掉,可以使用如下命令,注意此命令只是臨時清理,

客戶端重新注冊的話還是可以注冊成功的

sofia profile internal flush_inbound_reg [email protected]

#也可以根據 call-id 來清理

sofia profile internal reg 1000 #通過此命令查找到 call-id 的值

sofia profile flush_inbound_reg zsfsdfhdfgdfsdfsdfsdfsdf #清除 call-id=zsfsdfhdfgdfsdfsdfsdfsdf 的用戶

C. freeswitch下載--安裝--配置

configure只是檢查你的環境是否滿足編譯條件,然後生成makefile

你的configure提示你不滿足編譯條件,你自然無法make
它提示你沒裝C編譯器
先輸入
$su
$yum install gcc

把gcc裝了試試看吧

可能還會有其他包依賴關系不滿足,缺什麼就裝什麼吧

熱點內容
禮儀講話腳本大全視頻 發布:2024-11-18 20:17:44 瀏覽:709
c語言通訊錄程序設計 發布:2024-11-18 19:35:21 瀏覽:98
微信下載的圖片在哪個文件夾 發布:2024-11-18 19:23:06 瀏覽:358
我的世界查伺服器ip地址 發布:2024-11-18 19:23:04 瀏覽:212
電腦加裝存儲硬碟不影響速度吧 發布:2024-11-18 19:21:52 瀏覽:693
伴生氣壓縮機 發布:2024-11-18 19:21:40 瀏覽:878
javalinux環境變數設置 發布:2024-11-18 19:20:58 瀏覽:843
按存取方式來分主存儲器 發布:2024-11-18 19:20:55 瀏覽:223
安卓屏幕如何升級 發布:2024-11-18 19:01:19 瀏覽:479
磁碟密碼在哪裡看到 發布:2024-11-18 19:01:16 瀏覽:885