Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. International
  3. Polish
  4. Cross kompilacja dla linux-arm pod Windows (Qt 5.2)

Cross kompilacja dla linux-arm pod Windows (Qt 5.2)

Scheduled Pinned Locked Moved Polish
2 Posts 1 Posters 2.2k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Offline
    M Offline
    marius.maximus
    wrote on last edited by
    #1

    Ktoś może walczył z tematem cross kompilacji pod systemem windows ?
    Prubowałem metody opisanej tutaj:
    http://stackoverflow.com/questions/11511994/qt-4-8-cross-compile-for-embedded-linux-using-linaro-toolchain-from-windows

    Tylko że to dotyczy wersji Qt 4.8, a odnoszę że w najnowszej wersji coś sie pozmieniało.

    Ja to zrobiłęm podobie
    [1] Moj qmake.conf
    https://github.com/mariuszekpl/qt52-cross-compile-tegra2-windows-scripts/blob/master/try_0001/qmake.conf
    Wrzuciłęm do katalogu qtbase\mkspecs\linux-arm-gnueabi-g++

    [2] Uruchamiam configure.bat
    configure.bat -xplatform linux-arm-gnueabi-g++ -no-opengl -no-neon -nomake tests -opensource -confirm-license

    [3] mingw32-make
    Rozpoczyna sie kompilacja i po paru minutach się przerywa

    Problem 1) configure.exe stworzyło niepoprawny plik qconfig.cpp
    (porównałem z wersja kompilowaną linux->linux-arm)
    Brakuje w nim deklaracji qt_configure_settings_path_str oraz QT_CONFIGURE_SETTINGS_PATH
    Wiec szukam skad to się bierze i znalazłem w zródłach configure.exe taki warunek:

    @ if ((platform() != WINDOWS) && (platform() != WINDOWS_CE) && (platform() != WINDOWS_RT))
    tmpStream << "#define QT_CONFIGURE_SETTINGS_PATH qt_configure_settings_path_str + 12;" << endl;@

    Wyglada wiec że nie rozpoznał platformy linux, szukam dalej w platform()
    Funkcja zwraca
    @enum Platforms {
    WINDOWS,
    WINDOWS_CE,
    WINDOWS_RT,
    QNX,
    BLACKBERRY,
    ANDROID
    };

    @
    Linux nie jest obsługiwany przez configure.exe ?

    Problem 2)
    Zagladam a Makefile dla "libQt5Core" a tam taki kwiatek

    @TARGET = libQt5Core5.dll
    DESTDIR_TARGET = ....\lib\libQt5Core5.dll
    @

    Plik co prawda nie zdarzył sie skompilować , ale z tego co widziałem to wszystki pliki obj sa dla linux-a.
    Tylko widać rozszerzenie jest błedne

    Ktoś może mi podpowiedzieć jak skompilować sobie narzędzie abym mógł pod windows tworzyć programy dla linux-arm ? Dodam że pod ubuntu kompilacja działą bez problemu ale niestety musze używać windows-a.

    Szukałem też na zleceniaprzez.net ale nikt nie znalazł sie chetny :(

    1 Reply Last reply
    0
    • M Offline
      M Offline
      marius.maximus
      wrote on last edited by
      #2

      Działa !
      Co prawda nie jest w 100% automatycznie i w paru (dwoch) miejscach muszę recznie poprawić pliki ale Qt sie kompiluje i udało mi sie skompilować aplikację za pomocą :
      qmake & mingw32-make
      Oraz udało się skompilować w QtCreator :)

      Recznie musiałem porawić
      qtbase\mkspecs\qconfig.pri
      QT_CONFIG += xkbcommon-qt

      qtbase\src\corelib\global\qconfig.cpp
      Dodałem QT_CONFIGURE_SETTINGS_PATH

      Jak to trochę ogarnę to opublikuje pełny opis

      1 Reply Last reply
      0

      • Login

      • Login or register to search.
      • First post
        Last post
      0
      • Categories
      • Recent
      • Tags
      • Popular
      • Users
      • Groups
      • Search
      • Get Qt Extensions
      • Unsolved