Running InterBase 6.0 SuperServer Beta on FreeBSD 4.0 in Linux Emulation Mode

By: Borland Staff

Abstract: InterBase Software is proud to announce a swift and much appreciated contribution to the InterBase Platform and Community.

Running InterBase 6.0 Super Server Beta on FreeBSD 4.0 in Linux Emulation Mode

InterBase Software is proud to announce a swift and much appreciated contribution to the InterBase Platform and Community.  Geoffrey C. Speicher, Software Engineer of Software Engineering Associates, http://www.sea-incorporated.com/ has taken the time to put together some very helpful instructions on how to get the InterBase 6.0 Super Server Beta for Linux up and running on FreeBSD 4.0 in Linux emulation mode.

Thank you, Geoffrey -- The InterBase Team

About Software Engineering Associates:
SEA was formed in mid-1999 to provide custom database systems for businesses, using a combination of open-source server tools with commercial client application development tools to create robust, high-performance, cost-effective systems in an efficient manner. "FreeBSD and PostgreSQL, in conjunction with Borland/Inprise C++ Builder, have served well for these applications, but the arrival of open-source InterBase provides a host of improvements for both SEA developers and their clients." said Geoffrey C. Speicher, Software Engineer of SEA.  "Developers can enjoy more thorough integration with C++ Builder, better SQL92 compliance and features such as database synchronization/replication; clients reap the benefits of graphical administration and peace-of-mind knowing that they are using the world-class InterBase DBMS, tried and proven by a very impressive list of clients."

InterBase Releases:

Geoff has been successful in installing and running the InterBase 6.0 for Linux Beta SuperServer under FreeBSD 4.0 with the Linux emulation module. The Classic release has not been found to work at this time.

System Requirements:

  • FreeBSD 4.0 (with kernel sources)
  • linux_base-6.1
  • linuxthreads-2.1.2
Notes:

The installation is relatively straightforward, requiring only the following:

  • All ELF executables should be branded as Linux ABI after installation.
  • pread/pwrite system calls must be added to the FreeBSD Linux module.
To ease the process of installation, a new install script (which does ELF branding) and a set of kernel source code patches for pread/pwrite are available below.

Installation Instructions:

  1. Obtain the InterBase 6.0 for Linux SuperServer Beta  here.
  2. Download the gzipped tar file that contains the new installer and source diffs here.
  3. Extract the contents of the archives into a new directory. Order of extraction here is important so you end up with the new version of install.sh (assume the archives are in $HOME):

  4. $ mkdir InterBase ; cd InterBase
    $ tar xvf $HOME/InterBaseSS_LI-B6.0.tar
    $ tar zxvf $HOME/IBb6-FreeBSD.tgz
  5. Apply the source patches (assume the patches are in $HOME/InterBase):

  6. $ cd /usr/src/sys/i386/linux
    $ patch <$HOME/InterBase/linux_dummy.c.patch
    $ patch <$HOME/InterBase/linux_file.c.patch
    $ patch <$HOME/InterBase/syscalls.master.patch
  7. Remake and install the linux module:

  8. $ cd /usr/src/sys/i386/linux
    $ make linux_sysent.c
    $ cd ../../modules/linux
    $ make clean && make && make install
  9. Reload the linux module:

  10. $ kldunload -n linux
    $ linux
  11. Install InterBase:

  12. $ cd $HOME/InterBase
    $ ./install.sh $HOME/InterBaseSSB6.0-LI.tgz
    < accept defaults >
  13. Add localhost to /etc/hosts.equiv if it's not there already.
  14. Start the server:

  15. $ /usr/interbase/bin/ibmgr -start -forever
  16. Enjoy!
If you are interested in a port of InterBase 6.0 for FreeBSD please drop us a note.

Server Response from: ETNASC03