From 34899059fd513326677565cd04886ec497b27931 Mon Sep 17 00:00:00 2001 From: scuri Date: Mon, 2 Aug 2010 18:59:41 +0000 Subject: *** empty log message *** --- html/en/building.html | 119 ++++++++++++++++++++ html/en/guide.html | 2 + html/wb/wb_usr.lua | 1 + html/wb_search.txt | 25 +++-- html/wb_tree.html | 299 +++++++++++++++++++++++++------------------------- 5 files changed, 285 insertions(+), 161 deletions(-) create mode 100644 html/en/building.html (limited to '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 diff --git a/html/en/guide.html b/html/en/guide.html index 6905890..f918cfa 100644 --- a/html/en/guide.html +++ b/html/en/guide.html @@ -74,6 +74,8 @@ command line on the "src" folder and all libraries and executables wil build. Set the TECTOOLS_HOME environment variable to the folder were the Lua libraries are installed, by default it will assume "TECTOOLS_HOME=../..".

+

In Linux, check the "Building Lua, IM, CD and IUP in +Linux" guide.

In Windows, the easiest way to build everything is to install the Tecmake tool into your system. It is easy and helps a lot. The Tecmake configuration files (*.mak) available at the "src" folder are very easy to understand also. Also there are files named diff --git a/html/wb/wb_usr.lua b/html/wb/wb_usr.lua index b25f6a9..029674b 100644 --- a/html/wb/wb_usr.lua +++ b/html/wb/wb_usr.lua @@ -65,6 +65,7 @@ wb_usr.tree = { name= {en= "Names Convention"}, link= "guide.html#names" }, { name= {en= "C x C++ Usage"}, link= "guide.html#cpp" }, { link= "", name= {en= "" } }, + { name= {en= "Building in Linux"}, link= "building.html" }, { name= {en= "Samples"}, link= "samples.html" }, { name= {en= "Lua Binding"}, link= "imlua.html" } } diff --git a/html/wb_search.txt b/html/wb_search.txt index 7884f0d..8b9ce15 100644 --- a/html/wb_search.txt +++ b/html/wb_search.txt @@ -83,37 +83,38 @@ en/doxygen/files.html en/storage_samples.html en/doxygen/group__krn.html en/doxygen/group__util.html -en/doxygen/group__process.html en/doxygen/globals_eval.html +en/doxygen/group__winattrib.html en/doxygen/globals_func.html +en/doxygen/im__file_8h.html en/doxygen/im__attrib_8h.html -en/doxygen/group__png.html en/doxygen/im__util_8h.html -en/doxygen/classimcfloat.html en/doxygen/im__raw_8h.html +en/doxygen/classimcfloat.html en/doxygen/im__process__pon_8h.html +en/building.html en/doxygen/group__kernel.html en/doxygen/group__pcx.html en/doxygen/group__imageutil.html -en/doxygen/im__counter_8h.html +en/doxygen/im__convert_8h.html en/doxygen/group__convolve.html en/doxygen/group__file.html en/proc_samples.html -en/doxygen/group__imgclass.html en/doxygen/im__format__wmv_8h.html +en/doxygen/group__imgclass.html en/samples.html en/doxygen/group__raw.html en/doxygen/group__hsi.html en/to_do.html en/doxygen/im__format__jp2_8h.html -en/doxygen/classimImageFile.html en/doxygen/im__format__all_8h.html +en/doxygen/group__png.html en/doxygen/group__wmv.html en/doxygen/imlua_8h.html -en/doxygen/im__file_8h.html +en/doxygen/group__analyze.html en/doxygen/im__plus_8h.html en/doxygen/im__attrib__flat_8h.html -en/doxygen/group__analyze.html +en/doxygen/im__counter_8h.html en/doxygen/group__morphgray.html en/doxygen/group__imagerep.html en/doxygen/group__logic.html @@ -121,16 +122,16 @@ en/doxygen/group__jp2.html en/doxygen/group__imlua.html en/guide.html en/doxygen/group__dib.html -en/doxygen/im__convert_8h.html en/doxygen/group__cnvutil.html -en/doxygen/group__winattrib.html +en/doxygen/group__counter.html +en/doxygen/annotated.html en/capture.html en/doxygen/group__ras.html en/home.html -en/doxygen/annotated.html +en/doxygen/classimImageFile.html en/doxygen/struct__imFile.html en/doxygen/im__math__op_8h.html -en/doxygen/group__counter.html +en/doxygen/group__process.html en/doxygen/group__capture.html en/doxygen/group__str.html en/representation.html diff --git a/html/wb_tree.html b/html/wb_tree.html index ce306fa..239abbb 100644 --- a/html/wb_tree.html +++ b/html/wb_tree.html @@ -249,215 +249,216 @@

Names Convention

C x C++ Usage

-

Samples

-

Lua Binding

+

Building in Linux

+

Samples

+

Lua Binding

-

Representation

+

Representation

-

Guide

+

Guide

-

Samples

+

Samples

-

Reference

+

Reference

-

Storage

+

Storage

-

Guide

+

Guide

-

Samples

+

Samples

-

File Formats

+

File Formats

-

Reference

+

Reference

-

Capture

+

Capture

-

Guide

+

Guide

-

Samples

+

Samples

-

Reference

+

Reference

-

Processing

+

Processing

-

Guide

+

Guide

-

Samples

+

Samples

-

Reference

+

Reference

-

Additional Reference

+

Additional Reference

-

Utilities

+

Utilities

-

Structures

+

Structures

-

Includes

+

Includes

-

Globals

+

Globals

-- cgit v1.2.3