-
Notifications
You must be signed in to change notification settings - Fork 5
S2C Sandbox : Cross compile JANUS
vkebkal edited this page Jan 15, 2020
·
5 revisions
First at all you need install toolchain and repository.
Build dependency library for JANUS-C
JANUS-C depend from fftw3 library.
Download source code of fftw3 library.
$ wget http://ftp.de.debian.org/debian/pool/main/f/fftw3/fftw3_3.3.5.orig.tar.gz $ tar xvf fftw3_3.3.5.orig.tar.gz $ cd fftw-3.3.5
Setup toolchain enviroment.
$ . /usr/local/oecore-i686/environment-setup-armv5te-angstrom-linux-uclibceabi
Configure and build, and install library to deploy directory.
$ ./configure --host=arm-angstrom-linux-uclibceabi --enable-shared $ make DESTDIR=$(realpath ../deploy/) install
Also you can build only static .a library, by removing --enable-shared, but janus-rx will be much bigger in size.
Deploy fftw3 library to sandbox
Upload fftw3 dynamic library to sandbox /usr/local/lib directory.
$ (cd ../deploy; tar -c usr/local/lib/libfftw3.so*) | \ssh root@MODEM_IP tar -C / -xv
Setup dynamic linker in sandbox to search libraries in /usr/local/lib.
$ ssh root@MODEM_IP root@evo-sandbox:~# echo /usr/local/lib >> /etc/ld.so.conf root@evo-sandbox:~# ldconfig
Build JANUS-C
Setup toolchain enviroment, if you do not it before in current terminal.
$ . /usr/local/oecore-i686/environment-setup-armv5te-angstrom-linux-uclibceabi
Configure and build, and upload to modem.
$ cd ../janus-c $ PKG_CONFIG_PATH=$PKG_CONFIG_PATH:$(realpath ../deploy/usr/local/lib/pkgconfig) cmake -DCROSS=arm-angstrom-linux-uclibceabi -DCMAKE_PREFIX_PATH=$(realpath ../deploy/usr/local) . $ make $ scp janus-tx root@MODEM_IP:/usr/local/bin $ scp janus-rx root@MODEM_IP:/usr/local/bin
How to run sdmsh visit the corresponding link - JANUS : Run