I can't compile RTT

Dear Developers,

I'm trying to compile RTT files on Ubuntu 10.04 and it can't compile.

/media/DATA/orocos-toolchain/rtt/build$ cmake .. -DOROCOS_TARGET=gnulinux
Orocos RTT version  (2.4.0)
No orocos-rtt.cmake file loaded, using default settings.See orocos-rtt.default.cmake
-- CMAKE_VERSION: 2.8.0
Boost found in /usr/include
-- Could NOT find Xerces  (missing:  XERCES_C_LIBRARY XERCES_INCLUDE_DIR)
Orocos target is gnulinux
-- Found PTHREAD 
-- Detected gcc4: 4.4.3
 
-- Found Doxygen -- API documentation can be built
-- CORBA enabled: OMNIORB
TLSF settings:  -DUSE_SBRK -DUSE_MMAP -D_GNU_SOURCE -DTLSF_STATISTIC
Building CORBA Transport library.
Building MQueue Transport library (Requires Boost >= 1.37.0).
No default plugin path given, setting it to /media/DATA/orocos-toolchain/install/lib/orocos.
Define the DEFAULT_PLUGIN_PATH cmake variable to override this.
-- Configuring done
-- Generating done
-- Build files have been written to: /media/DATA/orocos-toolchain/rtt/build

And then, I use : make

...
 
[ 44%] Building CXX object rtt/CMakeFiles/orocos-rtt-gnulinux_dynamic.dir/extras/dev/PulseTrainGeneratorInterface.cpp.o
[ 45%] Building CXX object rtt/CMakeFiles/orocos-rtt-gnulinux_dynamic.dir/extras/dev/SensorInterface.cpp.o
Linking CXX shared library liborocos-rtt-gnulinux.so
CMakeFiles/orocos-rtt-gnulinux_dynamic.dir/plugin/PluginLoader.cpp.o: In function `RTT::plugin::PluginLoader::isCompatiblePlugin(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
/media/DATA/orocos-toolchain/rtt/rtt/plugin/PluginLoader.cpp:747: undefined reference to `boost::filesystem3::path::filename() const'
 
...
 
/usr/local/include/boost/filesystem/v3/operations.hpp:563: undefined reference to `boost::filesystem3::detail::dir_itr_close(void*&, void*&)'
/usr/local/include/boost/filesystem/v3/operations.hpp:563: undefined reference to `boost::filesystem3::detail::dir_itr_close(void*&, void*&)'
collect2: ld returned 1 exit status
make[2]: *** [rtt/liborocos-rtt-gnulinux.so.2.4.0] Error 1
make[1]: *** [rtt/CMakeFiles/orocos-rtt-gnulinux_dynamic.dir/all] Error 2
make: *** [all] Error 2

Any ideas?¿ Thanks in advance Toni

I can't compile RTT

On Sep 26, 2011, at 04:07 , antonio [dot] castellon [..] ... wrote:

> Dear Developers,
>
> I'm trying to compile RTT files on Ubuntu 10.04 and it can't compile.
>
>

> /media/DATA/orocos-toolchain/rtt/build$ cmake .. -DOROCOS_TARGET=gnulinux
> Orocos RTT version  (2.4.0)
> No orocos-rtt.cmake file loaded, using default settings.See orocos-rtt.default.cmake
> -- CMAKE_VERSION: 2.8.0
> Boost found in /usr/include
> -- Could NOT find Xerces  (missing:  XERCES_C_LIBRARY XERCES_INCLUDE_DIR)
> Orocos target is gnulinux
> -- Found PTHREAD 
> -- Detected gcc4: 4.4.3
> 
> -- Found Doxygen -- API documentation can be built
> -- CORBA enabled: OMNIORB
> TLSF settings:  -DUSE_SBRK -DUSE_MMAP -D_GNU_SOURCE -DTLSF_STATISTIC
> Building CORBA Transport library.
> Building MQueue Transport library (Requires Boost >= 1.37.0).
> No default plugin path given, setting it to /media/DATA/orocos-toolchain/install/lib/orocos.
> Define the DEFAULT_PLUGIN_PATH cmake variable to override this.
> -- Configuring done
> -- Generating done
> -- Build files have been written to: /media/DATA/orocos-toolchain/rtt/build
> 
> 

>
> And then, I use : make
>
>
> ...
> 
> [ 44%] Building CXX object rtt/CMakeFiles/orocos-rtt-gnulinux_dynamic.dir/extras/dev/PulseTrainGeneratorInterface.cpp.o
> [ 45%] Building CXX object rtt/CMakeFiles/orocos-rtt-gnulinux_dynamic.dir/extras/dev/SensorInterface.cpp.o
> Linking CXX shared library liborocos-rtt-gnulinux.so
> CMakeFiles/orocos-rtt-gnulinux_dynamic.dir/plugin/PluginLoader.cpp.o: In function `RTT::plugin::PluginLoader::isCompatiblePlugin(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
> /media/DATA/orocos-toolchain/rtt/rtt/plugin/PluginLoader.cpp:747: undefined reference to `boost::filesystem3::path::filename() const'
> 
> ...
> 
> /usr/local/include/boost/filesystem/v3/operations.hpp:563: undefined reference to `boost::filesystem3::detail::dir_itr_close(void*&, void*&)'
> /usr/local/include/boost/filesystem/v3/operations.hpp:563: undefined reference to `boost::filesystem3::detail::dir_itr_close(void*&, void*&)'
> collect2: ld returned 1 exit status
> make[2]: *** [rtt/liborocos-rtt-gnulinux.so.2.4.0] Error 1
> make[1]: *** [rtt/CMakeFiles/orocos-rtt-gnulinux_dynamic.dir/all] Error 2
> make: *** [all] Error 2
> 

What branch are you using? Master, stable, toolchain? What version of boost is installed? I believe that we have fixed most of the boost v3 filesystem issues, but we might have missed some. The above look familiar though, so you might just need a different branch ... try master?
S

enkulator's picture

I can't compile RTT

Dear Roderick,

I'm using orocos-toolchain 2.4.0 and Boost 1.40.
Whats the difference between master, stable and toolchain? perhaps I'm worng
using toolchain.

Thanks in advance
Toni

On Mon, Sep 26, 2011 at 13:26, S Roderick <kiwi [dot] net [..] ...> wrote:

> On Sep 26, 2011, at 04:07 , antonio [dot] castellon [..] ... wrote:
>
> > Dear Developers,
> >
> > I'm trying to compile RTT files on Ubuntu 10.04 and it can't compile.
> >
> >

> > /media/DATA/orocos-toolchain/rtt/build$ cmake .. -DOROCOS_TARGET=gnulinux
> > Orocos RTT version  (2.4.0)
> > No orocos-rtt.cmake file loaded, using default settings.See
> orocos-rtt.default.cmake
> > -- CMAKE_VERSION: 2.8.0
> > Boost found in /usr/include
> > -- Could NOT find Xerces  (missing:  XERCES_C_LIBRARY XERCES_INCLUDE_DIR)
> > Orocos target is gnulinux
> > -- Found PTHREAD
> > -- Detected gcc4: 4.4.3
> >
> > -- Found Doxygen -- API documentation can be built
> > -- CORBA enabled: OMNIORB
> > TLSF settings:  -DUSE_SBRK -DUSE_MMAP -D_GNU_SOURCE -DTLSF_STATISTIC
> > Building CORBA Transport library.
> > Building MQueue Transport library (Requires Boost >= 1.37.0).
> > No default plugin path given, setting it to
> /media/DATA/orocos-toolchain/install/lib/orocos.
> > Define the DEFAULT_PLUGIN_PATH cmake variable to override this.
> > -- Configuring done
> > -- Generating done
> > -- Build files have been written to:
> /media/DATA/orocos-toolchain/rtt/build
> >
> > 

> >
> > And then, I use : make
> >
> >
> > ...
> >
> > [ 44%] Building CXX object
> rtt/CMakeFiles/orocos-rtt-gnulinux_dynamic.dir/extras/dev/PulseTrainGeneratorInterface.cpp.o
> > [ 45%] Building CXX object
> rtt/CMakeFiles/orocos-rtt-gnulinux_dynamic.dir/extras/dev/SensorInterface.cpp.o
> > Linking CXX shared library liborocos-rtt-gnulinux.so
> > CMakeFiles/orocos-rtt-gnulinux_dynamic.dir/plugin/PluginLoader.cpp.o: In
> function
> `RTT::plugin::PluginLoader::isCompatiblePlugin(std::basic_string<char,
> std::char_traits<char>, std::allocator<char> > const&)':
> > /media/DATA/orocos-toolchain/rtt/rtt/plugin/PluginLoader.cpp:747:
> undefined reference to `boost::filesystem3::path::filename() const'
> >
> > ...
> >
> > /usr/local/include/boost/filesystem/v3/operations.hpp:563: undefined
> reference to `boost::filesystem3::detail::dir_itr_close(void*&, void*&)'
> > /usr/local/include/boost/filesystem/v3/operations.hpp:563: undefined
> reference to `boost::filesystem3::detail::dir_itr_close(void*&, void*&)'
> > collect2: ld returned 1 exit status
> > make[2]: *** [rtt/liborocos-rtt-gnulinux.so.2.4.0] Error 1
> > make[1]: *** [rtt/CMakeFiles/orocos-rtt-gnulinux_dynamic.dir/all] Error 2
> > make: *** [all] Error 2
> > 

>
> What branch are you using? Master, stable, toolchain? What version of boost
> is installed? I believe that we have fixed most of the boost v3 filesystem
> issues, but we might have missed some. The above look familiar though, so
> you might just need a different branch ... try master?
> S
>
>

I can't compile RTT

On Sep 26, 2011, at 07:35 , Antonio Castellon wrote:

> Dear Roderick,
>
> I'm using orocos-toolchain 2.4.0 and Boost 1.40.

Did you download the tarball of Orocos, or did you checkout with git?

> Whats the difference between master, stable and toolchain? perhaps I'm worng using toolchain.

You could try to check it out with git, and select the master branch. If you're not sure how to do that, wait for someone else to answer my following question ...

Everyone ... I don't see any git-related instructions for doing this with v2. Am I missing something ...?
S

>
> Thanks in advance
> Toni
>
>
> On Mon, Sep 26, 2011 at 13:26, S Roderick <kiwi [dot] net [..] ...> wrote:
> On Sep 26, 2011, at 04:07 , antonio [dot] castellon [..] ... wrote:
>
> > Dear Developers,
> >
> > I'm trying to compile RTT files on Ubuntu 10.04 and it can't compile.
> >
> >

> > /media/DATA/orocos-toolchain/rtt/build$ cmake .. -DOROCOS_TARGET=gnulinux
> > Orocos RTT version  (2.4.0)
> > No orocos-rtt.cmake file loaded, using default settings.See orocos-rtt.default.cmake
> > -- CMAKE_VERSION: 2.8.0
> > Boost found in /usr/include
> > -- Could NOT find Xerces  (missing:  XERCES_C_LIBRARY XERCES_INCLUDE_DIR)
> > Orocos target is gnulinux
> > -- Found PTHREAD
> > -- Detected gcc4: 4.4.3
> >
> > -- Found Doxygen -- API documentation can be built
> > -- CORBA enabled: OMNIORB
> > TLSF settings:  -DUSE_SBRK -DUSE_MMAP -D_GNU_SOURCE -DTLSF_STATISTIC
> > Building CORBA Transport library.
> > Building MQueue Transport library (Requires Boost >= 1.37.0).
> > No default plugin path given, setting it to /media/DATA/orocos-toolchain/install/lib/orocos.
> > Define the DEFAULT_PLUGIN_PATH cmake variable to override this.
> > -- Configuring done
> > -- Generating done
> > -- Build files have been written to: /media/DATA/orocos-toolchain/rtt/build
> >
> > 

> >
> > And then, I use : make
> >
> >
> > ...
> >
> > [ 44%] Building CXX object rtt/CMakeFiles/orocos-rtt-gnulinux_dynamic.dir/extras/dev/PulseTrainGeneratorInterface.cpp.o
> > [ 45%] Building CXX object rtt/CMakeFiles/orocos-rtt-gnulinux_dynamic.dir/extras/dev/SensorInterface.cpp.o
> > Linking CXX shared library liborocos-rtt-gnulinux.so
> > CMakeFiles/orocos-rtt-gnulinux_dynamic.dir/plugin/PluginLoader.cpp.o: In function `RTT::plugin::PluginLoader::isCompatiblePlugin(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
> > /media/DATA/orocos-toolchain/rtt/rtt/plugin/PluginLoader.cpp:747: undefined reference to `boost::filesystem3::path::filename() const'
> >
> > ...
> >
> > /usr/local/include/boost/filesystem/v3/operations.hpp:563: undefined reference to `boost::filesystem3::detail::dir_itr_close(void*&, void*&)'
> > /usr/local/include/boost/filesystem/v3/operations.hpp:563: undefined reference to `boost::filesystem3::detail::dir_itr_close(void*&, void*&)'
> > collect2: ld returned 1 exit status
> > make[2]: *** [rtt/liborocos-rtt-gnulinux.so.2.4.0] Error 1
> > make[1]: *** [rtt/CMakeFiles/orocos-rtt-gnulinux_dynamic.dir/all] Error 2
> > make: *** [all] Error 2
> > 

>
> What branch are you using? Master, stable, toolchain? What version of boost is installed? I believe that we have fixed most of the boost v3 filesystem issues, but we might have missed some. The above look familiar though, so you might just need a different branch ... try master?
> S
>
>

I can't compile RTT

On Mon, Sep 26, 2011 at 2:01 PM, Stephen Roderick <kiwi [dot] net [..] ...> wrote:

> On Sep 26, 2011, at 07:35 , Antonio Castellon wrote:
>
> Dear Roderick,
>
> I'm using orocos-toolchain 2.4.0 and Boost 1.40.
>
>
> Did you download the tarball of Orocos, or did you checkout with git?
>

I think he used the tarball.

>
> Whats the difference between master, stable and toolchain? perhaps I'm
> worng using toolchain.
>
>
> You could try to check it out with git, and select the master branch. If
> you're not sure how to do that, wait for someone else to answer my following
> question ...
>
> Everyone ... I don't see any git-related instructions for doing this with
> v2. Am I missing something ...?
>

Very basic instructions: http://www.orocos.org/wiki/rtt/git

I think he hit the 'traditional' boost filesystem API changes. It's possible
that 2.4.0 did not yet have all these patches wrt boost 1.40, although it
seems unlikely to me. It looks like a newer boost version...

Peter

I can't compile RTT

On Sep 26, 2011, at 18:15 , Peter Soetens wrote:

> On Mon, Sep 26, 2011 at 2:01 PM, Stephen Roderick <kiwi [dot] net [..] ...> wrote:
> On Sep 26, 2011, at 07:35 , Antonio Castellon wrote:
>
>> Dear Roderick,
>>
>> I'm using orocos-toolchain 2.4.0 and Boost 1.40.
>
> Did you download the tarball of Orocos, or did you checkout with git?
>
> I think he used the tarball.
>
>
>> Whats the difference between master, stable and toolchain? perhaps I'm worng using toolchain.
>
> You could try to check it out with git, and select the master branch. If you're not sure how to do that, wait for someone else to answer my following question ...
>
> Everyone ... I don't see any git-related instructions for doing this with v2. Am I missing something ...?
>
> Very basic instructions: http://www.orocos.org/wiki/rtt/git
>
> I think he hit the 'traditional' boost filesystem API changes. It's possible that 2.4.0 did not yet have all these patches wrt boost 1.40, although it seems unlikely to me. It looks like a newer boost version...

v3 was default from boost 1.46 on ...

http://www.boost.org/doc/libs/1_46_1/libs/filesystem/v3/doc/index.htm

so boost 1.40 should be v2. I'm pretty sure we did not screw up v2 support with the v3 patches though ....

Toni's errors were associated with boost::filesystem3::xxx" items, so that tells me he is _not_ running boost 1.40. And they're linker errors, not compiler errors. Toni, do you have multiple boost libraries installed?
S

enkulator's picture

I can't compile RTT

Hi Stephen, Peter and friends,

My Boost libraries installed appear as:

/media/DATA/orocos-toolchain/rtt/build$ dpkg --get-selections | grep boost

libboost-all-dev install

libboost-date-time1.40-dev install

libboost-date-time1.40.0 install

libboost-dev install

libboost-filesystem-dev install

libboost-filesystem1.40-dev install

libboost-filesystem1.40.0 install

libboost-graph-dev install

libboost-graph1.40-dev install

libboost-graph1.40.0 install

libboost-iostreams1.40-dev install

libboost-iostreams1.40.0 install

libboost-math1.40-dev install

libboost-math1.40.0 install

libboost-program-options-dev install

libboost-program-options1.40-dev install

libboost-program-options1.40.0 install

libboost-python1.40-dev install

libboost-python1.40.0 install

libboost-regex-dev install

libboost-regex1.40-dev install

libboost-regex1.40.0 install

libboost-serialization1.40-dev install

libboost-serialization1.40.0 install

libboost-signals1.40-dev install

libboost-signals1.40.0 install

libboost-system1.40-dev install

libboost-system1.40.0 install

libboost-test1.40-dev install

libboost-test1.40.0 install

libboost-thread-dev install

libboost-thread1.40-dev install

libboost-thread1.40.0 install

libboost-wave1.40-dev install

libboost-wave1.40.0 install

libboost1.40-all-dev install

libboost1.40-dev install

I search inside of "*usr/local/include/boost*" on version.hpp file and
appear:

#define BOOST_VERSION 104700
and
#define BOOST_LIB_VERSION "1_47"

Regards,
Toni

On Tue, Sep 27, 2011 at 00:29, Stephen Roderick <kiwi [dot] net [..] ...> wrote:

> On Sep 26, 2011, at 18:15 , Peter Soetens wrote:
>
> On Mon, Sep 26, 2011 at 2:01 PM, Stephen Roderick <kiwi [dot] net [..] ...>wrote:
>
>> On Sep 26, 2011, at 07:35 , Antonio Castellon wrote:
>>
>> Dear Roderick,
>>
>> I'm using orocos-toolchain 2.4.0 and Boost 1.40.
>>
>>
>> Did you download the tarball of Orocos, or did you checkout with git?
>>
>
> I think he used the tarball.
>
>
>>
>> Whats the difference between master, stable and toolchain? perhaps I'm
>> worng using toolchain.
>>
>>
>> You could try to check it out with git, and select the master branch. If
>> you're not sure how to do that, wait for someone else to answer my following
>> question ...
>>
>> Everyone ... I don't see any git-related instructions for doing this with
>> v2. Am I missing something ...?
>>
>
> Very basic instructions: http://www.orocos.org/wiki/rtt/git
>
> I think he hit the 'traditional' boost filesystem API changes. It's
> possible that 2.4.0 did not yet have all these patches wrt boost 1.40,
> although it seems unlikely to me. It looks like a newer boost version...
>
>
> v3 was default from boost 1.46 on ...
>
> http://www.boost.org/doc/libs/1_46_1/libs/filesystem/v3/doc/index.htm
>
> so boost 1.40 should be v2. I'm pretty sure we did not screw up v2 support
> with the v3 patches though ....
>
> Toni's errors were associated with boost::filesystem3::xxx" items, so that
> tells me he is _not_ running boost 1.40. And they're linker errors, not
> compiler errors. Toni, do you have multiple boost libraries installed?
> S
>