Not everything in Linux comes for free. CodeFusion is one
of the things that are not. It costs Rs 15,000, but is definitely worth it.
One of the major complaints about Linux has been that there aren’t any good
development environments for it. You’ve to encode using conventional tools and
compilers, and there are no visual tools available. But if CodeFusion is an indicator of
things to come, that complaint will soon go the same way as the earlier ones.
CodeFusion is an IDE or Integrated Development Environment. As with other IDEs, it
combines the different aspects of development like editing, compiling, linking, building
projects, debugging, source or symbol browsing, class hierarchical browsing, pattern
searching or replacing, version control, etc, into one unified environment. CodeFusion
takes popular coding tools and provides a visual skin for them, to provide a comfortable
and modern development environment under X.
Installing CodeFusion is simple. A program called install-gui does the installation,
almost in the same way as most Windows programs are installed. As with most IDEs, you need
to set up some environment variables (like path, libraries, etc). The complete install
takes about 250 MB of space. This includes compilers, IDE, debugger, and the documentation
in HTML format.
The CodeFusion IDE comes with a GNU public license, which states that you can use,
modify, and distribute it. But on careful reading, I found that a few components,
specifically Source-Navigator, is a commercial product. That explained the CD key
provided.
The package is mostly about Source-Navigator and the visual debugger–Cygnus
Insight. Insight is again a graphical skin for the GNU debugger–GDB, known in
programming circles as GDBtk.
There’s a nice tutorial section in the manual, which explains the modus operandi.
Source-Navigator works on the basis of projects. You can start with a new project or
continue with any of your previous ones.
For a new project, it’ll ask for the directories that are to be added. In large
projects, this can take a bit of time, as the program scans all files to create the
file-symbol table.
Once you’ve the project files in place, you’ve to decide which are the target
files that are needed in a particular build. Build setting also lets you select the actual
compiler/linker that’ll be used for the build.
One interesting point is that you can set rules as part of these settings. For example,
you can specify external programs and macros to facilitate and extend the development
environment. This is a major advantage for developers, who need to do pre-process tasks
before a build.
The Editor shows the hierarchy, class, and includes browsers, and a cross-referencer.
The latter helps in understanding complex source code by showing refers-to and referred-by
relationships.
Source-Navigator lets you compile the same project to multiple build targets. So, you The debugger itself is quite advanced. Though it uses a command-level GDB in the
can have different versions with different settings, without having to maintain separate
project files. The Source-Navigator can use an external MakeFile for the build process. It
can be part of the build settings as well.
background, it provides all the tools a programmer would expect. You can check variable
values by just pointing at them, you can inspect memory locations, and you can monitor
register values.
Source-Navigator lists C, C++, Java, Cobol, and Fortran as the languages it can handle.
While I didn’t check for Cobol and Fortran, I checked for the others. The GNU Java
compiler and the Java packages, which are included with the product, are only Java 1.1
compliant. Only a couple of Java 2 packages are included. But in any case, compiling and
using Java straightaway from within the Source-Navigator isn’t very simple. It
doesn’t seem to have a virtual machine, so you’d still have to rely on an
external JDK port like Blackdown. I still haven’t figured out why I should use GNU
Java, which isn’t complete as ported in CodeFusion.
Version control is implemented using external tools. Again, this is not one of the
strong points of CodeFusion, but it isn’t a weak point either. You can have good
version control with a bit of effort.
The real significance of CodeFusion is bringing ease of development to the Linux
platform. Though Borland has announced the port of C++ builder and Delphi RAD tools to
Linux, they’ll take a while in coming. In the meanwhile, there’s no reason why
Linux can’t be a platform for serious application development. CodeFusion provides a
developer with the necessary tools to start coding in Linux today.
It has a companion in GNUPro DevKit. This is a set of GNU development tools, combined
without an integrating program like Source-Navigator. It also contains the visual
debugger. GNUPro is priced lower than CodeFusion and takes about 25 MB less space.
Code Fusion is available from:
G T Enterprises 913 14th Main, 4th Cross, Maruthi Circle, Hanumanthanagar, Bangalore
560019. Tel: 80-6671407 Fax: 6606093 E-mail: gtcdrom@vsnl.com
Website: www. gtcdrom.com.