APM에 Mission Planner가 있다면 PX4에는 QgroundControl(이하 QGC)이라는 GCS 소프트웨어가 있다. 

미션플래너는 윈도우 기반으로 되어있는 반면에 QGC는 QT기반으로 개발되어 윈도우 뿐 아니라 리눅스, mac, 그리고 안드로이드와 IOS같은 모바일 기기에서도 

포팅이 가능한 장점이 있어서 필드에서 사용하기에 유용하다.


맥에서 빌드하는 방법은 간단히 git clone 명령으로 소스를 복사한 다음 qt에서 열어서 빌드하는것으로 끝이다.


안드로이드로 빌드하는것은 상대적으로 복잡한데 일단 다음을 참조한다.



http://doc.qt.io/qt-5/androidgs.html


다음 항목들이 필요하다.

  • The Android SDK Tools
  • The Android NDK
  • Java SE Development Kit (JDK) v6 or later.

  • 안드로이드 studio를 설치하면 sdk 기본 폴더가 /Users/username/Library/Android/sdk  에 만들어졌을 것이다. (여기서 username은 각자의 사용자명)

    이제 스튜디오를 실행하여 설정 항목에서 추가적인 SDK를 설치한다.

    LLDB, NDK등을 추가하여 준다.

    이제  QT5.7.1 의 안드로이드 버전을 다운로드한다.

    qt-opensource-mac-x64-android-ios-5.7.1.dmg

    만약 ios가 필요 없다면 아래 항목을 다운로드 한다.

    qt-opensource-mac-x64-android-5.7.1.dmg


    기존에 5.7.1이 설치되어 있다면 설치 폴더를 5.7.1_android 등으로 변경하여 설치한다.(겹쳐서 설치는 해보지 않음)

    설치가 완료되면 프로젝트의 kit에 안드로이드 항목이 자동으로 추가되어 있는것을 혹인할 수 있다.


    만약 자동으로 Kit이 생서되지 않는다면 다음을 확인한다.


    Projects -> Manage Kits -> 좌측 탭에서 Devices를 선택 후 Android 항목에서 다음과 같이 설정한다.

    Android SDK location과 NDK 경로를 설정해야 Kit가 생성된다.

    그리고 Ant 위치를 지정한다. Ant 가 설치되어있는 경로는 터미널에 다음을 수행한다.

    $ which ant

    /usr/local/bin/ant

    ant 가 설치되어있지 않으면 설치한다.


    이렇게 해서 빌드를 해보면 아마도 gradle 오류가 발생할 것이다.

    이것은 안드로이드 sdk최신판에서 build tool 이 빠지면서(?) 발생하는 문제인데

    아래 링크에서 build tool 을 다운로드 하여 필요한 항목을 android sdk 폴더에 복사한다.


    http://www.techspot.com/downloads/5425-android-sdk.html 


    tools/template 항목을 복사하여 /Users/username/Library/Android/sdk/tools/template 에 복사한다.


    Projects -> Build Settings -> Build Steps -> Build Android APK 의 Advanced Actions 에서 Use Gradle 항목을 Check 한다.

    이렇게 해야 Build.xml 오류를 해결할 수 있다.



    이렇게 하고 build 하면 안드로이드 기기에서 실행할 수 있다.


    + Recent posts