From 2e1027df656cbb28a8e268904cf0d4b824b31194 Mon Sep 17 00:00:00 2001 From: scuri Date: Mon, 2 Aug 2010 18:59:38 +0000 Subject: *** empty log message *** --- html/en/building.html | 119 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 119 insertions(+) create mode 100644 html/en/building.html (limited to 'html/en/building.html') diff --git a/html/en/building.html b/html/en/building.html new file mode 100644 index 0000000..32b6691 --- /dev/null +++ b/html/en/building.html @@ -0,0 +1,119 @@ + + + + +Guide + + + + + +

Building Lua, IM, CD and IUP in +Linux

+

This is a guide to build all the Lua, IM, CD and IUP libraries in Linux. +Notice that you may not use all the libraries, but this guide will build all of +them. Later on it is explained how to build a single library.

+

System Configuration

+

You will have to download the development version of some packages installed +on your system. Although the run time version of some of these packages are +already installed, the development versions are usually not. The packages +described here are for Ubuntu, but you will be able to identify them for other +systems as well.

+

To build Lua you will need:

+
libreadline5-dev
+

To build IM you will need:

+
g++
+

To build CD you will need:

+
libx11-dev
+libxpm-dev
+libxmu-dev
+  libxft-dev (for the XRender driver, OPTIONAL)
+libgtk2.0-dev (for the GDK driver)
+ +

To build IUP you will need:

+
libgtk2.0-dev (for the GTK driver) [already installed for CD]
+  libmotif-dev and x11proto-print-dev (for the Motif driver, OPTIONAL)
+libgl1-mesa-dev and libglu1-mesa-dev (for the IupGLCanvas)
+

Download

+

Download the "xxx-X.X_Sources.tar.gz" package from the "Docs and Sources" +folder for the version you want to build. Here are links for the Files section +in Source Forge:

+

Lua - +http://sourceforge.net/projects/luabinaries/files/
+IM - +http://sourceforge.net/projects/imtoolkit/files/
+CD - +http://sourceforge.net/projects/canvasdraw/files/
+IUP - +http://sourceforge.net/projects/iup/files/

+

Lua

+

Although we use Lua from LuaBinaries, any Lua installation can also be used. +But you will have to define some environment variables before building IM, CD and +IUP. Here is an example:

+
export LUA_SUFFIX=
+export LUA_INC=/usr/local/include      [actually NOT necessary, this one is already used by gcc/g++]
+export LUA_LIB=/usr/local/lib          [            "         ]
+export LUA_BIN=/usr/local/bin          [necessary because luac will not be used from the PATH]
+

The tools bin2c and luac are necessary only if you need to rebuild LOH files. +But since the source packages already includes them, those tools are in fact not +necessary.

+

Unpacking

+

If you are going to build all the libraries, the makefiles and projects +expect the following directory tree:

+
/xxxx/
+      iup/
+      cd/
+      im/
+      lua5.1/  [optional]
+ +

So, unpack all the source packages in the same folder that will do fine.

+

Building

+ +

As a general rule (excluding system dependencies): IUP depends on CD and IM, +and CD depends on IM. So start by build IM, then CD, then IUP.

+

To start building go the the "src" folder and type "make". In IUP there are +many "srcxxx" folders, so go to the up folder "iup" and type +"make" that all the +sub folders will be built.

+

Instead of building all the libraries, try building only the libraries you +are going to use. The provided makefiles will build all the libraries, but take +a look inside them and you will figure out how to build just one library.

+

Installation

+ +

After building you can copy the libraries files to the system folder. This is +not necessary since you can use -I and -L on your makefiles, but it can be done. +If you are inside one of the libraries main folder you can type:

+
cp lib/Linux26g4/* /usr/local/lib
+cp include/* /usr/local/include
+

This will copy run time and development files. If you just want the run time, +then do simply:

+
cp lib/Linux26g4/*.so /usr/local/lib
+

Also when coping development folders, if you want to keep the library headers +in a separate folder, you can do:

+
cp -R iup/include /usr/local/include/iup
+cp -R cd/include /usr/local/include/cd
+cp -R im/include /usr/local/include/im
+

Then use in your makefile -Iiup -Icd -Iim.

+

This installation procedure also can be used for the pre-compiled binaries +packages available for download. They contain the development and run time files +you need.

+

If you don't want to copy the libraries to your system +folder, you can still use them, but you will need to add the binaries folders to +the LD_LIBRARY_PATH, for example:

+
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/xxxx/iup/lib/Linux26g4:/xxxx/cd/lib/Linux26g4:/xxxx/im/lib/Linux26g4
+

In this case, in your makefile will will also need to specify those paths +when linking using -L/xxxx/iup/lib/Linux26g4.

+

Lua

+

If you are NOT using LuaBinaries then you have two options to be able to use +"require" with these libraries. You can create symbolic links in the Lua C +modules folder to the installed libraries run time:

+
ln -s /usr/local/lib/lipiuplua51.so /usr/local/lib/lua/5.1/iuplua.so
+ln -s /usr/local/lib/lipiupluacontrols51.so /usr/local/lib/lua/5.1/iupluacontrols.so
+...
+

You can set the LUA_CPATH environment variable:

+
export LUA_CPATH=./\?.so\;./lib\?.so\;./lib\?51.so\;
+
+ + + + \ No newline at end of file -- cgit v1.2.3