1 |
1 |
2 Using SDL under Windows with the OpenWatcom compiler |
2 Using SDL 1.3 under Windows with the OpenWatcom compiler |
|
3 |
3 ==================================================== |
4 ==================================================== |
4 |
5 |
5 Prerequisites |
6 Prerequisites |
6 ------------- |
7 ------------- |
7 |
8 |
8 I have done the port under Windows XP Home with SP2 installed. Windows |
9 I have done the port under Windows XP Professional with SP2 installed. |
9 2000 should also be working. I'm not so sure about ancient Windows NT, |
10 Windows 2000 should also be working. I'm not so sure about ancient Windows NT, |
10 since only DirectX 3 is available there. Building should be possible, |
11 since only DirectX 3 is available there. Building should be possible, |
11 but running the compiled applications will probalbly fail with |
12 but running the compiled applications will probalbly fail with |
12 SDL_VIDEODRIVER=directx. The windib driver should work, though. |
13 SDL_VIDEODRIVER=directx. The windib driver should work, though. |
13 |
14 |
14 To compile and use the SDL with Open Watcom you will need the following: |
15 To compile and use the SDL with Open Watcom you will need the following: |
15 - Open Watcom compiler. I used version 1.5. The environment variables |
16 - Open Watcom compiler. I used version 1.8. The environment variables |
16 PATH, WATCOM and INCLUDE need to be set appropriately - please consult |
17 PATH, WATCOM and INCLUDE need to be set appropriately - please consult |
17 the OpenWatcom documentation and instructions given during the |
18 the OpenWatcom documentation and instructions given during the |
18 installation of the compiler. |
19 installation of the compiler. |
19 My setup looks like this in owvars.bat: |
20 My setup looks like this in owvars.bat: |
20 set WATCOM=C:\watcom |
21 set WATCOM=C:\dev\ow18 |
21 set INCLUDE=%WATCOM%\h;%WATCOM%\h\nt |
22 set INCLUDE=%WATCOM%\h;%WATCOM%\h\nt |
22 set PATH=%PATH%;%WATCOM%\binnt;%WATCOM%\binw |
23 set PATH=%PATH%;%WATCOM%\binnt;%WATCOM%\binw |
23 - A fairly recent DirectX SDK. The original unmodified DX8 SDK works, as |
24 - A recent DirectX SDK. The library needs D3d9.h so at leat the |
24 well as the minimal DirectX 7 SDK from the Allegro download site |
25 directx 9 sdk is to be used. I used DirectX 10 SDK from August 2009 |
25 (<http://alleg.sourceforge.net/files/dx70_min.zip>). |
26 taken directly from the microsoft site. |
26 - The SDL sources from Subversion |
27 - The SDL 1.3 sources from Subversion |
27 - The file Watcom-Win32.zip (now available in Subversion) |
28 - The file Watcom-Win32.zip (now available in Subversion) |
28 |
29 |
29 |
30 |
30 Building the Library |
31 Building the Library |
31 -------------------- |
32 -------------------- |
32 |
33 |
33 1) In the SDL base directory extract the archive Watcom-Win32.zip. This |
34 1) In the SDL base directory extract the archive Watcom-Win32.zip. This |
34 creates a subdirectory named 'watcom'. |
35 creates a subdirectory named 'watcom'. |
35 2) The makefile expects the environment variable DXDIR to be set to the |
36 2) The makefile expects the environment variable DXDIR to be set to the |
36 base directory of a DirectX SDK. I have tried a stock DX8 SDK from |
37 base directory of a DirectX SDK. I have tried the August 2009 |
37 Microsoft as well as the minimal DirectX 7 SDK from the Allegro |
38 DirectX SDK from Microsoft |
38 download site. |
|
39 You can also edit the makefile directly and hard code your path to |
39 You can also edit the makefile directly and hard code your path to |
40 the SDK on your system. |
40 the SDK on your system. |
41 I have this in my setup: |
41 I have this in my setup: |
42 set DXDIR=D:\devel\DX8_SDK |
42 set DXDIR=..\dx10 |
43 3) Enter the watcom directory and run |
43 3) Enter the watcom directory and run |
44 wmake sdl |
44 wmake sdl |
45 4) All tests from the test directory are working and can be built by |
45 4) All tests from the test directory are working and can be built by |
46 running |
46 running |
47 wmake tests |
47 wmake tests |