Estoy escribiendo una aplicación de Android para probar el rendimiento de la red, y quiero usar iPerf en la aplicación. Puedo encontrar binario iPerf archivos ya compilados para Android (y, a continuación, puede ejecutar iPerf en el teléfono y recoger su salida), pero estoy interesado en la compilación de los archivos de mí mismo.

Aquí, alguien presenta secuencias de comandos que se puede utilizar para compilar el programa:
http://sourceforge.net/tracker/index.php?func=detail&aid=3533374&group_id=128336&atid=711373

Sé que requiere el NDK, pero no sé por dónde empezar. Hay buenos recursos o consejo que puede ayudar a guiarme en la elaboración de esta en mi cuenta (en Windows, pero también tengo Cygwin). Sé C y cómo utilizar GCC en linux, pero no estoy seguro de por dónde empezar aquí.

Gracias por la ayuda de antemano!

El NDK no está diseñado para la elaboración de un «programa en C». El NDK está diseñado para la compilación de librerías C/C++ que estarán conectadas a un host de aplicaciones Java.
No es posible compilar un programa en C utilizando todos modos?

OriginalEl autor yellow | 2012-06-25

3 Comentarios

  1. 0

    Trabajo en Iperf3

        #!/bin/sh
    wget https://dl.google.com/android/repository/android-ndk-r18-linux-x86_64.zip
    sudo apt-get install unzip
    unzip android-ndk-r18-linux-x86_64.zip
    #--arch arm or arm64 https://developer.android.com/ndk/guides/standalone_toolchain
    android-ndk-r18/build/tools/make_standalone_toolchain.py --arch arm --api 26 --install-dir=my-toolchain
    # Add the standalone toolchain to the search path.
    export PATH=$PATH:`pwd`/my-toolchain/bin
    
    # Tell configure what tools to use. aarch64-linux-android
    target_host=arm-linux-androideabi #aarch64-linux-android or arm-linux-androideabi
    export AR=$target_host-ar
    export AS=$target_host-clang
    export CC=$target_host-clang
    export CXX=$target_host-clang++
    export LD=$target_host-ld
    export STRIP=$target_host-strip
    
    # Tell configure what flags Android requires.
    export CFLAGS="-fPIE -fPIC"
    export LDFLAGS="-pie"
    sudo apt-get install build-essential git
    git clone https://github.com/esnet/iperf
    cd iperf/
    echo manual edit src/iperf_api.c change to char template[] = "/data/local/tmp/iperf3.XXXXXX";
    
    #--disable-profiling or edit src/Makefile.in deleting "-pg" from iperf3_profile_CFLAGS and iperf3_profile_LDFLAGS
    #./configure --host=arm-linux-androideabi CFLAGS=-static CXXFLAGS=-static --disable-profiling 
    #make
    
    ##iperf2
    #sudo apt-get install autotools-dev
    #cp /usr/share/misc/config.{sub,guess} .
    
    #adb push src/iperf3 /data/local/tmp
    #adb shell chmod 755 /data/local/tmp/iperf3
    #adb shell "/data/local/tmp/iperf3 -v"

    OriginalEl autor Adam Stańczyk

Dejar respuesta

Please enter your comment!
Please enter your name here