WinCE for WindowsからPOCOをクロスコンパイルします

POCOは、マルチプラットフォームソフトウェアの作成を容易にする、C ++ライブラリとクラスの軽量でマルチプラットフォームのオープンソースセットです。
Boostソフトウェアライセンスで利用可能。
POCOに関する追加情報:
pocoproject.org/features.html
en.wikipedia.org/wiki/POCO
よく整理されたクラス構造のドキュメントは、html-online、html-offlineで入手できます。
主な機能のドキュメントと使用例-pdfpocoproject.org/documentation/index.html

POCOには最も豊富な機能があります-多く-すべて、C ++プログラマーの幸せな生活に必要なすべて! このツールキットは完璧に機能し、よく考え抜かれたAPIを備えています。

POCOは、次のような多数のオペレーティングシステムを対象としています。 デスクトップWindows、Windows CE、Linux。

私自身の経験から、POCOは問題なくこれらのOSで動作することに注意してください。
私の3つの記事「Cross-compile POCO from Windows」で、これらのOS向けのWindowsからのクロスプラットフォームアセンブリの方法論を伝えようとしています。

記事「Linux for WindowsのPOCOをクロスコンパイルする」 habrahabr.ru/post/222661

WinCEカスタムSDK用にWindowsからPOCOをクロスコンパイルします


ここで強調されているメソッドは開発されました:
-XACターミナルのWindows CE SDK(ARM9、Windows CE 6.0)
-Windows 7 64ホストマシン
-Visual Studio 2008からのPOCOビルド
-POCO Basic Edition 1.4.6p4

IDEおよびSDKの準備

小さな教育プログラム:
-私が持っている情報によると、VS2005またはVS2008はWindows CEでの開発とデバッグに使用されます
-Windows CEデバイスを使用したプログラムのデバッグは、特別なActiveSyncツール「Windows Mobile Device Center」を使用して実行されます
詳細については、wiki: ru.wikipedia.org/wiki/ActiveSyncをご覧ください。ActiveSyncの操作は簡単です。WindowsMo​​bileデバイスをUSB経由でホストマシンに接続すると、ActiveSyncはデバイスを転送します。 これで、エクスプローラでファイルシステムを開くか、Visual Studio 2008からプログラムをデバッグできます。

1.次のプログラムを順次ダウンロードしてインストールします。
Microsoft Visual Studio 2008 Professional "Visual Studio 2008 Professional.zip" rutracker.org
Microsoft Visual Studio 2008 sp1 "VS90sp1-KB945140-ENU.exe" www.microsoft.com/en-us/download/details.aspx?id=10986
Windows Mobile 6 SDK "Windows Mobile 6 Professional SDK Refresh.msi" www.microsoft.com/en-us/download/details.aspx?id=6135
Windows Mobile 6.1 SDK "Windows Mobile 6.1 Emulator Images" www.microsoft.com/en-us/download/details.aspx?id=16182

2.デバイスのカスタムSDKをダウンロードしてインストールします。
たとえば、私にとって: "SAIO_CE60_SDK_R16.msi"ハードウェアメーカーからダウンロードしました。
しかし! 特別なSDKが見つからない場合は、Microsoftからダウンロードした標準のWindows Mobile SDKでコンパイルされたプログラムを実行できます。
標準SDKは、デバイスと同じバージョンのWindows CEである必要があります。

3.デバイスの検出を確認します。
デバイスがUSBで検出されると、ActiveSyncが自動起動するはずです。 Windows 7では、「ポータブルデバイス」サブカテゴリが「コンピュータ」カテゴリに表示されます。 これにより、WindowsCEデバイスのファイルシステムを表示できます。

4.デバイスのプログラムの起動とデバッグを確認します。
デバイスはステップ3に従って接続する必要があります。VS2008を開くと、ウィザードによってプロジェクト「VisualC ++」->「Win32 Smart Device Project」が作成されます。
画像
F5キーを押してコンパイルして実行します。 デバイスでWin32テストアプリケーションが正常に実行されるはずです。

デバイスのSDK環境バッチファイルを準備する

POCOはコンソールから構築されます。 アセンブリする前に、環境変数をデバイスのSDK環境に構成する必要があります。
バッチファイルは、モデルに従って手動で作成することも、自動的に生成することもできます。
サンプル
@echo off
echo Environment Selection:SAIO_CE60_SDK_R16 (ARMV4I)
set PATH=C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\ce\bin\x86_arm;C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin;$(WindowsSdkDir)\bin;C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\Tools;C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE;C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common\Tools;C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common\IDE;C:\Program Files (x86)\Microsoft Visual Studio 9.0\;$(FrameworkSDKDir)Bin;%PATH%
set INCLUDE=C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\ce\include;C:\SAIO_CE60_SDK_R16\include\ARMV4I;C:\SAIO_CE60_SDK_R16\include;C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\ce\atlmfc\include;C:\Program Files (x86)\Microsoft Visual Studio 9.0\SmartDevices\SDK\SQL Server\Mobile\v3.0
set LIB=C:\SAIO_CE60_SDK_R16\lib\ARMV4I;C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\ce\atlmfc\lib\ARMV4I;C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\ce\lib\ARMV4I


自動作成
Qtツールキットのchecksdk.exeユーティリティを使用する方が便利です。 このユーティリティは、Sdkシステムにインストールされている名前を表示し、選択したSDKの環境変数を設定するためのスクリプトを生成するために使用されます。 必要なものだけ。
-WindowsCE qt-project.org/downloadsの Qtアーカイブをダウンロードします。この記事の執筆時点では、「Windows CE用Qtライブラリ4.8.6(269 MB)(情報)」のバージョンです。
-どこかで解凍し、/ binディレクトリにchecksdk.exeユーティリティを見つけます
-VS2008 "Visual Studio 2008 x64 Cross Toolsコマンドプロンプト"シェルを開きます
画像

-checksdk.exeユーティリティを使用して現在のディレクトリをインストールする
checksdk.exe -listを実行し、インストールされているSDKのchecksdk.exe -listを確認します。
画像

-選択したSDKのバッチ環境ファイルを作成します。
checksdk.exe -sdk "SAIO_CE60_SDK_R16 (ARMV4I)" -script wm6.bat

POCOの準備

1. POCOでディレクトリを準備します。
-pocoproject.org/download/index.htmlからBasic Editionの最新の安定バージョンのPOCOアーカイブをダウンロードします。 「Linux、OS Xなどのソース」ボタン。 執筆時点では、アーカイブはpoco-1.4.6p4.tar.gz
-別のディレクトリにアーカイブします。 たとえば、WinRARを使用し、 C:/poco/poco-1.4.6p4-wince-SAIO_CE60_SDK_R16ディレクトリでC:/poco/poco-1.4.6p4-wince-SAIO_CE60_SDK_R16ダッシュを使用してSDKの名前を示し、POCOのバージョンを区別します。

2.バッチSDK環境ファイルをPOCOディレクトリのルートにコピーします。

3.テキストを検索および置換するためのプログラムを使用して、POCOディレクトリーで、以下を置き換えます。
-カスタムSDKの名前に含まれるDigi JumpStart (ARMV4I)すべての出現。例: SAIO_CE60_SDK_R16 (ARMV4I)
-すべての文字列の出現: <locale.h>
qfreplace i-vd.org.ru/soft/qfreplace.shtml

4. .
buildwin.
POCO build_CE_vs90.cmd , buildwin .
, ,
build_CE_vs90-all.cmd :
@echo off
buildwin 90 build all both WinCE samples

POCO
1. VS2008. Visual Studio 2008 x64 Win64 Command Prompt
画像


2. POCO :
cd C:/poco/poco-1.4.6p4-wince-SAIO_CE60_SDK_R16

3. SDK. :
wm6.bat

4. POCO. :
build_CE_vs90-all.cmd

:
\bin\__sdk
\lib\__sdk
:
\bin\SAIO_CE60_SDK_R16 (ARMV4I)
\lib\SAIO_CE60_SDK_R16 (ARMV4I)


"POCO C++ Libraries GNU Make Build System" pocoproject.org/docs/99150-GMakeBuildNotes.html
"Building On Windows" pocoproject.org/docs/00200-GettingStarted.html

***

++ . , !

.
<locale.h>
qfreplace i-vd.org.ru/soft/qfreplace.shtml

4. .
buildwin.
POCO build_CE_vs90.cmd , buildwin .
, ,
build_CE_vs90-all.cmd :
@echo off
buildwin 90 build all both WinCE samples

POCO
1. VS2008. Visual Studio 2008 x64 Win64 Command Prompt
画像


2. POCO :
cd C:/poco/poco-1.4.6p4-wince-SAIO_CE60_SDK_R16

3. SDK. :
wm6.bat

4. POCO. :
build_CE_vs90-all.cmd

:
\bin\__sdk
\lib\__sdk
:
\bin\SAIO_CE60_SDK_R16 (ARMV4I)
\lib\SAIO_CE60_SDK_R16 (ARMV4I)


"POCO C++ Libraries GNU Make Build System" pocoproject.org/docs/99150-GMakeBuildNotes.html
"Building On Windows" pocoproject.org/docs/00200-GettingStarted.html

***

++ . , !

.
<locale.h>
qfreplace i-vd.org.ru/soft/qfreplace.shtml

4. .
buildwin.
POCO build_CE_vs90.cmd , buildwin .
, ,
build_CE_vs90-all.cmd :
@echo off
buildwin 90 build all both WinCE samples

POCO
1. VS2008. Visual Studio 2008 x64 Win64 Command Prompt
画像


2. POCO :
cd C:/poco/poco-1.4.6p4-wince-SAIO_CE60_SDK_R16

3. SDK. :
wm6.bat

4. POCO. :
build_CE_vs90-all.cmd

:
\bin\__sdk
\lib\__sdk
:
\bin\SAIO_CE60_SDK_R16 (ARMV4I)
\lib\SAIO_CE60_SDK_R16 (ARMV4I)


"POCO C++ Libraries GNU Make Build System" pocoproject.org/docs/99150-GMakeBuildNotes.html
"Building On Windows" pocoproject.org/docs/00200-GettingStarted.html

***

++ . , !

.
<locale.h>
qfreplace i-vd.org.ru/soft/qfreplace.shtml

4. .
buildwin.
POCO build_CE_vs90.cmd , buildwin .
, ,
build_CE_vs90-all.cmd :
@echo off
buildwin 90 build all both WinCE samples

POCO
1. VS2008. Visual Studio 2008 x64 Win64 Command Prompt
画像


2. POCO :
cd C:/poco/poco-1.4.6p4-wince-SAIO_CE60_SDK_R16

3. SDK. :
wm6.bat

4. POCO. :
build_CE_vs90-all.cmd

:
\bin\__sdk
\lib\__sdk
:
\bin\SAIO_CE60_SDK_R16 (ARMV4I)
\lib\SAIO_CE60_SDK_R16 (ARMV4I)


"POCO C++ Libraries GNU Make Build System" pocoproject.org/docs/99150-GMakeBuildNotes.html
"Building On Windows" pocoproject.org/docs/00200-GettingStarted.html

***

++ . , !

.
<locale.h>
qfreplace i-vd.org.ru/soft/qfreplace.shtml

4. .
buildwin.
POCO build_CE_vs90.cmd , buildwin .
, ,
build_CE_vs90-all.cmd :
@echo off
buildwin 90 build all both WinCE samples

POCO
1. VS2008. Visual Studio 2008 x64 Win64 Command Prompt
画像


2. POCO :
cd C:/poco/poco-1.4.6p4-wince-SAIO_CE60_SDK_R16

3. SDK. :
wm6.bat

4. POCO. :
build_CE_vs90-all.cmd

:
\bin\__sdk
\lib\__sdk
:
\bin\SAIO_CE60_SDK_R16 (ARMV4I)
\lib\SAIO_CE60_SDK_R16 (ARMV4I)


"POCO C++ Libraries GNU Make Build System" pocoproject.org/docs/99150-GMakeBuildNotes.html
"Building On Windows" pocoproject.org/docs/00200-GettingStarted.html

***

++ . , !

.
<locale.h>
qfreplace i-vd.org.ru/soft/qfreplace.shtml

4. .
buildwin.
POCO build_CE_vs90.cmd , buildwin .
, ,
build_CE_vs90-all.cmd :
@echo off
buildwin 90 build all both WinCE samples

POCO
1. VS2008. Visual Studio 2008 x64 Win64 Command Prompt
画像


2. POCO :
cd C:/poco/poco-1.4.6p4-wince-SAIO_CE60_SDK_R16

3. SDK. :
wm6.bat

4. POCO. :
build_CE_vs90-all.cmd

:
\bin\__sdk
\lib\__sdk
:
\bin\SAIO_CE60_SDK_R16 (ARMV4I)
\lib\SAIO_CE60_SDK_R16 (ARMV4I)


"POCO C++ Libraries GNU Make Build System" pocoproject.org/docs/99150-GMakeBuildNotes.html
"Building On Windows" pocoproject.org/docs/00200-GettingStarted.html

***

++ . , !

.

Source: https://habr.com/ru/post/J223157/


All Articles