Build Rocrail from Source

Bazaar

Tools like Bazaar are called version control systems (VCS) and have long been popular with software developers. Bazaar's ease of use, flexibility and simple setup make it ideal not only for software developers but also for other groups who work together on files and documents, such as technical writers, web designers and translators.

Documentation

Front ends


Get Rocrail Sources

Lightweight Checkout

This is recommended if you want the centralized concept like Subversion. Before you can commit you must be sure the branch tree is in sync with the central repo.
More details on lightweight checkouts: http://doc.bazaar-vcs.org/bzr.dev/en/user-guide/index.html#using-checkouts

Read Only
bzr checkout --lightweight https://launchpad.net/rocrail Rocrail
Read/Write
bzr checkout --lightweight lp:rocrail Rocrail


Updating the local tree

cd Rocrail
bzr update


Get Hardware Sources

Read Only
bzr checkout --lightweight https://launchpad.net/hardware-dev hardware
Read/Write
bzr checkout --lightweight lp:rocrail/hardware-dev hardware


Get RocMobile Sources

Read Only
bzr checkout --lightweight https://launchpad.net/rocmobile-dev RocMobile
Read/Write
bzr checkout --lightweight lp:rocrail/rocmobile-dev RocMobile


Build Rocrail from source (Linux)

Use the following commands as a normal user, not as root:

  • Install the wxGTK 2.8.* (libwxgtk2.8*, wxGTK-devel) including develop package
  • check out the HEAD revision Rocrail from launchpad.net.
  • cd Rocrail
  • make all
  • sudo make install

On certain Linux distributions a 'make fromtar” may be required.


Build Rocrail from source (Windows)

Get the sources as desribed earlier.

  • Install MinGW. (add the mingw\bin to your path environment)
  • Install the precompiled wx-2.6.3-mingw.
  • Change the wxroot variable in the Rocrail\rocgui\makefile-mingw to match your wxWidgets directory.
  • Install Inno Setup if you want to create the setup.
  • cd Rocrail
  • make -f makefile-mingw unicode (use ansi for Windows 9x)
  • start Inno Setup in Rocrail\rocrail\package and open the rocrail.iss; compile.


BZR Log

The main makefile will call the bzr program to get the revision number to use in rocrail for tracing and info.


Problems

  • Many header and source files are generated in the build process and are not in the repository!
  • If you have problems compiling the rocs library, the object generator binary does not fit to your Linux system. Try make fromtar.
  • After changing the rocs.xml you must also commit the rocs-gen.tar.gz in svn!!!


Main Build Targets

Target Description
all Server and Client.
fromtar Same as all but with pre generated files.
server Server only.


Debian Etch

Add following section in the /etc/apt/sources.list file:

# wxWidgets/wxPython repository at apt.wxwidgets.org
deb http://apt.wxwidgets.org/ etch-wx main
deb-src http://apt.wxwidgets.org/ etch-wx main  

Update the sources:

sudo apt-get update

Just for info:

  • Debian GNU/Linux 4.0 (“etch”)
  • Debian GNU/Linux 3.1 (“sarge”)


Fedora Core 10

To install wxwidgets on fedora core you have to type this in a shell window:

sudo yum install wxGTK 2.8.* 

followed by

sudo yum install wxGTK-devel 

Afterwards continue with the make process.


OpenSuSE 12

Instal the wxWidgets-ansi-devel package if an error like this is reported compiling Rocview:

error: invalid use of incomplete type 'wxNode {aka struct wxObjectListNode}'



Gentoo Linux

To install wxwidgets on Gentoo Linux you have to “emerge” it first. “emerge” is the command under Gentoo that will compile and install a package. So after a

emerge x11-libs/wxGTK

and some screens full of compiling messages, you will have a RAW wxlib on your system. Then, there is a configuration utility “eselect” which can choose various profiles for various packages. The whole trick is, that you (just) have to type

eselect wxwidgets set 1

after emerging the lib. That way, you have selected “profile 1” (the only one there is) and wxwidgets is configured for usage when compiling apps that rely on it (which is the case for Rocrail). Perhaps when future generations read this, there are more than one profiles for wxwidgets.

eselect wxwidgets list

Gives you a list of available profiles, like this

Available wxWidgets profiles:
  [1]   gtk2-unicode-release-2.8

and after you have selected the profile, an asterisk marks it as active:

Available wxWidgets profiles:
  [1]   gtk2-unicode-release-2.8 *

After this is finished you may continue with the standard make process described at the top of the page.


None Intel 32 Bit OS

The binary utilities to generate objects and wrappers are in the source repository only available for i386 CPUs.
Error messages like this are mostly related to none 32bit Intel:

/bin/sh: ../../rocs/bin/ogen: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory
...
impl/attr.c:23:33: fatal error: rocs/impl/attr_impl.h: No such file or directory


To build Rocrail on other platforms use the make target fromtar.
Use the following command in the Rocrail main directory:

make PLATFORM=LINUX fromtar

Presupposed utilities

  1. gzip
  2. tar

PLATFORM

The default platform is Linux.
Supported are:

  • LINUX
  • MACOSX
  • HP
  • SOLARIS
  • OPENBSD
  • WIN32 (cross compile)
  • WIN64 (experimental cross compile)

Personal Tools