Compiler Notes - Borland

Notes for Borland Free Compiler users - Chris Kerry

By Chris Kerry, from the SE SDK group.

----------------------------------------------------------------------------

Using the BORLAND5.5 Free Compiler Command Line Tools with SynthEdit SDK

Date: 27 Dec 2002 first draft
27 Mar 2004 Updated for SDK version 2

----------------------------------------------------------------------------

By Chris Kerry Contact: chriskerry@chriskerry.f9.co.uk

With additional help/advice from Jeff McClintock

----------------------------------------------------------------------------

 

Download the SE_SDK from www.synthedit.com

Unzip the SDK into a folder called SE_SDK inside the main SynthEdit folder

Download the FREE BORLAND Compiler (Ver 5.5) from www.borland.com

Follow instructions at http://www.johnsmiley.com/cis18.notfree/smiley029/smiley029.htm

This will install the compiler to C:\borland, also follow the instructions to

NOTE: if you choose a different locations you must alter SEMAKE.BAT file shown below

If you need a FREE multi-document text editor try Crimson Editor at www.crimsoneditor.com

It's very similar to Notepad_lite and has C++ syntax highlighting.

Follow the instructions to set up the compiler, except ilink32.cfg should read..

-------------------- START C:\BORLAND\BCC55\BIN\ILINK32.CFG--------------------

-L"c:\Borland\Bcc55\lib;c:\Borland\Bcc55\lib\psdk"

-------------------- END ------------------------------------------------------

 

You can also run the BCMAKE.BAT file from within to build the custom SE plugins. Use the examples in SE_GAIN/BC_MAKE.BAT or SE_SCOPE/BC_MAKE.BAT (for GUI plugins)

-------------------- START BC_MAKE.BAT------------------------------------------------------

cls

del *.obj
del module.dll

bcc32 -I..\SE_SDK2;c:\borland\bcc55\include -DBORLAND_FREE=true -u- -VC -VM -tWD -O -O2 -P -c SEModuleMain.cpp

bcc32 -I..\SE_SDK2;c:\borland\bcc55\include -DBORLAND_FREE=true -VC -VM -tWD -O -O2 -P -c .. \se_sdk2\SEPin.cpp ..\se_sdk2\SEModule_Base.cpp ..\se_sdk2\SEGUI_base.cpp bcc32 -I..\SE_SDK2;c:\borland\bcc55\include -DBORLAND_FREE=true -VC -VM -tWD -O -O2 -P -c Module.cpp GuiModule.cpp

ilink32 -v- -Tpd c0d32 SEModuleMain Module SEPin SEModule_Base SEGUI_base GuiModule, Module, Module, kernel32.lib user32 gdi32 winspool comdlg32 advapi32 shell32 ole32 oleaut32 uuid cw32 import32, bc_module

copy Module.dll,"C:\Program Files\SynthEdit\modules\MyModules\<Your_PLUGIN_Name_Here>.sem"

-------------------- END --------------------------------------------------------

The last two <copy...> lines allow you to start SynthEdit immediately where your plug-in will be displayed on the INSERT->MYMODULES menu ready for you to test

 

Here is MODULE.DEF this controls the creation of the module file (dll). Use the example in SE_GAIN/BC_MODULE.DEF

-------------------- START BC_MODULE.DEF----------------------------------

;Borland Free Compiler..

LIBRARY MODULE.DLL INITGLOBAL

DESCRIPTION 'SE_MODULE'

EXPORTS getModuleProperties makeModule

EXETYPE WINDOWS

CODE PRELOAD MOVEABLE DISCARDABLE

DATA PRELOAD SINGLE

HEAPSIZE 4096

-------------------- END --------------------------------

 

To create your own SE Plugin modules - I find it easier to copy and re-name the entire SE_GAIN example folder first

then modify the MODULE.CPP and MODULE.H files

Run SEMAKE.BAT from a DOS window or ->

If using the CRIMSON EDITOR create a HOT-KEY function under the <TOOLS> / <configure user tools> menu.

Start SynthEdit then Select INSERT and your plug-in should appear in the list.

#################################################################################

*Additional Info - I believe there is a Borland IDE (Integrated Development Environment) now available for download from www.borland.com - since i already have a working environment, i dont need it ! - but others may find it useful.

*Also : The Core Command line Compilers should be compatible between the Commercial CBuilder6.0 and the FREE Version. (the Free Compiler5.5 is the Core from CBuilder5.5 - which has been updated to the commercial CBuilder6.0 )
there is an update available for the Borland Free Compiler Command line tools - available from the Borland Updates section.
Only download Update #2 - the Self extracting file.
Don't download Update #1 - the Zip file - i found this had Older File Dates than the already installed versions.
*Coding Note: You will get better performance using < fastmath.h > instead of < math.h >

Disclaimer:

By following this advice you accept full responsibilty for any and all problems that may arise out of its use.

I am not an expert on Borland compilers or CrimsonEditor - i merely use these tools successfully to create custom SE plugins.

If requested i will give help / advice where possible < e-mail: chriskerry@chriskerry.f9.co.uk >

Additional info from Henrik Jul

I found that it is possible to put %1 params into the places for the userdefined filename for SEP file. (ie %1.SEP)
Then one can setup Crimson to call:
c:\programmer\synthedit\sdk\semake.bat (absolute path)
with Argument set to: $(UserInput) ---> goes to %1 in semake.bat
and Initial dir set to: $(FileDir) (same as the loaded source file - assumed).
Just a thought :-)
Henrik Juhl