FreeBSD101: Difference between revisions
(Created page with "''note:tested on 32bit release with voipmonitor 11 sources'' Install packages pkg install libexecinfo libpcap unixODBC mysql56-client libvorbis libogg vorbis-tools gmake sub...") |
No edit summary |
||
Line 1: | Line 1: | ||
''note:tested on 32bit release with voipmonitor 11 sources'' | ''note:tested on 32bit release with voipmonitor 11 sources'' | ||
Install packages | Install packages | ||
pkg install libexecinfo libpcap unixODBC mysql56-client libvorbis libogg vorbis-tools gmake subversion wget bash libssh git mysql56-server autotools | pkg install libexecinfo libpcap unixODBC mysql56-client libvorbis libogg vorbis-tools gmake subversion wget bash libssh git mysql56-server autotools | ||
Startup mysql | Startup mysql | ||
Line 8: | Line 10: | ||
vim /var/db/mysql/my.cnf | vim /var/db/mysql/my.cnf | ||
service mysql-server start | service mysql-server start | ||
Install json-c from ports | Install json-c from ports | ||
cd /usr/ports/devel/json-c | cd /usr/ports/devel/json-c | ||
make install | make install | ||
Install snappy from ports | Install snappy from ports | ||
cd /usr/ports/archivers/snappy | cd /usr/ports/archivers/snappy | ||
make install | make install | ||
Install rrdtool from package | Install rrdtool from package | ||
pkg install rrdtool | pkg install rrdtool | ||
Download and configure voipmonitor | Download and configure voipmonitor | ||
Line 25: | Line 31: | ||
cd sniffer | cd sniffer | ||
./configure | ./configure | ||
update your files db and locate ansidecl.h in your gcc plugins and copy it to voipmonitor sources dir | update your files db and locate ansidecl.h in your gcc plugins and copy it to voipmonitor sources dir | ||
Line 30: | Line 37: | ||
locate ansidecl.h //returned /usr/local/lib/gcc48/gcc/i386-portbld-freebsd10.0/4.8.3/plugin/include/ansidecl.h | locate ansidecl.h //returned /usr/local/lib/gcc48/gcc/i386-portbld-freebsd10.0/4.8.3/plugin/include/ansidecl.h | ||
cp /usr/local/lib/gcc48/gcc/i386-portbld-freebsd10.0/4.8.3/plugin/include/ansidecl.h ansidecl.h | cp /usr/local/lib/gcc48/gcc/i386-portbld-freebsd10.0/4.8.3/plugin/include/ansidecl.h ansidecl.h | ||
Create links for default Makefile names | Create links for default Makefile names | ||
ln -s /usr/bin/c++ /usr/sbin/g++ | ln -s /usr/bin/c++ /usr/sbin/g++ | ||
ln -s /usr/local/bin/gcc48 /usr/local/bin/gcc | ln -s /usr/local/bin/gcc48 /usr/local/bin/gcc | ||
I was unable to say to ldconfig, where are my new shared files located. As a temporary workaround, I created symlinks. If you know better way, how to done it, please let me know at: petr.halounek@voipmonitor.org) | I was unable to say to ldconfig, where are my new shared files located. As a temporary workaround, I created symlinks. If you know better way, how to done it, please let me know at: petr.halounek@voipmonitor.org) | ||
Modify Makefile (remove all -ldl, rewrite json to json-c) | Modify Makefile (remove all -ldl, rewrite json to json-c) | ||
sed -i.orig s/\ \-ldl// Makefile | sed -i.orig s/\ \-ldl// Makefile | ||
sed -i.bak s/\ json/\ json-c/g Makefile | sed -i.bak s/\ json/\ json-c/g Makefile | ||
Add options for linking into Makefile after shared: cleantest $(objects) should be: | Add options for linking into Makefile after shared: cleantest $(objects) should be: | ||
${CXX} -v -Xlinker --allow-multiple-definition $(objects) ${CXXFLAGS} -o voipmonitor ${LIBS} ${LIBS_PATH} | ${CXX} -v -Xlinker --allow-multiple-definition $(objects) ${CXXFLAGS} -o voipmonitor ${LIBS} ${LIBS_PATH} | ||
Compile voipmonitor | Compile voipmonitor | ||
gmake | gmake | ||
gmake install | gmake install | ||
Create voipmonitor startup script | Create voipmonitor startup script |
Revision as of 11:12, 27 January 2015
note:tested on 32bit release with voipmonitor 11 sources
Install packages
pkg install libexecinfo libpcap unixODBC mysql56-client libvorbis libogg vorbis-tools gmake subversion wget bash libssh git mysql56-server autotools
Startup mysql
echo mysql_enable=\"YES\" >> /etc/rc.conf vim /var/db/mysql/my.cnf service mysql-server start
Install json-c from ports
cd /usr/ports/devel/json-c make install
Install snappy from ports
cd /usr/ports/archivers/snappy make install
Install rrdtool from package
pkg install rrdtool
Download and configure voipmonitor
cd /usr/src git clone https://github.com/voipmonitor/sniffer.git cd sniffer ./configure
update your files db and locate ansidecl.h in your gcc plugins and copy it to voipmonitor sources dir
/usr/libexec/locate.updatedb locate ansidecl.h //returned /usr/local/lib/gcc48/gcc/i386-portbld-freebsd10.0/4.8.3/plugin/include/ansidecl.h cp /usr/local/lib/gcc48/gcc/i386-portbld-freebsd10.0/4.8.3/plugin/include/ansidecl.h ansidecl.h
Create links for default Makefile names
ln -s /usr/bin/c++ /usr/sbin/g++ ln -s /usr/local/bin/gcc48 /usr/local/bin/gcc
I was unable to say to ldconfig, where are my new shared files located. As a temporary workaround, I created symlinks. If you know better way, how to done it, please let me know at: petr.halounek@voipmonitor.org)
Modify Makefile (remove all -ldl, rewrite json to json-c)
sed -i.orig s/\ \-ldl// Makefile sed -i.bak s/\ json/\ json-c/g Makefile
Add options for linking into Makefile after shared: cleantest $(objects) should be:
${CXX} -v -Xlinker --allow-multiple-definition $(objects) ${CXXFLAGS} -o voipmonitor ${LIBS} ${LIBS_PATH}
Compile voipmonitor
gmake gmake install
Create voipmonitor startup script
echo voipmonitor_enable=\"YES\" >> /etc/rc.conf vi /usr/local/etc/rc.d/voipmonitor
#!/bin/sh # # # PROVIDE: voipmonitor # REQUIRE: mysql # KEYWORD: shutdown # . /etc/rc.subr name=voipmonitor rcvar=voipmonitor_enable export PATH=/usr/local/bin:/usr/local/sbin:$PATH pidfile="/var/run/${name}.pid" procname="/usr/sbin/voipmonitor" start_cmd="/usr/sbin/voipmonitor --config-file=/etc/voipmonitor.conf -v1" load_rc_config $name run_rc_command "$1"
ldconfig service voipmonitor start