Fremantle SDKMaemo 5のクむックむンストヌル。 Qt 4.6をむンストヌルしたす。 ゚ミュレヌタヌずデバむスで実行およびデバッグする

良い䞀日habrasociety。 Maemoの䞀連のプログラミング蚘事を継続したす。 以前に、「ハむブリッド」モヌドでSDKをむンストヌルおよび構成する方法を曞きたした。ネむティブOSで蚘述し、仮想マシンで収集しお実行したす。



Maemoのプログラミングを始めるのは難しいず考える人もいたした。 だから、私は簡単な方法「簡単な方法」©のデモンストレヌションから始めお、それがいかに簡単であるかを瀺すこずにしたした。 さらに、 maemo 5のt 4.6.2の公匏リリヌスがリリヌスされた堎合、このリリヌスをFremantle SDK に組み蟌む方法を瀺したす。 ゚ミュレヌタでデバッグを実挔したす。 そしお最も重芁なのは、通垞のネットワヌク接続ずUSB接続を䜿甚しおデバむス䞊のアプリケヌションをデバッグする方法です。



䜜業の結果は、デバむス䞊のそのようなりィンドりになりたす。



画像



泚Scratchboxは、Fremantle SDKであるため、IDEずしお䜿甚されたす。 QtQreatorは䜿甚できたすが、Fremantleは䜿甚したせん。 なんで はい、圌らが新しいクロスプラットフォヌムSDK-MADDEをサポヌトしおいるので、すでに蚀及したしたそしお結論で蚀及したす。







たあ、あなたはカットされおいるので、それはあなたが私の蚘事を読むこずにしたこずを意味したす。



1. SDKをむンストヌルし、゚ミュレヌタヌでHelloWorldを実行したす。





ここにあるすべおのビデオは非垞に良い品質ではありたせん。YouTubeでは、HDフォヌマットで芋るこずができたす。ビデオをダブルクリックするだけでこれを行うこずができたす。



初めから始めたしょう。この時点で、 前の蚘事を読んでいないか、SDKをむンストヌルするためのやや長い道のりを螏たないこずを決めたずしたす。 しかし、最初の道を進んだ堎合、結果の賞品ずしお、ネむティブOSでの開発に䟿利な環境が埗られたす個人的には、もちろん私の意芋です。

しかし、䜕らかの理由で怠け者の堎合、私が説明したオプションがあなたに合わない堎合は、別のより簡単でシンプルな方法をお勧めしたす。



既にFremantle SDKをお持ちの堎合は、この手順をスキップしお2番目の手順に盎接進んでください。



SDKをむンストヌルするには、ダりンロヌドする必芁がありたす。

  1. Fremantle SDK仮想むメヌゞ -Maemo_Ubuntu_Intrepid_Desktop_SDK_Virtual_Image_Final.7zずいうファむル。
  2. オプションの7ipアヌカむバお持ちでない堎合。
  3. VirtualBoxたたはquemuたたはVMWare。 私の䟋では、VirtualBoxを䜿甚しおいたす。




そしお、ビデオに埓っお進んでください、すべおがそこにはっきりしおいるようです





泚ゲストOSのアドオンは、SDK自䜓に含たれおいるアドオンではなく、VirtualBox自䜓から盎接むンストヌルしたすデスクトップ䞊のアドオンぞのリンク。 どこにでもダりンロヌドする必芁はありたせん。VirtualBox自䜓がすでに付属しおおり、ディストリビュヌションは仮想ディスクむメヌゞずしお接続されおいたす。



ご芧のずおり、アプリケヌションのむンストヌル、構成、および起動は、前述の方法ずは異なり、10分未満で完了したす。 すべおが非垞に簡単です



2. Qt 4.6.2をむンストヌルし、゚ミュレヌタヌでQtアプリケヌションを䜜成しお実行したす。



この時点から、前の蚘事たたはポむント1から提案されたむンストヌル方法を䜿甚するかどうかは関係ありたせん。すべおが䞡方のむンストヌルケヌスに関連しおいたす。







ここでのシヌケンスは次のずおりです。



たず、SDKにむンストヌルされおいるQt 4.5を削陀したす。

fakeroot apt-get remove libqtv4 *



そしお、Maemo5の公匏Qt 4.6.2をむンストヌルしたす。

fakeroot apt-get install libqt4-maemo5-dev





そしお、ARMELずx86の䞡方の目的でこれを行う必芁がありたす。 x86タヌゲットぱミュレヌタヌで実行およびデバッグするために必芁であり、ARMELタヌゲットはデバむスで実行およびデバッグするために必芁ですクロスコンパむル。 メニュヌを䜿甚しお、scratchboxで目暙を切り替えるこずができたす。

sb-menu





今泚目!!!! scratchboxのネットワヌクが機胜しない堎合がありたすパッケヌゞをむンストヌルするコマンドを実行するず、ネットワヌクに゚ラヌが発生する堎合がありたす。 これは、scratchboxの小さな問題によるものです。 それらは簡単に陀去できたす。 これを行うには、scratchboxの倖郚で、各目的およびDHCP経由で受信した、たたは静的ネットワヌクのセットアッププロセス䞭に䜜成されたスクラッチボックス自䜓のresolv.confファむルを明瀺的たたは間接的にナヌティリティを介しおコピヌする必芁がありたす。

sudo cp /etc/resolv.conf / scratchbox /など

sudo cp /etc/resolv.conf / scratchbox / users / maemo / targets / FREMANTLE_ARMEL / etc

sudo cp /etc/resolv.conf / scratchbox / users / maemo / targets / FREMANTLE_X86 / etc





たた、プロキシを䜿甚する堎合は、環境倉数を゚クスポヌトする必芁があるこずに泚意しおください。

export http_proxy = ...

export https_proxy = ...



これを別のスクリプトに远加するか、これらの行を〜/ .bashrcファむルに远加するか、apt-getのプロキシを指定したす。

  echo 'Acquire :: http :: Proxy "http// aptcache3142";'  > /etc/apt/apt.conf.d/99proxy




この堎合、apt-getはこのプロキシを介しお機胜したす。



たた、パッケヌゞをむンストヌルする前に、scratchbox内の各タヌゲットのパッケヌゞを曎新するためにQtがずれるこずはありたせん䞀般的に、「fakeroot」で始たるすべおのコマンドはscratchbox内でのみ実行され、sudoの倖でsudoが実行されたす

fakeroot apt-getアップデヌト





その埌、Qtプロゞェクト「Qt Hello World」を䜜成し、ビルド構成ずしおARMELおよびX86のすべおのタヌゲットを遞択したす結局、゚ミュレヌタヌずデバむスの䞡方でデバッグする予定です。



3.ネットワヌク経由でロヌカル゚ミュレヌタヌおよびデバむス䞊でアプリケヌションを構成および実行したす私の堎合はWiFi経由。





Qtプロゞェクトを構築するには、これだけでは䞍十分です。事実、ESBoxは、システムに統合される非公匏のQtずは異なり、/ opt / qt4-maemo5にむンストヌルされる公匏のQtの存圚を認識したせん異なるディレクトリに散圚し、qmakeは/ usrにありたす / local / bin、include is in / usrt / include / qt4など。 原則ずしお、非公匏のQtパッケヌゞの動䜜は暙準ですが、この堎合、いく぀かのバヌゞョンに察凊するのが難しいため、Qtナヌザヌがパッケヌゞをシステム党䜓に散らさないこずにしたのでしょう。 これを修正するには2぀の方法がありたす。プロゞェクトを䜜成するずきに、すべおのパスをIncludeずqmakeに倉曎するだけですが、簡単にするか、シンボリックリンクを䜜成できたす。

qmakeの堎合ビデオのコメントにタむプミスがありたす。パスに「dev」ではなく「bin」ず曞く必芁がありたす。残念ながら、技術的な理由で修正できたせん

ln -s / opt / qt4-maemo5 / bin / qmake / usr / local / bin



パスを指定せずにqmakeが䜿甚可胜であるこずを確認したす。

qmake



qmakeのプロンプトが衚瀺され、最初にQtのバヌゞョンが瀺され、4.6.2になりたす。



含めるため

ln -s / opt / qt4-maemo5 / include / usr / local / qt4



ESBoxに必芁です。



この操䜜は、スクラッチボックスアセンブリARMELおよびX86のすべおの目的で実行する必芁がありたす。これにより、あるバヌゞョンのQtを備えた端末でデバッグし、別のバヌゞョンのデバむスでデバッグしおいるこずがわかりたせん。 scratchboxでタヌゲットを切り替えるには、sb-menuナヌティリティを䜿甚する必芁があるこずを芚えおいたす。



次に、゚ミュレヌタヌX86-develop甚のアプリケヌションをビルドし、デバッグ構成ロヌカルを䜜成したす。 たず、゚ミュレヌタを起動する招埅に同意したす。 プログラムが「メむン」機胜ぞの゚ントリポむントで停止し、HelloWorldを獲埗したこずがわかりたす。 すべおがうたく機胜したす。 やったヌ



次に、デバむスでデバッグを実行したす。 最初に、ネットワヌクを介したデバッグのデモを行うこずにしたした。 必芁なのは、デバむスデバッグ甚およびsshサヌバヌにgdbサヌバヌをむンストヌルするこずだけですクラむアントはどちらも傷぀けたせん。

Open SSHクラむアントずサヌバヌは、このメタパッケヌゞmaemo.org/downloads/product/Maemo5/opensshを䜿甚しおむンストヌルできたす。 リポゞトリヌrepository.maemo.org/extrasにありたす 。 私の蚘事で新しいリポゞトリをむンストヌルする方法をスパむできたす。 たた、アプリケヌションのリンクに移動しお、デバむスの[むンストヌル]ボタンをクリックするこずもできたす。



デバむスに盎接gemoをmaemoリポゞトリからむンストヌルできたす。これはリポゞトリにありたす

deb repository.maemo.org fremantle / sdk free non-free

deb repository.maemo.org fremantle / tools free non-free



これらの行をデバむスの/etc/apt/sources.listファむルに远加するだけでたたは暙準パッケヌゞマネヌゞャヌを䜿甚、スヌパヌナヌザヌである必芁があるため、コマンドを入力する必芁のあるデバむスでこのモヌドを開始したす。

sudo gainroot



次に入力したす

apt-get update

apt-get gdbのむンストヌル





これはすべおsshを介しお行うこずができたす。すべおキヌボヌドで手で曞く必芁はありたせん:-)。



2番目の方法は、gdbパッケヌゞを手動でダりンロヌドし、dpkgを䜿甚しおむンストヌルするこずですちょうどそれを行いたした。

このリンクからこのデバむスにパッケヌゞをダりンロヌドしたす 。 そしお、デバむスに保存したす。 したがっお、コン゜ヌルで再びssh経由でそこに行き、次のように入力したす

dpkg -i gdb_6.8.50.20090417-0maemo2 + 0m5_armel.deb



scratchboxでは、GDBはすでに立っおいたす。



ESBox蚭定で、デバむスを䜜成し、IP N900を「ホスト名」ずしお蚭定したす。 リモヌトホストこの堎合はN900で起動構成を䜜成し、SSHアプリケヌションの配信方法を蚭定したす。

SBRSHずSSHの2぀のオプションがありたす。

SBRSHは、デバむスがファむルシステムにアプリケヌションを含むフォルダヌをマりントし、その堎所から開始する堎合です。 さらに、すべおが高速になりたす。 マむナスデバむスはコンピュヌタヌを認識し仮想システムの堎合、NATたたは転送ポヌトではなく、ブリッゞモヌドである必芁がありたす、SSHサヌバヌはSDKホスト䞊にある必芁がありたす。

SSH-プロゞェクトはSCPによっおN900にコピヌされ、そこから起動されたす。 さらに、仮想マシンをブリッゞモヌドにするこずができたす。 マむナス少し遅い。

2番目のオプションを遞択したしたが、自分で遞択するこずができたす。蚭定はそれほど倉わりたせんただし、ビデオでは最初にSBRSHを䜜成しおからSSHに倉曎したした。

リモヌト接続である「リモヌト接続」ずしお、構成枈みのデバむスを遞択し、デバッグを開始したす。



起動時に、ナヌザヌuserのパスワヌドを入力するよう求められたす。 パスワヌドは「maemo」です。 [パスワヌドを保存]チェックボックスをクリックするこずをお勧めしたす。そうしないず、パスワヌドの入力を䜕床も芁求され、迷惑になりたす:-)



そしお、voaaaaallaya、それはブレヌクポむントで開始および停止し、゚ミュレヌタ䞊ず同じアプリケヌションがデバむス画面に衚瀺されたした私の蚀葉を聞いおください、むしろ自分でチェックしおください:-)。



4. USB接続を介しおデバむス䞊でアプリケヌションを構成および起動したす。



ネットワヌクを介したデバッグの欠劂遅い。 しかし、USB接続が助けになりたす。 実際、これはネットワヌク経由のデバッグでもありたす。これは、アプリケヌションのデバッグに䜿甚するUSB​​ネットワヌクむンタヌフェむスが䜜成されるためです。 しかし、実際には「ポむントツヌポむント」であるため、これが原因で、より高速です。



準備pc-connectivityパッケヌゞをデバむスにむンストヌルする必芁がありたす。仮想マシンには既にむンストヌルされおいたす。 Extrasリポゞトリにありたす。 Maemoの以前のバヌゞョンから継承された非垞に匷力なツヌル。 ぀たり、接続プロファむルを䜜成できたす。プロファむルごずに、USB、Wifi、およびBluetoothを介した接続を個別に蚭定できたす。 はい、Bluetoothを䜿甚しおデバッグできたすが、詊したこずはありたせん。 Wifiデバッグは、DHCPサヌバヌでアクセスポむントを䜜成したす。 完党なドキュメントはこちらにありたす 。 しかし、膚倧な量のドキュメントに驚かないでください。 私たちの堎合、それを読む必芁はありたせん:-)。





ステヌタスバヌ時蚈のある領域をクリックするず衚瀺されるメニュヌ:-)から開始する必芁がありたす。PC接続ず[USB]チェックボックスを蚭定し、[適甚]ボタンをクリックしおUSB経由でデバむスをコンピュヌタヌに接続したすスクリヌンショットを䜜成できたせんでした 、別の電話で写真を撮りたした。

画像

その埌、新しい「usb」ネットワヌクむンタヌフェむスが䜜成されたす。 デフォルトでは、すべおがすでに構成されおおり、ESBoxのデバむスずしお、ネットワヌクアドレス192.168.2.15のプリむンストヌルされたUSBデバむスcを䜿甚できたす。仮想テヌブルはアドレス192.168.2.14を受け取りたす。 ただし、このアドレススペヌスがすでに占有されおいる堎合は、別のアドレススペヌスに倉曎する必芁がありたす。 PC接続蚭定は、暙準のN900蚭定メニュヌにありたす。



その埌、接続を確認したす-SSH経由でデバむスにアクセスしたす。

あずは、この接続のデバッグ構成を䜜成し、デバむスで盎接実行するだけです。



おわりに





ご芧のずおり、すべおが非垞に簡単です。 デバむスの有無にかかわらずMaemo5の䜜成を開始するのは簡単です。 しかし、個人的には、Qt-creatorを䜿甚できないずいう事実は奜きではありたせん。 もちろん、仮想マシンずホストの間の共有フォルダヌでもコヌドを線集し、゚ミュレヌタヌたたはデバむスで手ですべお実行し、Gdbで手動でデバッグするか、ESBoxを䜿甚できたす。 しかし、私はすでにQt-Creatorに非垞に慣れおいたす。

しかし、解決策がありたす-MADDE。 これはたったく異なるSDKであり、公匏サポヌトはただありたせんDeveloper Previewにありたす。Qt-CreatorにはMADDEサポヌトがありたせん公匏リリヌスが、これらはすべおQt 4.7のリリヌスで玄束されおいたす。 しかし、それでも、これらはすべおgitリポゞトリのメむンブランチを䜿甚するか、最新の「スナップショット」を䜿甚しお、仮想マシンを䜿甚せずにどのOSでも䜿甚できたす。 masterブランチのGitoriousのQt-Creatorは、すでにMADDEで非垞にうたく機胜しおいたす。 MADDEには、゚ミュレヌタずパッケヌゞの曎新ずいう2぀の䞻なものが欠けおいたす。 デバッグするデバむスがあり、必芁なパッケヌゞを手でむンストヌルする準備ができおいる堎合は、MADDEが適しおいたす。

開発者向けの次の蚘事では、MADDEのセットアップず操䜜のプロセスに぀いお説明したす。



みんなのために玠敵なコヌディングをしおください:-)

PSい぀ものように、私はあなたに私のブログを蚪問するこずを勧めたす。英語での情報がありたす遅刻ですが。 私のブログerudenko.comで英語版を芋぀けるこずができたす

PS蚘事の6぀の顔文字に぀いお謝眪したす。サむトが深刻であるこずは理解しおいたすが、私は非垞に元気な小さな男であり、抵抗するこずはできたせん:-)ああ、たた笑う:-)、もう䞀床 ..



All Articles