<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>Setting up the compiler settings</title> <style type="text/css"> <!-- .MainHeader { font-weight: bold; color: #FFFF33; background-color: #006600; font-size: 10pt} body { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10pt; color: #CCFFCC; background-color: #003300} .BorderHeader { background-color: #999900; font-size: 8pt; font-weight: bold; color: #333300; text-align: center} .MainContent { font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10pt; color: #CCFFCC } .BorderContent { font-size: 8pt; color: #66CC33; border-color: black #666600 #666600; padding-top: 2px; padding-right: 2px; padding-bottom: 10px; padding-left: 2px; margin-bottom: 2px; border-style: solid; border-top-width: 0px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px} a:link { color: #FFFF00; text-decoration: underline} a:hover { color: #FFFFFF; text-decoration: underline} a:visited { color: #FFCC66; text-decoration: underline} li { color: #66CC33; list-style-type: circle; position: relative; left: -15px; clip: rect( )} .NewsDate { color: #CCFFCC; font-weight: bold} td { font-size: 10pt} th { font-size: 10pt} .Annotation { font-size: 10px} H1 { text-align: center; } A.qindex {} A.qindexRef {} A.el { text-decoration: none; font-weight: bold } A.elRef { font-weight: bold } A.code { text-decoration: none; font-weight: normal; color: #4444ee } A.codeRef { font-weight: normal; color: #4444ee } DL.el { margin-left: -1cm } DIV.fragment { width: 100%; border: none; background-color: #003300 } DIV.ah { background-color: black; margin-bottom: 3; margin-top: 3 } TD.md { background-color: #006600 } DIV.groupHeader { margin-left: 16; margin-top: 12; margin-bottom: 6; font-weight: bold } DIV.groupText { margin-left: 16; font-style: italic; font-size: smaller } FONT.keyword { color: #008000 } FONT.keywordtype { color: #999920 } FONT.keywordflow { color: #e0FF00 } FONT.comment { color: #009900 } FONT.preprocessor { color: #809020 } FONT.stringliteral { color: #002080 } FONT.charliteral { color: #008080 } H3 { FONT-FAMILY: trebuchet ms,helvetica,arial } .ex { FONT-SIZE: 8pt; FONT-FAMILY: tahoma } CODE.keywordtype { COLOR: #00ccff } CODE.keyword { FONT-WEIGHT: bold; COLOR: #00ccff } CODE.fn { COLOR: white; FONT-WEIGHT: bold; } CODE.var { COLOR: #dcdcdc; } CODE.macro { COLOR: #809020; FONT-WEIGHT: bold; } CODE.comm { COLOR: lime } CODE.num { COLOR: purple } CODE.str { COLOR: #ffcc33; font-style: italic } .SectionHeader { font-size: 14px; color: #FFFFCC; font-weight: bold} .header { font-size: 16px; font-weight: bold; color: #FFFFCC} --></style> </head> <body bgcolor="#ffffff" text="#000000"> <p align="center" class="header">OGRE (Object-Oriented Graphics Rendering Engine)</p> <p align="center" class="header"> Setting up the compiler settings</p> <p align="left" class="MainHeader"> </p> <p> You only need to perform this step for the Visual C++ build, using gcc the values are derived for you from the makefile listed previously. </p> <ul> <li> <a href="#vc6">Visual C++ 6</a> </li> <li> <a href="#vc7">Visual C++.Net</a> <p></p> <p align="left" class="MainHeader"><a name="vc6">Microsoft Visual C++ 6 (SP3+)</a></p> <p> If you are setting up you application the EASY WAY (i.e. in a subdirectory of Samples), then here's how you set up the compiler / linker settings from the Project | Settings menu item. All of these are for the Debug configuration, to set up the Release configuration just change the directories from '\Debug\' to '\Release\'. <table border="0" cellspacing="2" cellpadding="1"> <tbody> <tr> <td>Debug : General : Executable</td> <td>=</td> <td>..\..\Common\Bin\Debug\[appname].exe</td> </tr> <tr> <td>Debug : General : Working Directory</td> <td>=</td> <td>..\Common\Bin\Debug</td> </tr> <tr> <td>C++ : Preprocessor : Additional Include Directories</td> <td>=</td> <td>..\Common\Include ..\..\OgreMain\include<br> </td> </tr> <tr> <td>C++ : Code Generation : Use runtime library</td> <td>=</td> <td>Debug Multithreaded DLL</td> </tr> <tr> <td>Link : General : Output File</td> <td>=</td> <td>..\Common\Bin\Debug\[appname].exe</td> </tr> <tr> <td>Link : Input: Additional Library Path</td> <td>=</td> <td>..\..\OgreMain\Lib\Debug</td> </tr> <tr> <td>Link : Input : Object/library Modules</td> <td>+=</td> <td>OgreMain.lib</td> </tr> </tbody> </table> If you want to do it the ADVANCED way, you'll have to replace the relative paths here with the actual path to the root OGRE folder. </p> <p align="left" class="MainHeader"><a name="vc7">Microsoft Visual C++.Net</a></p> If you are setting up you application the EASY WAY (i.e. in a subdirectory of Samples), then here's how you set up the compiler / linker settings after right-clicking on the project and selecting 'Properties'. All of these are for the Debug configuration, to set up the Release configuration just change the directories from '\Debug\' to '\Release\'. <p> <table border="0" cellspacing="2" cellpadding="1"> <tbody> <tr> <td>Debug : Working Directory</td> <td>=</td> <td>..\Common\Bin\Debug</td> </tr> <tr> <td>C/C++ : Additional Include Directories</td> <td>=</td> <td>..\Common\Include</td> </tr> <tr> <td>C/C++ : Code Generation : Use runtime library</td> <td>=</td> <td>Debug Multithreaded DLL</td> </tr> <tr> <td>Linker : Output File</td> <td>=</td> <td>..\Common\Bin\Debug\APPNAME.EXE</td> </tr> <tr> <td>Linker : Additional Library Directories</td> <td>=</td> <td>..\..\OgreMain\Lib\Debug</td> </tr> <tr> <td>Linker : Additional Dependencies</td> <td>+=</td> <td>OgreMain.lib</td> </tr> </tbody> </table> </p> If you want to do it the ADVANCED way, you'll have to replace the relative paths here with the actual path to the root OGRE folder. <p align="left" class="MainHeader"><a name="gcc">Gnu Compiler Collection (gcc) v3.x</a></p> <p> Before you start, make sure you are using gcc 3.x. Many Linux distributions still come with gcc 2.95.x which does not have as good support for the ISO C++ standard and will probably cause you problems. Please install the latest stable version of gcc 3.x. </p> Create a file called 'Makefile' in your application folder, with the contents: <pre> include [ogre_location]/platform-settings<br><br> all:<br> $(CXX) $(DEFINES) $(CFLAGS) -o [appname] [yourSampleApp].cpp $(INCDIRS) -I$(TOPDIR)/Samples/Common/include -L$(TOPDIR)/OgreMain/lib -lOgreMain<br><br> clean:<br> rm -f [appname]<br></pre> <p></p> <p> Obviously you need to replace [ogre_location], [appname] and [yourSampleApp] with the appropriate values. </p> <p class="MainHeader"> </p> <table width="100%" border="0" cellspacing="2" cellpadding="0"> <tbody> <tr> <td width="14%"><a href="index.html">Back to Index</a></td> <td width="39%"> </td> <td width="22%"><a href="copysources.html"><< Previous section</a></td> <td width="25%"> </td> </tr> </tbody> </table> <p class="MainHeader"> </p> </li> </ul> </body> </html>