...researching fundamentals of networking and communications


Steps to Compile NTL

Download and extract ntl-5.5.2_android_mod_1.tar.gz (attached)

Download and extract the crystax ndk mod. Use it as your primary NDK library. http://www.crystax.net/android/ndk-r4.php

Edit the makefile headers to fit your system. The GMP options are a bit further down.

Run make all



make setup1

make setup2

make setup3

make ntl.a

To run the check routine, run make check

Finally, run make install

Compile string for use with NTL

arm-eabi-g++ -nostdlib -Bdynamic -Wl,-dynamic-linker,/system/bin/linker -Wl,--gc-sections -Wl,-z,nocopyreloc -I$NDK_DIR/build/platforms/android-8/arch-arm/usr/include -fpic -mthumb-interwork -ffunction-sections -funwind-tables -fstack-protector -fno-short-enums -fomit-frame-pointer -fomit-frame-pointer -fstrict-aliasing -funswitch-loops -finline-limit=300 -D__ARM_ARCH_5__ -D__ARM_ARCH_5T__ -D__ARM_ARCH_5E__ -D__ARM_ARCH_5TE__ -Wno-psabi -Wa,--noexecstack -march=armv7-a -mfloat-abi=softfp -mfpu=vfp -Wl,-rpath-link=$NDK_DIR/build/platforms/android-8/arch-arm/usr/lib -L$NDK_DIR/build/platforms/android-8/arch-arm/usr/lib $NDK_DIR/build/platforms/android-8/arch-arm/usr/lib/crtbegin_dynamic.o $NDK_DIR/build/prebuilt/linux-x86/arm-eabi-4.4.0/lib/gcc/arm-eabi/4.4.0/libgcc.a $NDK_DIR/build/prebuilt/linux-x86/arm-eabi-4.4.0/arm-eabi/lib/libstdc++.a $NDK_DIR/build/prebuilt/linux-x86/arm-eabi-4.4.0/arm-eabi/lib/libsupc++.a -lc -lm -o $OUTPUT $INPUT -lstdc++ -lsupc++

This won't work with everything, and might contain some unneeded options right now, but it should serve as a good starting point. The variable $NDK_DIR needs to be set to your NDK directory

-- IdanWarsawski - 28 Jun 2010

Update: Everything you need to know is in the the new archive: ntl-5.5.2_android_mod.zip

-- IdanWarsawski - 20 Aug 2010

  • makefile: Example Makefile GMP not enabled

r3 - 2010-08-20 - 19:39:30 - IdanWarsawski

Laboratory of Networking and Information Systems
Photonics Building, Room 413
8 St Mary's Street,
Boston MA 02215

Initial web site created by Sachin Agarwal (ska@alum.bu.edu), Modified by Weiyao Xiao (weiyao@alum.bu.edu), Moved to TWiki backend by Ari Trachtenberg (trachten@bu.edu). Managed by Jiaxi Jin (jin@bu.edu).
Syndicate this site RSSATOM