2013-05-01 17 views

Odpowiedz

10

Kroki niezbędne do kompilacji Qt5 dla Androida na Ubuntu 12.04 LTS opisano poniżej. Dla wygody założę się, że wszystkie poniższe polecenia są uruchamiane w katalogu /opt/qt5-android. Będziesz musiał odpowiednio dostosować ścieżki, jeśli tak nie jest.

  1. Najpierw trzeba upewnić się, że odpowiednie pakiety zostaną zainstalowane:

    sudo apt-get install build-essential openjdk-6-jdk 
    
  2. Grab najnowszy Android SDK:

    wget http://dl.google.com/android/android-sdk_r21.1-linux.tgz 
    tar -xf android-sdk_r21.1-linux.tgz 
    
  3. SDK nie jest dostarczany z dowolnego platformy, więc będziesz musiał je złapać:

    android-sdk-linux/tools/android update sdk --no-ui 
    
  4. Grab najnowsza wersja 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. teraz sklonuj następujące repozytorium Git:

    git clone git://gitorious.org/qt/qt5.git qt5 
    cd qt5 
    perl init-repository --no-webkit 
    
  6. Już prawie jesteśmy. Teraz musimy configure i 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 
    

I to jest to! Powinieneś teraz skończyć z kompilacją Qt5 dla Androida.


Referencje:

5

Nie chcę odpowiadać na inną odpowiedź z odpowiedzią, ale jest to mój pierwszy post :-(i myślę, że to uniemożliwi mi opublikowanie tego w komentarzu: (należy więc uznać to za cytat z odpowiedziała, a nie na odpowiedź). Własna odpowiedź Nathana powyżej nie działa dokładnie dla mnie.

Moja linia configure wyglądał bardziej jak tak:

./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 

Oto dlaczego:

  • -skip qtwebkit-examples-and-demos spowodował błąd w Konfiguruj ... Nie podoba mi się, że mogłam coś pomijam i tak zostanie zbudowane (przepraszam, zgubiłem dokładny komunikat o błędzie)

  • -android-ndk-host linux-x86_64 zatrzymano konfigurację przed przerwaniem z " Can not detect the android host. Please use -android-ndk-host option to specify one "

  • -platform linux-g++-64 jest mi bycie paranoidalne, czy skonfigurować doda flagę -m64 lub cokolwiek podczas pracy jego magia dla mnie

Poza tą różnicą, procedura Nathana wydawało się działać jak czar . Moje lokalne budownictwo teraz (dzięki za wskazówki, panie Osman :-)