Difference between revisions of "Compiling ACE"

From Wiki for iCub and Friends
Jump to navigation Jump to search
m (InstallingACE moved to Compiling ACE: better name)
Line 1: Line 1:
== Linux ==
== Linux ==


Download ACE (recommended version 5.5.5) from (full version!): http://download.dre.vanderbilt.edu/, then unpack it and prepare for the compilation. Build a symlink to config.h as (config.h is in ACE_wrappers/ace):
Follow instructions at: http://www.dre.vanderbilt.edu/~schmidt/DOC_ROOT/ACE/ACE-INSTALL.html, section "Building and Installing ACE on UNIX" --> "Using the Traditional ACE/GNU Configuration".
 
A brief summary:
 
* Download ACE (see [[Which ACE version]] from: http://download.dre.vanderbilt.edu/, and unpack it
* set the environment variable ACE_ROOT to point to the directory where ace is unpacked, e.g.:
  export ACE_ROOT="/home/user/ACE_wrappers"
* update LD_LIBRARY_PATH in your .bashrc file:
  export LD_LIBRARY_PATH=$ACE_ROOT/lib:$LD_LIBRARY_PATH
* Build a symlink to config.h as (config.h is in ACE_wrappers/ace):
  ln -s config-linux.h config.h
  ln -s config-linux.h config.h
and (which can be found in ACE_wrappers/include/makeinclude):
and (which can be found in ACE_wrappers/include/makeinclude):
  ln -s platform_linux.GNU platform_macros.GNU
  ln -s platform_linux.GNU platform_macros.GNU


Run make from $ACE_ROOT/ace (e.g. make debug=0 for no debug information). When done, you should see the .so libraries in $ACE_ROOT/lib.
* Compile ace:
cd $ACE_ROOT/ace
make


Note: these instructions are derived from:
When you are done you should see the .so libraries in $ACE_ROOT/lib.
http://www.dre.vanderbilt.edu/~schmidt/DOC_ROOT/ACE/ACE-INSTALL.html#unix


'''Important''': follow the "Using the Traditional ACE/GNU Configuration" method. The other methods will compile successful, but the library you get might not work properly with YARP.
'''Important''': follow the "Using the Traditional ACE/GNU Configuration" method. The other methods will compile successful, but the library you get might not work properly with YARP.
Line 17: Line 27:
== Windows ==
== Windows ==


We recommend ace version 5.5.5, it can be downloaded from [http://www.cs.wustl.edu/~schmidt/ACE.html ace website]. Follow instructions to compile ACE.
Follow instructions at: http://www.dre.vanderbilt.edu/~schmidt/DOC_ROOT/ACE/ACE-INSTALL.html, section "Building and Installing ACE on Windows" --> "Building and Installing ACE on Windows with Microsoft Visual Studio".
 
A brief summary:


Here a short summary:
* Download ACE (see [[Which ACE version]] from: http://download.dre.vanderbilt.edu/, and unpack it
Unpack ACE in a directory of your choice. Set the ACE_ROOT environment variable to point to this directory. You will find the Visual Studio project files there in the ACE_wrappers directory. We typically open the ace/ACE_vc8.sln (or the one that matches your compiler), project file which contains only the definitions to compile the basic libraries (ACE is much bigger than that).  
* set the environment variable ACE_ROOT to point to the directory where ace is unpacked, e.g:
  C:/dev/ACE_wrappers
* add %ACE_ROOT%/lib to your system path, this is important to allow windows to locate ace.dll at runtime
* You will find the Visual Studio project files there in the ACE_wrappers directory. We suggest to use the ones within the ACE_wrappers/ace directory which compiles only the subset of the library you need (save a lot of compilation time). Pick the file that matches your compiler (e.g. ACE_vc8.sln)
* Before compiling, ACE requires the ACE_wrappers/ace/config.h file. This can be made equal (copy) to the ace/config-win32.h which has provisions for the supported WIN32 compilers. Then simply compile the libraries (from Visual Studio). Get a coffee, it takes a while.


Before compiling, ACE requires the ace/config.h file. This can be made equal (copy) to the ace/config-win32.h which has provisions for the supported WIN32 compilers. Then simply compile the libraries (from Visual Studio). Only ACE is required for Yarp (as we said, ACE comes with many other libraries, e.g. QoS). Get a coffee, it takes a while.


'''Don't forget to set up the environment veriable ACE_ROOT''' to point to where ACE was unpacked (e.g. ACE_wrappers). This will be used later on by (CMake) to find the ACE library.
'''Don't forget to set up the environment veriable ACE_ROOT''' to point to where ACE was unpacked (e.g. ACE_wrappers). This will be used later on by (CMake) to find the ACE library.
'''Don't forget to update your system path so that windows can locate ace.dll/aced.dll at runtime'''.

Revision as of 20:11, 25 November 2009

Linux

Follow instructions at: http://www.dre.vanderbilt.edu/~schmidt/DOC_ROOT/ACE/ACE-INSTALL.html, section "Building and Installing ACE on UNIX" --> "Using the Traditional ACE/GNU Configuration".

A brief summary:

 export ACE_ROOT="/home/user/ACE_wrappers"
  • update LD_LIBRARY_PATH in your .bashrc file:
 export LD_LIBRARY_PATH=$ACE_ROOT/lib:$LD_LIBRARY_PATH
  • Build a symlink to config.h as (config.h is in ACE_wrappers/ace):
ln -s config-linux.h config.h

and (which can be found in ACE_wrappers/include/makeinclude):

ln -s platform_linux.GNU platform_macros.GNU
  • Compile ace:
cd $ACE_ROOT/ace
make

When you are done you should see the .so libraries in $ACE_ROOT/lib.

Important: follow the "Using the Traditional ACE/GNU Configuration" method. The other methods will compile successful, but the library you get might not work properly with YARP.

Don't forget to set up the environment veriable ACE_ROOT to point to where ACE was unpacked (e.g. ACE_wrappers). This will be used later on by (CMake) to find the ACE library.

Windows

Follow instructions at: http://www.dre.vanderbilt.edu/~schmidt/DOC_ROOT/ACE/ACE-INSTALL.html, section "Building and Installing ACE on Windows" --> "Building and Installing ACE on Windows with Microsoft Visual Studio".

A brief summary:

 C:/dev/ACE_wrappers
  • add %ACE_ROOT%/lib to your system path, this is important to allow windows to locate ace.dll at runtime
  • You will find the Visual Studio project files there in the ACE_wrappers directory. We suggest to use the ones within the ACE_wrappers/ace directory which compiles only the subset of the library you need (save a lot of compilation time). Pick the file that matches your compiler (e.g. ACE_vc8.sln)
  • Before compiling, ACE requires the ACE_wrappers/ace/config.h file. This can be made equal (copy) to the ace/config-win32.h which has provisions for the supported WIN32 compilers. Then simply compile the libraries (from Visual Studio). Get a coffee, it takes a while.


Don't forget to set up the environment veriable ACE_ROOT to point to where ACE was unpacked (e.g. ACE_wrappers). This will be used later on by (CMake) to find the ACE library.

Don't forget to update your system path so that windows can locate ace.dll/aced.dll at runtime.