# HG changeset patch # User Sam Lantinga # Date 1057022307 0 # Node ID de622b7108bf34f50abd5cfe35a3acfe5db874b7 # Parent df178851293b816ea2b8c20e25027bbf068d5c41 *** empty log message *** diff -r df178851293b -r de622b7108bf Borland.html --- a/Borland.html Sat Jun 28 21:52:26 2003 +0000 +++ b/Borland.html Tue Jul 01 01:18:27 2003 +0000 @@ -2,136 +2,138 @@ Building SDL with Borland's C++ compilers - + - +

Building SDL with Borland's C++ compilers.

- by David Snopek - and updated by Dominique - Louis.
-
- These instructions cover how to compile SDL and its included test programs - using either Borland C++ Builder 5, 6 for Windows, -C++ Builder for Linux ( AKA Kylix 3 ) or the free by David Snopek + and updated by Dominique + Louis ( Last updated : 30th June 2003 ).
+
+ These instructions cover how to compile SDL and its included test +programs using either Borland C++ Builder 5, 6 for Windows, + C++ Builder for Linux ( AKA Kylix 3 ) or the free Borland C++ command-line compiler.
- +

Extract the files

- +

Unzip the Borland.zip archive into this directory. Do not unzip - it into any other directory because the makefiles ( *.mak ) and project -files ( *.bpr ) use relative paths to refer to the SDL sources. This should -create a directory named "Borland" inside of the top level SDL source directory. -

- + it into any other directory because the makefiles ( *.mak ) and project + files ( *.bpr ) use relative paths to refer to the SDL sources. This should + create a directory named "Borland" inside of the top level SDL source directory. +

+

Using Borland C++ Builder 5, 6 for Windows

- +

Inside of the "Borland" directory there is a "bcb6" directory that contains - a number of Builder project files. Double-click on the "libSDL.bpg" file - icon. Once Builder has started click on the "Projects" menu on the - menu-bar and go down to "Build All Projects" option.
- This will proceed to build SDL ( with Borland's calling convention ), SDLmain, -and all the test programs. Currently, all the test programs -are dynamically linked to Sam Lantinga's SDL.dll.

- + a number of Builder project files. Double-click on the "libSDL.bpg" file + icon. Once Builder has started click on the "Projects" menu on +the menu-bar and go down to "Build All Projects" option.
+ This will proceed to build SDL ( with Borland's calling convention ), +SDLmain, and all the test programs. Currently, all +the test programs are dynamically linked to Sam Lantinga's +SDL.dll.

+

NOTE : Borland's "lib" format and Microsoft's "lib" format are incompatible.  
- If you wish to dynamically link to the SDL library supplied by Sam Lantinga -in each release, I have created the correct *.libs for SDL 1.2.4 and they -exist in the "/lib" directory.
- If you would like to create the *.lib files yourself, you will need to make -use of Borland's "implib.exe" utility.
-

- + If you wish to dynamically link to the SDL library supplied by Sam Lantinga + in each release, I have created the correct *.libs for SDL 1.2.4 and they + exist in the "/lib" directory.
+ If you would like to create the *.lib files yourself, you will need to +make use of Borland's "implib.exe" utility.
+

+

IMPLIB works like this:

- +
    IMPLIB (destination lib name) (source dll)
- +

For example,

- +
    IMPLIB SDL.lib SDL.dll
- +

This assumes that SDL.dll was compiled with Visual C++ or similar.
-

- +

+

To learn more about the difference between Borland's and Microsoft's *.lib -format please read the article here.
-

- +

+


- NOTE :
The C++ Builder for Windows project format, is not compatible -with the Kylix 3 project format, hence the reason why they are in separate -directories.

- + NOTE : The C++ Builder for Windows project format, is not compatible + with the Kylix 3 project format, hence the reason why they are in separate + directories.

+

Using the free Borland C++ command-line compiler -

- + +

The free Borland compiler can be downloaded at no charge from the Borland website - . Make sure that it is installed and properly configured.

- + . Make sure that it is installed and properly configured.

+

Open an MS-DOS Prompt. Change to the "Borland\freebcc" directory under - the SDL source directory. Type "make -f SDL.mak" to build SDL and "make - -f SDLmain.mak". There are also makefiles for all of the test programs, if you wish to build them.

- + the SDL source directory. Type "make -f SDL.mak" to build SDL and "make + -f SDLmain.mak". There are also makefiles for all of the test programs, if you wish to build them. All .exes and +DLLs are created in the "test" SDL directory. Ify ou would like to create +the DLL and all the test applications, I have thrown together a basic batchfile +called "makeall.bat" which should create everything in the right order.

+

Output files

- No matter which compiler you used, three important files should have -been produced: + No matter which compiler you used, three important files should have + been produced: - Both of the *.lib files will need to be added to all the projects that - use SDL and SDL.dll must be placed some where the Windows dynamic linker - can find it (either in your project directory or on the system path, C:\WINDOWS\SYSTEM). - + Both of the *.lib files will need to be added to all the projects +that use SDL and SDL.dll must be placed some where the Windows dynamic +linker can find it (either in your project directory or on the system +path, C:\WINDOWS\SYSTEM).

Using Borland C++ Builder for Linux ( AKA Kylix -3 )

- + 3 ) +

Inside of the "Borland" directory there is a "k3" directory that contains - a number of Builder project files. Double-click on the "libSDL.bpg" file - icon. Once Builder has started click on the "Projects" menu on the - menu-bar and go down to "Build All Projects" option. This will proceed - to build all the test programs
- Linux users do not need *.lib files as the Shared Object is linked right -into the project ( very neat actually, Windows should do this sort of thing -as it is a lot easier for the developer ).
- NOTE : The C++ Builder for Windows project format, is not -compatible with the Kylix 3 project format, hence the reason why they are -in separate directories.

- + a number of Builder project files. Double-click on the "libSDL.bpg" file + icon. Once Builder has started click on the "Projects" menu on +the menu-bar and go down to "Build All Projects" option. This will +proceed to build all the test programs
+ Linux users do not need *.lib files as the Shared Object is linked right + into the project ( very neat actually, Windows should do this sort of thing + as it is a lot easier for the developer ).
+ NOTE : The C++ Builder for Windows project format, is not + compatible with the Kylix 3 project format, hence the reason why they are + in separate directories.

+

On Mandrake 8.1 the shared objects for SDL are located in the /usr/lib - directory as libSDL_*.so and the Mesa OpenGL shared objects are located in - /usr/X11R6/lib as libGL*.so
+ directory as libSDL_*.so and the Mesa OpenGL shared objects are located +in /usr/X11R6/lib as libGL*.so
+
+ So if your setup is different you may need to change the project file + so that they re-link to the ones on your system.
+
+ On Mandrake 8.1 the headers files are located at /usr/include/SDL/. + So if you you have not installed the development RPMs ( usually named libSDL-devel* + ) for SDL ( not included ) you may have to change the include directory + within some of the projects.
+

+ +

Known Problems

+ The only known problem is that I ( Dominique Louis ), was unable to +create the projects that rebuilt the SDL shared objects under Linux, due +to time constraints and my lack of intimate knowledge of Linux. +

Test programs

+ Some of the test programs require included media files ( *.wav; *.bmp +etc ). All the test programs are now created in the "test" directory, where +the media files are ( usually ) so they should be ready to go.

- So if your setup is different you may need to change the project file - so that they re-link to the ones on your system.
-
- On Mandrake 8.1 the headers files are located at /usr/include/SDL/. -So if you you have not installed the development RPMs ( usually named libSDL-devel* - ) for SDL ( not included ) you may have to change the include directory -within some of the projects.
-

- -

Known Problems

- The only known problem is that I ( Dominique Louis ), was unable to create -the projects that rebuilt the SDL shared objects under Linux, due to time -constraints and my lack of intimate knowledge of Linux. -

Test programs

- Some of the test programs require included media files ( *.wav; *.bmp etc - ). Before trying to run any of the test programs, copy these media files - from the "tests/" directory into the Borland build directory that you extracted - the project files to.
-
+
+
- diff -r df178851293b -r de622b7108bf Borland.zip Binary file Borland.zip has changed