Editing GRAndDeps

Jump to: navigation, search

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 56: Line 56:
 
== Boost for Android ==
 
== Boost for Android ==
  
NOTE: Recently changed; See the "Older Boost (1.55) for Android" section below for the original instructions we were using.
+
NOTE: Recently changed; See the "Older Boost (1.55) for Android" section below for the original instructions we were using.
  
Download Boost >= 1.58 from http://www.boost.org/. This can either be a bzip or gzip tarball. We'll unpack it, fix some configuration issues for Android, and build:
+
Download Boost >= 1.58 from http://www.boost.org/. This can either be a bzip or gzip tarball. We'll unpack it, fix some configuration issues for Android, and build:
  
 
<pre>tar xjf boost_1_58_0.tar.bz2  (use 'xzf' flags instead of 'xjf' if you have the tar.gz version)
 
<pre>tar xjf boost_1_58_0.tar.bz2  (use 'xzf' flags instead of 'xjf' if you have the tar.gz version)
Line 147: Line 147:
 
Attribute Section: aeabi
 
Attribute Section: aeabi
 
File Attributes
 
File Attributes
   Tag_CPU_name: "7-A"
+
   Tag_CPU_name: &quot;7-A&quot;
 
   Tag_CPU_arch: v7
 
   Tag_CPU_arch: v7
 
   Tag_CPU_arch_profile: Application
 
   Tag_CPU_arch_profile: Application
Line 188: Line 188:
  
 
<pre>mkdir build; cd build
 
<pre>mkdir build; cd build
export SYS_ROOT="$ANDROID_STANDALONE_TOOLCHAIN/sysroot"
+
export SYS_ROOT=&quot;$ANDROID_STANDALONE_TOOLCHAIN/sysroot&quot;
export CC="arm-linux-androideabi-gcc --sysroot=$SYS_ROOT"
+
export CC=&quot;arm-linux-androideabi-gcc --sysroot=$SYS_ROOT&quot;
export LD="arm-linux-androideabi-ld"
+
export LD=&quot;arm-linux-androideabi-ld&quot;
export AR="arm-linux-androideabi-ar"
+
export AR=&quot;arm-linux-androideabi-ar&quot;
export RANLIB="arm-linux-androideabi-ranlib"
+
export RANLIB=&quot;arm-linux-androideabi-ranlib&quot;
export STRIP="arm-linux-androideabi-strip"
+
export STRIP=&quot;arm-linux-androideabi-strip&quot;
 
../configure --enable-single --enable-static --enable-threads \
 
../configure --enable-single --enable-static --enable-threads \
 
   --enable-float  --enable-neon \
 
   --enable-float  --enable-neon \
 
   --host=armv7-eabi --build=x86_64-linux \
 
   --host=armv7-eabi --build=x86_64-linux \
 
   --prefix=$PREFIX \
 
   --prefix=$PREFIX \
   LIBS="-lc -lgcc -march=armv7-a -mfloat-abi=softfp -mfpu=neon" \
+
   LIBS=&quot;-lc -lgcc -march=armv7-a -mfloat-abi=softfp -mfpu=neon&quot; \
   CC="arm-linux-androideabi-gcc -march=armv7-a -mfloat-abi=softfp -mfpu=neon"
+
   CC=&quot;arm-linux-androideabi-gcc -march=armv7-a -mfloat-abi=softfp -mfpu=neon&quot;
 
make
 
make
 
make install</pre>
 
make install</pre>
Line 263: Line 263:
 
* Configure and build thrift
 
* Configure and build thrift
  
<pre>export SYS_ROOT="$ANDROID_STANDALONE_TOOLCHAIN/sysroot/"
+
<pre>export SYS_ROOT=&quot;$ANDROID_STANDALONE_TOOLCHAIN/sysroot/&quot;
export CC="arm-linux-androideabi-g++ --sysroot=$SYS_ROOT"
+
export CC=&quot;arm-linux-androideabi-g++ --sysroot=$SYS_ROOT&quot;
export CXX="arm-linux-androideabi-g++ --sysroot=$SYS_ROOT"
+
export CXX=&quot;arm-linux-androideabi-g++ --sysroot=$SYS_ROOT&quot;
export LD="arm-linux-androideabi-ld"
+
export LD=&quot;arm-linux-androideabi-ld&quot;
export AR="arm-linux-androideabi-ar"
+
export AR=&quot;arm-linux-androideabi-ar&quot;
export RANLIB="arm-linux-androideabi-ranlib"
+
export RANLIB=&quot;arm-linux-androideabi-ranlib&quot;
export STRIP="arm-linux-androideabi-strip"
+
export STRIP=&quot;arm-linux-androideabi-strip&quot;
 
./bootstrap.sh
 
./bootstrap.sh
 
./configure --prefix=$PREFIX  --disable-tests --disable-tutorial --with-cpp \
 
./configure --prefix=$PREFIX  --disable-tests --disable-tutorial --with-cpp \
Line 275: Line 275:
 
  --without-libevent --without-zlib \
 
  --without-libevent --without-zlib \
 
  --with-boost=$PREFIX --host=arm-eabi --build=x86_64-linux \
 
  --with-boost=$PREFIX --host=arm-eabi --build=x86_64-linux \
  CPPFLAGS="-I$ANDROID_STANDALONE_TOOLCHAIN/include/c++/4.8/arm-linux-androideabi/armv7-a" \
+
  CPPFLAGS=&quot;-I$ANDROID_STANDALONE_TOOLCHAIN/include/c++/4.8/arm-linux-androideabi/armv7-a&quot; \
  LDFLAGS="-L$ANDROID_STANDALONE_TOOLCHAIN/arm-linux-androideabi/lib/armv7-a -lgnustl_shared"
+
  LDFLAGS=&quot;-L$ANDROID_STANDALONE_TOOLCHAIN/arm-linux-androideabi/lib/armv7-a -lgnustl_shared&quot;
 
make
 
make
 
make install</pre>
 
make install</pre>
Line 288: Line 288:
 
tar -xvf zeromq-3.2.4.tar.gz
 
tar -xvf zeromq-3.2.4.tar.gz
 
cd zeromq-3.2.4</pre>
 
cd zeromq-3.2.4</pre>
* Turn off Werror. Edit configure by setting libzmq_werror="yes" to no.
+
* Turn off Werror. Edit configure by setting libzmq_werror=&quot;yes&quot; to no.
  
 
<pre># By default compiling with -Werror except OSX.
 
<pre># By default compiling with -Werror except OSX.
libzmq_werror="no"</pre>
+
libzmq_werror=&quot;no&quot;</pre>
 
* Configure, and build. We turn off libsodium since we haven't built it.
 
* Configure, and build. We turn off libsodium since we haven't built it.
  
 
<pre>./configure --enable-static --disable-shared --host=arm-linux-androideabi \
 
<pre>./configure --enable-static --disable-shared --host=arm-linux-androideabi \
     --prefix=$PREFIX LDFLAGS="-L$OUTPUT_DIR/lib \
+
     --prefix=$PREFIX LDFLAGS=&quot;-L$OUTPUT_DIR/lib \
 
     -L$ANDROID_STANDALONE_TOOLCHAIN/arm-linux-androideabi/lib/armv7-a \
 
     -L$ANDROID_STANDALONE_TOOLCHAIN/arm-linux-androideabi/lib/armv7-a \
     -lgnustl_shared" CPPFLAGS="-fPIC -I$PREFIX/include \
+
     -lgnustl_shared&quot; CPPFLAGS=&quot;-fPIC -I$PREFIX/include \
     -I$ANDROID_STANDALONE_TOOLCHAIN/include/c++/4.8/arm-linux-androideabi/armv7-a" \
+
     -I$ANDROID_STANDALONE_TOOLCHAIN/include/c++/4.8/arm-linux-androideabi/armv7-a&quot; \
     LIBS="-lgcc" --with-libsodium=no
+
     LIBS=&quot;-lgcc&quot; --with-libsodium=no
 
make
 
make
 
make install</pre>
 
make install</pre>
Line 344: Line 344:
 
   -DLIBUSB_LIBRARIES=$PREFIX/lib/libusb1.0.so \
 
   -DLIBUSB_LIBRARIES=$PREFIX/lib/libusb1.0.so \
 
   ../</pre>
 
   ../</pre>
Run this twice. The first time produces an error, but the second time succeeds. Seems to work, though it's probably not the "right thing." (NOTE: add -DTHREADS_PTHREAD_ARG=0. See /opt/code/rtl-sdr/build/TryRunResults.cmake for details. Gist is THREADS_PTHREAD_ARG would be the return code of a demo example)
+
Run this twice. The first time produces an error, but the second time succeeds. Seems to work, though it's probably not the &quot;right thing.&quot; (NOTE: add -DTHREADS_PTHREAD_ARG=0. See /opt/code/rtl-sdr/build/TryRunResults.cmake for details. Gist is THREADS_PTHREAD_ARG would be the return code of a demo example)
  
 
<pre>make
 
<pre>make
Line 386: Line 386:
 
* In build-android.sh:
 
* In build-android.sh:
 
** Change BOOST_VER2=55 (line 31)
 
** Change BOOST_VER2=55 (line 31)
** Add "10d (64-bit)" to build-android.sh (line 260)
+
** Add &quot;10d (64-bit)&quot; to build-android.sh (line 260)
 
** change to using the 4.8 toolchain (line 261)
 
** change to using the 4.8 toolchain (line 261)
  
Line 395: Line 395:
 
ln -s $PREFIX/include/boost-1_55/boost $PREFIX/include/boost
 
ln -s $PREFIX/include/boost-1_55/boost $PREFIX/include/boost
 
for f in `ls $PREFIX/lib/libboost*.a`; do ln -s $f ${f%-gcc-mt-1_55.*}.a; done</pre>
 
for f in `ls $PREFIX/lib/libboost*.a`; do ln -s $f ${f%-gcc-mt-1_55.*}.a; done</pre>
* In the installed thread_data.hpp file,comment out the include <asm/page.h>
+
* In the installed thread_data.hpp file,comment out the include &lt;asm/page.h&gt;
  
 
<pre>#if defined(__ANDROID__)
 
<pre>#if defined(__ANDROID__)

Please note that all contributions to GNU Radio are considered to be released under the Creative Commons Attribution-ShareAlike (see GNU Radio:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

To edit this page, please answer the question that appears below (more info):

Cancel | Editing help (opens in new window)