2013-05-01 22 views
10

Ho un server con Ubuntu 12.04 LTS.Come creare Qt5 per Android?

Vorrei mettere il server in uso per costruire Qt5 per la piattaforma Android ARMv6. Come si fa a fare questo su un server senza testa?

risposta

10

I passaggi necessari per compilare Qt5 per Android su Ubuntu 12.04 LTS sono descritti di seguito. Per comodità, supporrò che tutti i comandi seguenti siano eseguiti nella directory /opt/qt5-android. Sarà necessario regolare i percorsi di conseguenza, se questo non è il caso.

  1. In primo luogo è necessario assicurarsi che i pacchetti appropriati siano installati:

    sudo apt-get install build-essential openjdk-6-jdk 
    
  2. Afferra l'ultimo SDK Android:

    wget http://dl.google.com/android/android-sdk_r21.1-linux.tgz 
    tar -xf android-sdk_r21.1-linux.tgz 
    
  3. L'SDK non viene fornito con alcun piattaforme, quindi è necessario prenderli:

    android-sdk-linux/tools/android update sdk --no-ui 
    
  4. Afferra la versione più recente della NDK:

    32-bit (i686):

    wget http://dl.google.com/android/ndk/android-ndk-r8e-linux-x86.tar.bz2 
    tar -xf android-ndk-r8e-linux-x86.tar.bz2 
    

    64-bit (amd64):

    wget http://dl.google.com/android/ndk/android-ndk-r8e-linux-x86_64.tar.bz2 
    tar -xf android-ndk-r8e-linux-x86_64.tar.bz2 
    
  5. Ora clonare il seguente repository Git:

    git clone git://gitorious.org/qt/qt5.git qt5 
    cd qt5 
    perl init-repository --no-webkit 
    
  6. Siamo quasi arrivati. Ora abbiamo bisogno di configure e make QT5:

    ./configure \ 
        -developer-build \ 
        -xplatform android-g++ \ 
        -nomake tests \ 
        -nomake examples \ 
        -android-ndk /opt/qt5-android/android-ndk-r8e \ 
        -android-sdk /opt/qt5-android/android-sdk-linux \ 
        -skip qttools \ 
        -skip qttranslations \ 
        -skip qtwebkit \ 
        -skip qtserialport \ 
        -skip qtwebkit-examples-and-demos 
    make 
    

E questo è tutto! Ora dovresti finire con una build Qt5 per Android.


Riferimenti:

5

io non intendo rispondere a un'altra risposta con una risposta, ma questo è il mio primo post :-(e penso che questo mi impedisca di postare questo in un commento (quindi consideralo una citazione di rispose la risposta, non una risposta) La risposta di Nathan di sopra non funzionava esattamente per me.

La mia linea di configurazione sembrava più così:

./configure \ 
-developer-build -platform linux-g++-64 \ 
-xplatform android-g++ \ 
-nomake tests \ 
-nomake examples \ 
-android-ndk /opt/qt5-android/android-ndk-r8e \ 
-android-sdk /opt/qt5-android/android-sdk-linux \ 
-skip qttools \ 
-skip qttranslations \ 
-skip qtwebkit \ 
-skip qtserialport \ 
-android-ndk-host linux-x86_64 

Ecco perché:

  • -skip qtwebkit-examples-and-demos causato un errore in Configura ... Non gli piaceva che stavo saltando qualcosa che couldn essere costruito comunque (scusate, ho perso l'esatto messaggio di errore)

  • -android-ndk-host linux-x86_64 interrotto la configurazione dall'abortire con " Can not detect the android host. Please use -android-ndk-host option to specify one "

  • -platform linux-g++-64 sono io essere paranoico circa se o non configurare aggiungerà la bandiera -m64 o qualsiasi altra cosa quando si lavora la sua magia per me

Oltre a questa differenza, la procedura di Nathan sembrava funzionare come un fascino . Il mio ambiente locale ora (grazie per i suggerimenti, signor Osman :-)