*** empty log message ***
authorSam Lantinga <slouken@libsdl.org>
Tue, 01 Jul 2003 01:18:27 +0000
changeset 642de622b7108bf
parent 641 df178851293b
child 643 564716cfb502
*** empty log message ***
Borland.html
Borland.zip
     1.1 --- a/Borland.html	Sat Jun 28 21:52:26 2003 +0000
     1.2 +++ b/Borland.html	Tue Jul 01 01:18:27 2003 +0000
     1.3 @@ -2,136 +2,138 @@
     1.4  <html>
     1.5  <head>
     1.6    <title>Building SDL with Borland's C++ compilers</title>
     1.7 -                    
     1.8 +                                  
     1.9    <meta name="author"
    1.10   content="David Snopek and updated by Dominique Louis.">
    1.11  </head>
    1.12    <body>
    1.13 -   <xevol @newtonave.net="">      </xevol>   
    1.14 +     <xevol @newtonave.net="">      </xevol>     
    1.15  <h1>Building SDL with Borland's C++ compilers. </h1>
    1.16 -    <b> by <a href="mailto:xevol@users.sourceforge.net"> David Snopek</a></b> 
    1.17 -   and updated by <b><a href="mailto:Dominique@SavageSoftware.com.au">Dominique 
    1.18 - Louis</a></b>.<br>
    1.19 -    <br>
    1.20 -     These instructions cover how to compile SDL and its included test programs 
    1.21 - using either  Borland <a href="#bcbwin">C++ Builder 5, 6 for Windows</a>, 
    1.22 -<a href="#k3">C++ Builder for Linux  ( AKA Kylix 3 )</a> or the free <a
    1.23 +      <b> by <a href="mailto:xevol@users.sourceforge.net"> David Snopek</a></b> 
    1.24 +    and updated by <b><a href="mailto:Dominique@SavageSoftware.com.au">Dominique 
    1.25 +  Louis</a></b> ( Last updated : 30th June 2003 ).<br>
    1.26 +      <br>
    1.27 +       These instructions cover how to compile SDL and its included test
    1.28 +programs   using either  Borland <a href="#bcbwin">C++ Builder 5, 6 for Windows</a>, 
    1.29 + <a href="#k3">C++ Builder for Linux  ( AKA Kylix 3 )</a> or the free <a
    1.30   href="#bccc">Borland C++ command-line compiler</a>. <br>
    1.31 -        
    1.32 +            
    1.33  <h3> <b> Extract the files </b> </h3>
    1.34 -        
    1.35 +            
    1.36  <p> Unzip the Borland.zip archive into <b>this</b> directory.  Do not unzip 
    1.37 - it into any  other directory because the makefiles ( *.mak ) and project 
    1.38 -files ( *.bpr ) use relative paths to refer to the SDL sources.  This  should 
    1.39 -create a directory named "Borland" inside of the top level SDL source directory. 
    1.40 -  </p>
    1.41 -        
    1.42 +  it into any  other directory because the makefiles ( *.mak ) and project 
    1.43 + files ( *.bpr ) use relative paths to refer to the SDL sources.  This  should 
    1.44 + create a directory named "Borland" inside of the top level SDL source directory. 
    1.45 +   </p>
    1.46 +            
    1.47  <h3> <b><a name="bcbwin"></a> Using Borland C++ Builder 5, 6 for Windows </b>
    1.48  </h3>
    1.49 -        
    1.50 +            
    1.51  <p> Inside of the "Borland" directory there is a "bcb6" directory that contains 
    1.52 - a number  of Builder project files.  Double-click on the "libSDL.bpg" file 
    1.53 - icon.  Once Builder has  started click on the "<u>P</u>rojects" menu on the
    1.54 - menu-bar and go down to  "B<u>u</u>ild All Projects" option.  <br>
    1.55 - This will proceed  to build SDL ( with Borland's calling convention ), SDLmain, 
    1.56 -and all  the <a href="#tests">test programs</a>. Currently, all the <a
    1.57 - href="#tests">test programs</a> 
    1.58 -are dynamically linked to Sam Lantinga's SDL.dll.</p>
    1.59 - 
    1.60 +  a number  of Builder project files.  Double-click on the "libSDL.bpg" file 
    1.61 +  icon.  Once Builder has  started click on the "<u>P</u>rojects" menu on 
    1.62 +the  menu-bar and go down to  "B<u>u</u>ild All Projects" option.  <br>
    1.63 +   This will proceed  to build SDL ( with Borland's calling convention ), 
    1.64 +SDLmain,  and all  the <a href="#tests">test programs</a>. Currently, all 
    1.65 +the <a href="#tests">test programs</a>  are dynamically linked to Sam Lantinga's 
    1.66 +SDL.dll.</p>
    1.67 +     
    1.68  <p><b>NOTE :</b> Borland's "lib" format and Microsoft's "lib" format are incompatible.
    1.69  &nbsp;<br>
    1.70 - If you wish to dynamically link to the SDL library supplied by Sam Lantinga 
    1.71 -in each release, I have created the correct *.libs for SDL 1.2.4 and they 
    1.72 -exist in the "/lib" directory.<br>
    1.73 - If you would like to create the *.lib files yourself, you will need to make 
    1.74 -use of Borland's "implib.exe" utility.<br>
    1.75 - </p>
    1.76 - 
    1.77 +   If you wish to dynamically link to the SDL library supplied by Sam Lantinga 
    1.78 + in each release, I have created the correct *.libs for SDL 1.2.4 and they 
    1.79 + exist in the "/lib" directory.<br>
    1.80 +   If you would like to create the *.lib files yourself, you will need to 
    1.81 +make  use of Borland's "implib.exe" utility.<br>
    1.82 +   </p>
    1.83 +     
    1.84  <p><tt>IMPLIB</tt> works like this: </p>
    1.85 -   
    1.86 +       
    1.87  <pre>    IMPLIB (destination lib name) (source dll)<br></pre>
    1.88 -   
    1.89 +       
    1.90  <p> For example,</p>
    1.91 -   
    1.92 +       
    1.93  <pre>    IMPLIB SDL.lib SDL.dll<br></pre>
    1.94 - 
    1.95 +     
    1.96  <p>This assumes that SDL.dll was compiled with Visual C++ or similar.<br>
    1.97 - </p>
    1.98 - 
    1.99 +   </p>
   1.100 +     
   1.101  <p>To learn more about the difference between Borland's and Microsoft's *.lib 
   1.102 -format please read the article <a
   1.103 + format please read the article <a
   1.104   href="http://www.bcbdev.com/articles/vcdll.htm">here</a>.<br>
   1.105 - </p>
   1.106 - 
   1.107 +   </p>
   1.108 +     
   1.109  <p>  <b><br>
   1.110 - NOTE :</b> The C++ Builder for Windows project format, is not compatible
   1.111 -with the Kylix  3 project format, hence the reason why they are in separate
   1.112 -directories.</p>
   1.113 -        
   1.114 +   NOTE :</b> The C++ Builder for Windows project format, is not compatible
   1.115 + with the Kylix  3 project format, hence the reason why they are in separate
   1.116 + directories.</p>
   1.117 +            
   1.118  <h3> <b><a name="bccc"></a> Using the free Borland C++ command-line compiler 
   1.119 -</b> </h3>
   1.120 -        
   1.121 + </b> </h3>
   1.122 +            
   1.123  <p> The free Borland compiler can be downloaded at no charge from <a
   1.124   href="http://www.borland.com/bcppbuilder/freecompiler/"> the  Borland website 
   1.125 - </a>.  Make sure that it is installed and properly configured. </p>
   1.126 -        
   1.127 +  </a>.  Make sure that it is installed and properly configured. </p>
   1.128 +            
   1.129  <p> Open an MS-DOS Prompt.  Change to the "Borland\freebcc" directory under 
   1.130 - the  SDL source directory.  Type "make -f SDL.mak" to build SDL and "make 
   1.131 - -f  SDLmain.mak".  There are also makefiles for all of the <a
   1.132 - href="#tests">test  programs</a>, if you wish to build them. </p>
   1.133 -        
   1.134 +  the  SDL source directory.  Type "make -f SDL.mak" to build SDL and "make 
   1.135 +  -f  SDLmain.mak".  There are also makefiles for all of the <a
   1.136 + href="#tests">test  programs</a>, if you wish to build them. All .exes and 
   1.137 +DLLs are created in the "test" SDL directory. Ify ou would like to create 
   1.138 +the DLL and all the test applications, I have thrown together a basic batchfile 
   1.139 +called "makeall.bat" which should create everything in the right order. </p>
   1.140 +            
   1.141  <h3> <b> Output files </b> </h3>
   1.142 -     No matter which compiler you used, three important files should have 
   1.143 -been  produced:      
   1.144 +       No matter which compiler you used, three important files should have 
   1.145 + been  produced:        
   1.146  <ul>
   1.147 -    	<li> SDL.dll ( Borland format ) </li>
   1.148 -    	<li> SDL.lib&nbsp;( Borland format ) </li>
   1.149 -    	<li> SDLmain.lib&nbsp;( Borland format ) </li>
   1.150 -       
   1.151 +      	<li> SDL.dll ( Borland format ) </li>
   1.152 +      	<li> SDL.lib&nbsp;( Borland format ) </li>
   1.153 +      	<li> SDLmain.lib&nbsp;( Borland format ) </li>
   1.154 +           
   1.155  </ul>
   1.156 -     Both of the *.lib files will need to be added to all the projects that 
   1.157 - use SDL and SDL.dll  must be placed some where the Windows dynamic linker 
   1.158 - can find it (either in your  project directory or on the system path, C:\WINDOWS\SYSTEM). 
   1.159 -   
   1.160 +       Both of the *.lib files will need to be added to all the projects
   1.161 +that   use SDL and SDL.dll  must be placed some where the Windows dynamic
   1.162 +linker   can find it (either in your  project directory or on the system
   1.163 +path, C:\WINDOWS\SYSTEM).       
   1.164  <h3> <b><a name="k3"></a> Using Borland C++ Builder for Linux ( AKA Kylix 
   1.165 -3 ) </b> </h3>
   1.166 -          
   1.167 + 3 ) </b> </h3>
   1.168 +              
   1.169  <p> Inside of the "Borland" directory there is a "k3" directory that contains 
   1.170 - a number  of Builder project files.  Double-click on the "libSDL.bpg" file 
   1.171 - icon.  Once Builder has  started click on the "<u>P</u>rojects" menu on the
   1.172 - menu-bar and go down to  "B<u>u</u>ild All Projects" option.  This will proceed
   1.173 - to build all  the <a
   1.174 - href="#tests">test programs</a>.&nbsp;<br>
   1.175 - Linux  users do not need *.lib files as the Shared Object is linked right 
   1.176 -into the  project ( very neat actually, Windows should do this sort of thing 
   1.177 -as it is a lot easier for the developer ).  <br>
   1.178 -    <b>NOTE :</b>&nbsp;The C++ Builder for Windows project format, is not
   1.179 -compatible with the Kylix  3 project format, hence the reason why they are
   1.180 -in separate directories.</p>
   1.181 -       
   1.182 +  a number  of Builder project files.  Double-click on the "libSDL.bpg" file 
   1.183 +  icon.  Once Builder has  started click on the "<u>P</u>rojects" menu on 
   1.184 +the  menu-bar and go down to  "B<u>u</u>ild All Projects" option.  This will 
   1.185 +proceed  to build all  the <a href="#tests">test programs</a>.&nbsp;<br>
   1.186 +   Linux  users do not need *.lib files as the Shared Object is linked right 
   1.187 + into the  project ( very neat actually, Windows should do this sort of thing 
   1.188 + as it is a lot easier for the developer ).  <br>
   1.189 +      <b>NOTE :</b>&nbsp;The C++ Builder for Windows project format, is not
   1.190 + compatible with the Kylix  3 project format, hence the reason why they are
   1.191 + in separate directories.</p>
   1.192 +           
   1.193  <p> On Mandrake 8.1 the shared objects for SDL are located in the /usr/lib 
   1.194 - directory as libSDL_*.so and the Mesa OpenGL shared objects are located in
   1.195 - /usr/X11R6/lib as libGL*.so<br>
   1.196 +  directory as libSDL_*.so and the Mesa OpenGL shared objects are located 
   1.197 +in  /usr/X11R6/lib as libGL*.so<br>
   1.198 +       <br>
   1.199 +       So if your setup is different you may need to change the project file
   1.200 +  so that they re-link to the ones on your system.<br>
   1.201 +       <br>
   1.202 +       On Mandrake 8.1 the headers files are located at /usr/include/SDL/.
   1.203 + So  if you you have not installed the development RPMs ( usually named libSDL-devel*
   1.204 +   ) for SDL ( not included ) you may have to change the include directory
   1.205 + within  some of the projects.<br>
   1.206 +   </p>
   1.207 +     
   1.208 +<h3> Known Problems</h3>
   1.209 +     The only known problem is that I ( Dominique Louis ), was unable to
   1.210 +create  the projects that rebuilt the SDL shared objects under Linux, due
   1.211 +to time  constraints and my lack of intimate knowledge of Linux.     
   1.212 +<h3><a name="tests"><b> Test programs </b> </a></h3>
   1.213 +   Some of the test programs require included media files ( *.wav; *.bmp
   1.214 +etc   ). All the test programs are now created in the "test" directory, where
   1.215 +the media files are ( usually ) so they should be ready to go.  <br>
   1.216       <br>
   1.217 -     So if your setup is different you may need to change the project file
   1.218 - so that they re-link to the ones on your system.<br>
   1.219 -     <br>
   1.220 -     On Mandrake 8.1 the headers files are located at /usr/include/SDL/.
   1.221 -So  if you you have not installed the development RPMs ( usually named libSDL-devel*
   1.222 -  ) for SDL ( not included ) you may have to change the include directory
   1.223 -within  some of the projects.<br>
   1.224 - </p>
   1.225 - 
   1.226 -<h3> Known Problems</h3>
   1.227 -   The only known problem is that I ( Dominique Louis ), was unable to create 
   1.228 -the projects that rebuilt the SDL shared objects under Linux, due to time 
   1.229 -constraints and my lack of intimate knowledge of Linux.   
   1.230 -<h3><a name="tests"><b> Test programs </b> </a></h3>
   1.231 - Some of the test programs require included media files ( *.wav; *.bmp etc 
   1.232 - ).  Before trying to run any of the  test programs, copy these media files 
   1.233 - from the "tests/" directory into the Borland build directory that you extracted 
   1.234 - the project files to.  <br>
   1.235 -   <br>
   1.236 +  <br>
   1.237 + <br>
   1.238  </body>
   1.239  </html>
   1.240 -
     2.1 Binary file Borland.zip has changed