docs: Adding build documentation for Android systems.
[barry.git] / wince / README
blob5a6e7f77b61d1e1f2b8f405e63a85d521bc8b5ef
1 Building:
2 ---------
4 You'll need to have the following defined:
6  * LIBUSB_PREBUILT_DIR - To a pre-built Win32/WinCE build of libusb. This should contain an include directory and one or more of MS32, MS64 and WinCE_STD500_ARMV4I.
7  * PTHREADS-WIN32_PREBUILT_DIR - To a pre-built Win32/WinCE build of pthreads-win32. This should contain an include directory and one or more of MS32, MS64 and WinCE_STD500_ARMV4I
8  * BOOST_SRC_PATH - Pointing to extracted boost source; i.e. the directory containing the "boost" directory.
9  * STLPORT_PREBUILT_DIR - To a pre-built Win32/WinCE build of STLPort. This should contain an include directory and one or more of MS32, MS64 and WinCE_STD500_ARMV4I
11 When running barry you'll also need the following libraries in your PATH:
13  * libusb-1.0.so - from LIBUSB_PREBUILT_DIR
14  * pthreadVC2.dll, pthreadVC2d.dll - from PTHREADS-WIN32_PREBUILT_DIR
15  * stlport.5.2.dll, stlportd.5.2.dll - from STLPORT_PREBUILT_DIR
16  * msvcr80.dll, msvcr80d.dll - from your Visual Studio install, usually found in
17                         %PROGRAMFILES%\Microsoft Visual Studio 8\vc\ce\dll\%ARCH%
19 Extracting boost 1.49.0:
20 ------------------------
22 1. Download:
23    http://downloads.sourceforge.net/project/boost/boost/1.49.0/boost_1_49_0.tar.bz2?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fboost%2Ffiles%2Fboost%2F1.49.0%2F&ts=1335266401&use_mirror=switch
25 2. Extract to BOOST_SRC_PATH
27 Building pthreads-win32:
28 ------------------------
30 1. cvs -d :pserver:anonymous@sourceware.org:/cvs/pthreads-win32 checkout -D "20120423" pthreads
32 2. Apply the patch contained in "pthreads_patch_20120423.diff"
34 3. Add the following environment variables, pointing to the CE build tool paths:
35   set PATH=%PROGRAMFILES%\Microsoft Visual Studio 8\vc\ce\bin\x86_arm;%PROGRAMFILES%\Microsoft Visual Studio 8\VC\bin;%PROGRAMFILES%\Microsoft Visual Studio 8\Common7\IDE;%PATH%
36   set INCLUDE=%PROGRAMFILES%\Windows CE Tools\wce500\STANDARDSDK_500\Include\Armv4i\;C:\src\pthreads
37   set LIB=%PROGRAMFILES%\Windows CE Tools\wce500\STANDARDSDK_500\Lib\ARMV4I;%PROGRAMFILES%\Microsoft Visual Studio 8\vc\ce\lib\armv4;%PROGRAMFILES%\Microsoft Visual Studio 8\VC\ATLMFC\LIB;%PROGRAMFILES%\Microsoft Visual Studio 8\VC\LIB;%PROGRAMFILES%\Microsoft Visual Studio 8\VC\PlatformSDK\lib;%PROGRAMFILES%\Microsoft Visual Studio 8\SDK\v2.0\lib;
39 4. Compile the code with:
40   nmake clean VC 
42 5. Move the built files to the correct location:
43   set ARCH=WinCE_STD500_ARMV4I
44   md %PTHREADS-WIN32_PREBUILT_DIR%\include
45   copy pthread.h %PTHREADS-WIN32_PREBUILT_DIR%\include
46   copy sched.h %PTHREADS-WIN32_PREBUILT_DIR%\include
47   copy semaphore.h %PTHREADS-WIN32_PREBUILT_DIR%\include
48   copy need_errno.h %PTHREADS-WIN32_PREBUILT_DIR%\include
49   md %PTHREADS-WIN32_PREBUILT_DIR%\%ARCH%
50   md %PTHREADS-WIN32_PREBUILT_DIR%\%ARCH%\dll
51   copy pthread*.dll %PTHREADS-WIN32_PREBUILT_DIR%\%ARCH%\dll
52   copy pthread*.lib %PTHREADS-WIN32_PREBUILT_DIR%\%ARCH%\dll
54 11. Edit %PTHREADS-WIN32_PREBUILT_DIR%\include\need_errno.h so that it has
55        "#include <winsock2.h>" instead of "#include <winsock.h>"
57 Building STLPort 5.2.1:
58 -----------------------
60 1. Download:
62   http://downloads.sourceforge.net/project/stlport/STLport/STLport-5.2.1/STLport-5.2.1.tar.bz2?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fstlport%2F&ts=1335280874&use_mirror=freefr
64 2. Extract somewhere.
66 3. Run the following from the STLport directory:
67   set PATH=%PROGRAMFILES%\Microsoft Visual Studio 8\vc\ce\bin\x86_arm;%PROGRAMFILES%\Microsoft Visual Studio 8\VC\bin;%PROGRAMFILES%\Microsoft Visual Studio 8\Common7\IDE;%PATH%
68   set INCLUDE=%PROGRAMFILES%\Windows CE Tools\wce500\STANDARDSDK_500\Include\Armv4i\;%PROGRAMFILES%\Windows CE Tools\wce500\STANDARDSDK_500\Include\MFC\include;%PROGRAMFILES%\Windows CE Tools\wce500\STANDARDSDK_500\Include\ATL\include
69   set LIB=%PROGRAMFILES%\Windows CE Tools\wce500\STANDARDSDK_500\Lib\ARMV4I;%PROGRAMFILES%\Windows CE Tools\wce500\STANDARDSDK_500\MFC\Lib\ARMV4I;%PROGRAMFILES%\Windows CE Tools\wce500\STANDARDSDK_500\ATL\Lib\ARMV4I;%PROGRAMFILES%\Microsoft Visual Studio 8\vc\ce\lib\armv4
70   set TARGETCPU=ARMV4I
71   configure evc8
72   cd build\lib
73   nmake clean install
74   
75   REM Move the built files to the correct location:
76   cd ..\..
77   set ARCH=WinCE_STD500_ARMV4I
78   md %STLPORT_PREBUILT_DIR%\include
79   xcopy /S /Y stlport\* %STLPORT_PREBUILT_DIR%\include
80   del %STLPORT_PREBUILT_DIR%\include\pthread.h
81   del %STLPORT_PREBUILT_DIR%\include\signal.h
82   del %STLPORT_PREBUILT_DIR%\include\cstddef
83   md %STLPORT_PREBUILT_DIR%\%ARCH%
84   md %STLPORT_PREBUILT_DIR%\%ARCH%\dll
85   copy bin\evc8-arm\*.dll %STLPORT_PREBUILT_DIR%\%ARCH%\dll
86   copy lib\evc8-arm\*.lib %STLPORT_PREBUILT_DIR%\%ARCH%\dll