【Intel Galileo:3】sip server をいれる。 (cross compile)
Sip Serverにしてみようと、思いついてできたので、記録。
partysip-2.2.3
(wget http://download.savannah.gnu.org/releases/partysip/partysip-2.2.2.tar.gz)
libosip2-2.2.2
(wget http://ftp.gnu.org/gnu/osip/libosip2-2.2.2.tar.gz)
VM は、前回作成したものを使用。
libosipのmake
cross compile する。
インストールは、自分のディレクトリの中。
source /opt/clanton-tiny/1.4.2/environment-setup-i586-poky-linux-uclibc ./configure $CONFIGURE_FLAGS --prefix=/home/guutara/libosip2-2.2.2/local make make install
確認。
guutara@gtr01:~/libosip2-2.2.2$ ls local/* local/include: osip2 osipparser2 local/lib: libosip2.a libosip2.so libosip2.so.3.0.0 libosipparser2.la libosipparser2.so.3 pkgconfig libosip2.la libosip2.so.3 libosipparser2.a libosipparser2.so libosipparser2.so.3.0.0 local/man: man1
partysipのmake
cross compile する。
一度、Terminalを閉じて、新しいセッションで作業する。
インストールは、/partysipを作成してそこに。
sudo mkdir partysip sudo chmod 0777 /partysip source /opt/clanton-tiny/1.4.2/environment-setup-i586-poky-linux-uclibc ./configure --build=i686-linux --host=i586-poky-linux-uclibc CPPFLAGS="-I/home/guutara/libosip2-2.2.2/local/include" LDFLAGS="-L/home/guutara/libosip2-2.2.2/local/lib" LIBS="-losipparser2" --prefix=/partysip make make install
確認。
guutara@gtr01:~/partysip-2.2.3$ ls -l /partysip/*/partysip/bin: 合計 432 -rwxr-xr-x 1 guutara guutara 406080 1月 29 16:31 partysip -rwxr-xr-x 1 guutara guutara 3994 1月 29 16:31 partysip-config -rwxr-xr-x 1 guutara guutara 27162 1月 29 16:31 psp_users /partysip/etc: 合計 4 drwxr-xr-x 2 guutara guutara 4096 1月 29 16:31 partysip /partysip/include: 合計 8 drwxr-xr-x 2 guutara guutara 4096 1月 29 16:31 partysip drwxr-xr-x 2 guutara guutara 4096 1月 29 16:31 ppl /partysip/lib: 合計 208 -rw-r--r-- 1 guutara guutara 110034 1月 29 16:31 libppl.a -rwxr-xr-x 1 guutara guutara 966 1月 29 16:31 libppl.la lrwxrwxrwx 1 guutara guutara 15 1月 29 16:31 libppl.so -> libppl.so.2.2.3 lrwxrwxrwx 1 guutara guutara 15 1月 29 16:31 libppl.so.2 -> libppl.so.2.2.3 -rwxr-xr-x 1 guutara guutara 90663 1月 29 16:31 libppl.so.2.2.3 drwxr-xr-x 2 guutara guutara 4096 1月 29 16:31 partysip
それぞれを、tarで、固める。
guutara@gtr01:~$ tar czf libosip2-2.2.2.tar.gz libosip2-2.2.2/local
guutara@gtr01:~$ tar czf partysip.tar.gz /partysip
あとは、VMから一旦、HOSTへscpして、Gallileoに、SCPする。
SD Linuxにインストール
SD Linux には、ldconfigはない。
Link時に、パスを埋め込んでいない場合は、/usr/libの配下に置けば認識する。
libosipの設置
root@clanton:~# tar zxf libosip2-2.2.2.tar.gz root@clanton:~# cp -r libosip2-2.2.2/local/lib/* /usr/lib/ root@clanton:~# ls -l libosip2-2.2.2/local/lib/ -rw-r--r-- 1 1000 1000 350926 Jan 29 2014 libosip2.a -rwxr-xr-x 1 1000 1000 896 Jan 29 2014 libosip2.la lrwxrwxrwx 1 root root 17 Jan 1 00:14 libosip2.so -> libosip2.so.3.0.0 lrwxrwxrwx 1 root root 17 Jan 1 00:14 libosip2.so.3 -> libosip2.so.3.0.0 -rwxr-xr-x 1 1000 1000 237274 Jan 29 2014 libosip2.so.3.0.0 -rw-r--r-- 1 1000 1000 586532 Jan 29 2014 libosipparser2.a -rwxr-xr-x 1 1000 1000 881 Jan 29 2014 libosipparser2.la lrwxrwxrwx 1 root root 23 Jan 1 00:14 libosipparser2.so -> libosipparser2.so.3.0.0 lrwxrwxrwx 1 root root 23 Jan 1 00:14 libosipparser2.so.3 -> libosipparser2.so.3.0.0 -rwxr-xr-x 1 1000 1000 415038 Jan 29 2014 libosipparser2.so.3.0.0 drwxr-xr-x 2 1000 1000 1024 Jan 1 00:14 pkgconfig root@clanton:~# ls -l /usr/lib/libosip* -rw-r--r-- 1 root root 350926 Jan 1 00:15 /usr/lib/libosip2.a -rwxr-xr-x 1 root root 896 Jan 1 00:15 /usr/lib/libosip2.la lrwxrwxrwx 1 root root 17 Jan 1 00:15 /usr/lib/libosip2.so -> libosip2.so.3.0.0 lrwxrwxrwx 1 root root 17 Jan 1 00:15 /usr/lib/libosip2.so.3 -> libosip2.so.3.0.0 -rwxr-xr-x 1 root root 237274 Jan 1 00:15 /usr/lib/libosip2.so.3.0.0 -rw-r--r-- 1 root root 586532 Jan 1 00:15 /usr/lib/libosipparser2.a -rwxr-xr-x 1 root root 881 Jan 1 00:15 /usr/lib/libosipparser2.la lrwxrwxrwx 1 root root 23 Jan 1 00:15 /usr/lib/libosipparser2.so -> libosipparser2.so.3.0.0 lrwxrwxrwx 1 root root 23 Jan 1 00:15 /usr/lib/libosipparser2.so.3 -> libosipparser2.so.3.0.0 -rwxr-xr-x 1 root root 415038 Jan 1 00:15 /usr/lib/libosipparser2.so.3.0.0
partysipの設置。
patysipは、plugin,confの位置を、Link時のprefixから埋め込んでいる。
root@clanton:~# cd / root@clanton:/# ls bin dev home lost+found mnt proc sketch tmp var boot etc lib media opt sbin sys usr root@clanton:/# tar zxf ~/partysip.tar.gz root@clanton:/# ls bin dev home lost+found mnt partysip sbin sys usr boot etc lib media opt proc sketch tmp var root@clanton:/# ls bin dev home lost+found mnt proc sketch tmp var boot etc lib media opt sbin sys usr root@clanton:/# tar zxf ~/partysip.tar.gz root@clanton:/# ls bin dev home lost+found mnt partysip sbin sys usr boot etc lib media opt proc sketch tmp var root@clanton:/# cd partysip/ root@clanton:/partysip# ls bin etc include lib
起動
confの設定をする。
vi etc/partysip/partysip.conf serverip = 10.29.58.65, 127.0.0.1 ### When dynamic_ip is set to "on", then the ip is reloaded periodically. ### # dynamic_ip = on ### ### enable IPv6 support. (IPv4 should be fully functionnal anyway) ### # serverip6 = fe80::240:f6ff:fe74:7a75, ::1 # enable_ipv6 = on ### ### servername must be edited. ### ### Please give the list of all FQDNs of your host separated by commas. servername = 10.29.58.65, 127.0.0.1 serverport_udp = 5060 # transport protocol: udp/tcp/sctp # UDP: ok # TCP: not supported (please contribute!) # SCTP: supported only in previous release (0.X.X) # You can port the old plugin which can be found at: # http://osip.atosc.org/download/partysip/sctp_plugin-0.5.4.tar.gz transport = udp
起動する。
root@clanton:/partysip# cd bin root@clanton:/partysip/bin# ./partysip -d 6 -l /var/log/partysip.log & [2] 1500 [1] Done(127) partysip -d 6 -l /var/log/partysip.log root@clanton:/partysip/bin# DEBUG: [get_output_if] connect: Network is unreachable Default Gateway Interface detection failed. Please define "serverip" in the config file Server: WellX Telecom/Partysip/2.2.3 Debug level: 6 Config name: /partysip/etc/partysip/partysip.conf ServerIP: (IPv4) 10.29.58.65, 127.0.0.1 ServerName: 10.29.58.65, 127.0.0.1 ServerRealm: '"wellx.org"' Log name: /var/log/partysip.log
テスト
Telephone-1.0.4 を使ってテストしてみる。
こんな感じで、設定した。
つなぐと、サーバのLogでちゃんと、登録されたのがわかる。
SIP/2.0 200 OK Via: SIP/2.0/UDP 10.29.58.64:60307;rport=60307;branch=z9hG4bKPjEW8qqlYKAuQZ2sEjPvsax80dK6.dL3Sy From: "ms@10.29.58.64" <sip:guutara@10.29.58.65>;tag=d1HhsWxSCMU8DoWwNQvkwcTOvCjSa1y4 To: "ms@10.29.58.64" <sip:guutara@10.29.58.65>;tag=151861976 Call-ID: hE5aAYbvuk3KIFUHa0M9WFGrKcFqcfKZ CSeq: 65357 REGISTER Contact: "guutara@10.29.58.64" <sip:guutara@10.29.58.64:60307;ob>;expires=300 Content-Length: 0
つぎは
全然、センサーとかいじってないけど。。
いいのかこれで。。 (´・ω・`)