Frage

Ich programmiere für ein eingebettetes Gerät mit einem NVIDIA Tegra 2 unter Windows Embedded Compact 7. Meine Entwicklungsumgebung ist Microsoft Visual Studio 2008. Die Boost-Bibliothek und insbesondere das Boost-Asio-Paket scheinen für meine Anforderungen sehr hilfreich zu sein.Leider konnte ich keine gute Anleitung finden, wie Boost unter Windows Embedded Compact 7 ausgeführt werden kann. Ich würde es vorziehen, .lib-Dateien zu erhalten, die ich statisch mit meiner Anwendung verknüpfen kann.

War es hilfreich?

Lösung

Es scheint, dass die Dokumentation zu diesem Prozess spärlich ist, da nicht triviale Aktualisierungen des Erstellungsprozesses erforderlich sind, um mit Windows CE arbeiten zu können. Das umfassendste Tutorial zu diesem Problem scheint hier zu sein.

Da Sie diesen boost-asio explizit markiert haben, habe ich mich auch speziell mit dieser Komponente von Boost befasst. Hier ist ein Thread aus der Boost-Mailingliste , der diese Bibliothek abdeckt Im Detail, einschließlich potenzieller Fehlerfälle, die auftreten können, Änderungen an JAM-Dateien und eine Batchdatei, die Ihnen bei der Build . *

Für diejenigen, die dies lesen: Bitte teilen Sie Ihre Erfahrungen mit, sobald dies funktioniert. Trotz verschiedener Bedenken, dass Boost für eingebettete Anwendungen zu speicherintensiv ist, Boost bietet die Möglichkeit, separate Pakete zu verwenden, um Ihre Anforderungen zu erfüllen. Ich gehe davon aus, dass andere Benutzer von SO sehr an Ihren Erfahrungen interessiert sind, damit dies funktioniert.


* Da die Benutzer Probleme mit dem Verschwinden der referenzierten Batchdatei zum Ausdruck gebracht haben, wenn Nabble-Links ablaufen, ist hier ein Pastedump für die Nachwelt:

@SET VCINSTALLDIR=%VS9INSTALLDIR%\VC 
@if "%VS9INSTALLDIR%"=="" goto error_no_VSINSTALLDIR 
@if "%VCINSTALLDIR%"=="" goto error_no_VCINSTALLDIR 

@echo Setting environment for using Microsoft Visual Studio 2008 tools for WM5. 
@set TARGETCPU=X86 

@call :GetWindowsSdkDir 

@if not "%WindowsSdkDir%" == "" ( 
        set "PATH=%WindowsSdkDir%bin;%PATH%" 
) 

@rem 
@rem Root of Visual Studio IDE installed files. 
@rem 
@set DevEnvDir=%VS9INSTALLDIR%\Common7\IDE 

@set PATH=%VCINSTALLDIR%\CE\bin\x86_arm;%VCINSTALLDIR%\bin;%VS9INSTALLDIR%\Common7\Tools;%DevEnvDir%;%VS9INSTALLDIR%\Common\Tools;%VS9INSTALLDIR%\Common\IDE;%VS9INSTALLDIR%;%PATH% 
@set INCLUDE=%STLPORT_PATH%\STLPort-5.2.1\stlport;%VCINSTALLDIR%\ce\include;%CETOOLS%\Windows Mobile 5.0 Pocket PC SDK\include\ARMV4I;%CETOOLS%\Windows Mobile 5.0 Pocket PC SDK\include;%VCINSTALLDIR%\ce\atlmfc\include 
@set LIB=%STLPORT_PATH%\STLPort-5.2.1\lib\evc9-arm;%CETOOLS%\Windows Mobile 5.0 Pocket PC SDK\lib\ARMV4I;%VCINSTALLDIR%\ce\ATLMFC\LIB\ARMV4I;%VCINSTALLDIR%\ce\LIB\ARMV4I 
@set LIBPATH= 

@goto end 

:GetWindowsSdkDir 
@call :GetWindowsSdkDirHelper HKLM > nul 2>&1 
@if errorlevel 1 call :GetWindowsSdkDirHelper HKCU > nul 2>&1 
@if errorlevel 1 set WindowsSdkDir=%VCINSTALLDIR%\PlatformSDK\ 
@exit /B 0 

:GetWindowsSdkDirHelper 
@for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Microsoft\Microsoft SDKs\Windows" /v "CurrentInstallFolder"') DO ( 
        if "%%i"=="CurrentInstallFolder" ( 
                SET "WindowsSdkDir=%%k" 
        ) 
) 
@if "%WindowsSdkDir%"=="" exit /B 1 
@exit /B 0 


:error_no_VSINSTALLDIR 
@echo ERROR: VS9INSTALLDIR variable is not set. 
@goto end 

:error_no_VCINSTALLDIR 
@echo ERROR: VCINSTALLDIR variable is not set. 
@goto end 

:end 

@SET VCINSTALLDIR=%VS9INSTALLDIR%\VC 
@SET FrameworkDir=C:\WINDOWS\Microsoft.NET\Framework 
@SET FrameworkVersion=v2.0.50727 
@SET Framework35Version=v3.5 
@if "%VS9INSTALLDIR%"=="" goto error_no_VSINSTALLDIR 
@if "%VCINSTALLDIR%"=="" goto error_no_VCINSTALLDIR 

@echo Setting environment for using Microsoft Visual Studio 2008 x86 tools with STLport-5.2.1. 

@call :GetWindowsSdkDir 

@if not "%WindowsSdkDir%" == "" ( 
        set "PATH=%WindowsSdkDir%bin;%PATH%" 
        set "INCLUDE=%WindowsSdkDir%include;%INCLUDE%" 
        set "LIB=%WindowsSdkDir%lib;%LIB%" 
) 


@rem 
@rem Root of Visual Studio IDE installed files. 
@rem 
@set DevEnvDir=%VS9INSTALLDIR%\Common7\IDE 

@set PATH=%DevEnvDir%;%VCINSTALLDIR%\BIN;%VS9INSTALLDIR%\Common7\Tools;%FrameworkDir%\%Framework35Version%;%FrameworkDir%\%FrameworkVersion%;%VCINSTALLDIR%\VCPackages;%PATH% 
@set INCLUDE=%STLPORT_PATH%\STLport-5.2.1\stlport;%VCINSTALLDIR%\ATLMFC\INCLUDE;%VCINSTALLDIR%\INCLUDE;%INCLUDE% 
@set LIB=%STLPORT_PATH%\STLport-5.2.1\lib\vc9;%VCINSTALLDIR%\ATLMFC\LIB;%VCINSTALLDIR%\LIB;%LIB% 
@set LIBPATH=%FrameworkDir%\%Framework35Version%;%FrameworkDir%\%FrameworkVersion%;%VCINSTALLDIR%\ATLMFC\LIB;%VCINSTALLDIR%\LIB;%LIBPATH% 

@goto end 

:GetWindowsSdkDir 
@call :GetWindowsSdkDirHelper HKLM > nul 2>&1 
@if errorlevel 1 call :GetWindowsSdkDirHelper HKCU > nul 2>&1 
@if errorlevel 1 set WindowsSdkDir=%VCINSTALLDIR%\PlatformSDK\ 
@exit /B 0 

:GetWindowsSdkDirHelper 
@for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Microsoft\Microsoft SDKs\Windows" /v "CurrentInstallFolder"') DO ( 
        if "%%i"=="CurrentInstallFolder" ( 
                SET "WindowsSdkDir=%%k" 
        ) 
) 
@if "%WindowsSdkDir%"=="" exit /B 1 
@exit /B 0 

:error_no_VSINSTALLDIR 
@echo ERROR: VSINSTALLDIR variable is not set. 
@goto end 

:error_no_VCINSTALLDIR 
@echo ERROR: VCINSTALLDIR variable is not set. 
@goto end 

:end 

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top