Re: Orocos integration in buildroot

Willy Lambert <[email protected]>
Newsgroups gmane.science.robotics.orocos.devel
Message-ID <CAKvQZ_3mO4tjH7=ALqepOFj2V=tMZ3uH_4e5j6XXeiikr5bwCg@mail.gmail.com>
2013/1/29 Willy Lambert <[email protected]>:
> 2013/1/28 Charles Lesire-Cabaniols <[email protected]>:
>>
>>
>>
>> 2013/1/23 Willy Lambert <[email protected]>
>>>
>>> 2013/1/22 Philippe Hamelin <[email protected]>:
>>> > 2013/1/22 Willy Lambert <[email protected]>
>>> >>
>>> >> Hi all,
>>> >>
>>> >> for some time ago, Philippe Hamelin pointed me to his git repo with
>>> >> Orocos integrated in Buildroot in the aim to fit in a low performance
>>> >> devices :
>>> >> https://github.com/phamelin/buildroot/tree/2011.05-sm
>>> >>
>>> >> I spent some time to play with Buildroot with the aim of reducing my
>>> >> rootfs from 2GB to something like 200Mb.
>>> >>
>>> >> I'm now ready with buildroot and I'm attacking the Orocos packaging
>>> >> from Philippe's work. I would like to post patches to buildroot about
>>> >> Orocos integration. Does anyone care about this ?
>>> >>
>>> >
>>> > I'm glad to hear that it serves someone else.
>>> >
>>> >>
>>> >> @Philippe, was there any reason why you did not post you work back to
>>> >> Buildroot ? (Technical problems ? Time ? Paches refused ? )
>>> >>
>>> >
>>> > Time as usual :-)
>>> >
>>> > Philippe
>>> >
>>>
>>> I seems that boost is now existing in new buildroot versions.
>>>
>>>
>>>
>>> In order to pur Orocos in Buildroot I need a way to get Orocos
>>> sources. The options are :
>>> _ a git link to a .git file (would be :
>>> git://gitorious.org/orocos-toolchain/rtt.git for instance, but is this
>>> branch stable ?)
>>
>>
>> You have to point to the last stable release. Today it's toolchain-2.6. Bug
>> fixes are directly applied to this branch when needed.
>>
>>>
>>> _ a direct link to a source tarball  (would be :
>>> http://people.mech.kuleuven.be/~orocos/pub/stable/toolchain/, but what
>>> about minor patches ...)
>>>
>>> Any idea about the best solution ?
>>> --
>>> Orocos-Dev mailing list
>>> [email protected]
>>> http://lists.mech.kuleuven.be/mailman/listinfo/orocos-dev
>>
>>
>
> I managed to get sources and start building them.
>
> I currently have a build error in rtt/ExecutionEngine.cpp, that's
> certainly due to the -fno-exeption option given to gcc. The are 2
> questions around this :
> _ is it possible to build Orocos without exeptions ?
> _ is there any other code that could rely on exeptions that compiled
> that I could take as an example to propose a patch if this is an
> unexpected error.
>
>
> [ 12%] Building C object
> rtt/CMakeFiles/orocos-rtt-gnulinux_dynamic.dir/os/tlsf/tlsf.c.o
> cd /wix/buildroot/output/build/orocos-rtt-2.5.0/rtt/rtt &&
> /wix/buildroot/output/host/usr/bin/i686-buildroot-linux-uclibc-gcc
> -DRTT_DLL_EXPORT -DOROCOS_TARGET=gnulinux -D_LARGEFILE_SOURCE
> -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -pipe -O2
> -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
> -pipe -O2  -Os -DNDEBUG -fPIC
> -I/wix/buildroot/output/build/orocos-rtt-2.5.0/rtt/rtt/os/gnulinux
> -I/wix/buildroot/output/build/orocos-rtt-2.5.0/rtt/rtt/os
> -I/wix/buildroot/output/build/orocos-rtt-2.5.0/rtt/rtt
> -I/wix/buildroot/output/build/orocos-rtt-2.5.0/rtt
> -I/wix/buildroot/output/host/usr/i686-buildroot-linux-uclibc/sysroot/usr/include
>    -Wall  -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
> -D_FILE_OFFSET_BITS=64  -pipe -O2  -D_LARGEFILE_SOURCE
> -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -pipe -O2
> -fmessage-length=0 -fno-exceptions -ffunction-sections -fdata-sections
> -o CMakeFiles/orocos-rtt-gnulinux_dynamic.dir/os/tlsf/tlsf.c.o   -c
> /wix/buildroot/output/build/orocos-rtt-2.5.0/rtt/rtt/os/tlsf/tlsf.c
> /wix/buildroot/output/build/orocos-rtt-2.5.0/rtt/rtt/ExecutionEngine.cpp:
> In member function 'void RTT::ExecutionEngine::processChildren()':
> /wix/buildroot/output/build/orocos-rtt-2.5.0/rtt/rtt/ExecutionEngine.cpp:332:47:
> error: exception handling disabled, use -fexceptions to enable
> /wix/buildroot/output/build/orocos-rtt-2.5.0/rtt/rtt/ExecutionEngine.cpp:334:43:
> error: 'e' was not declared in this scope
> /wix/buildroot/output/build/orocos-rtt-2.5.0/rtt/rtt/ExecutionEngine.cpp:332:19:
> error: '...' handler must be the last handler for its try block
> /wix/buildroot/output/build/orocos-rtt-2.5.0/rtt/rtt/ExecutionEngine.cpp:347:43:
> error: 'e' was not declared in this scope
> /wix/buildroot/output/build/orocos-rtt-2.5.0/rtt/rtt/ExecutionEngine.cpp:345:19:
> error: '...' handler must be the last handler for its try block
> /wix/buildroot/output/build/orocos-rtt-2.5.0/rtt/rtt/ExecutionEngine.cpp:365:43:
> error: 'e' was not declared in this scope
> /wix/buildroot/output/build/orocos-rtt-2.5.0/rtt/rtt/ExecutionEngine.cpp:363:19:
> error: '...' handler must be the last handler for its try block
> /wix/buildroot/output/build/orocos-rtt-2.5.0/rtt/rtt/ExecutionEngine.cpp:376:43:
> error: 'e' was not declared in this scope
> /wix/buildroot/output/build/orocos-rtt-2.5.0/rtt/rtt/ExecutionEngine.cpp:374:19:
> error: '...' handler must be the last handler for its try block
> make[3]: *** [rtt/CMakeFiles/orocos-rtt-gnulinux_dynamic.dir/ExecutionEngine.cpp.o]
> Error 1
> make[3]: *** Waiting for unfinished jobs....
> /wix/buildroot/output/build/orocos-rtt-2.5.0/rtt/rtt/OperationInterface.cpp:
> In member function 'bool RTT::OperationInterface::isSynchronous(const
> std::string&) const':
> /wix/buildroot/output/build/orocos-rtt-2.5.0/rtt/rtt/OperationInterface.cpp:99:13:
> error: exception handling disabled, use -fexceptions to enable
> make[3]: *** [rtt/CMakeFiles/orocos-rtt-gnulinux_dynamic.dir/OperationInterface.cpp.o]
> Error 1
> /wix/buildroot/output/build/orocos-rtt-2.5.0/rtt/rtt/Service.cpp: In
> member function 'RTT::Service::shared_ptr RTT::Service::provides()':
> /wix/buildroot/output/build/orocos-rtt-2.5.0/rtt/rtt/Service.cpp:108:37:
> error: exception handling disabled, use -fexceptions to enable
> make[3]: *** [rtt/CMakeFiles/orocos-rtt-gnulinux_dynamic.dir/Service.cpp.o]
> Error 1

I oppened a bugtracker for this part, as I found that standard
gnulinux install has the same problem.


I successfully built log4cpp and rtt. But ocl has some difficulties to
find rtt. cmake says at the same time :
-- Found orocos-rtt 2.5.0 for the gnulinux target.
and
  but it set OROCOS-RTT_FOUND to FALSE so package "OROCOS-RTT" is considered
  to be NOT FOUND.

So I don't understand what's happening there. Can anyone helps with this ?


Here is the log :

ard@ard-host(10.0):/wix/buildroot$ VERBOSE=2 make orocos-ocl
>>> orocos-ocl 2.5.0 Configuring
(cd /wix/buildroot/output/build/orocos-ocl-2.5.0/ocl && rm -f
CMakeCache.txt &&  /wix/buildroot/output/host/usr/bin/cmake
/wix/buildroot/output/build/orocos-ocl-2.5.0/ocl
-DCMAKE_TOOLCHAIN_FILE="/wix/buildroot/output/host/usr/share/buildroot/toolchainfile.cmake"
-DCMAKE_INSTALL_PREFIX="/usr"
-DOROCOS-RTT_DIR="/wix/buildroot/output/host/usr/i686-buildroot-linux-uclibc/sysroot/wix/buildroot/output/build/orocos-rtt-2.5.0/install/lib/cmake/orocos-rtt"
)
Re-run cmake no build system arguments
-- The C compiler identification is GNU 4.5.4
-- The CXX compiler identification is GNU 4.5.4
-- Check for working C compiler:
/wix/buildroot/output/host/usr/bin/i686-buildroot-linux-uclibc-gcc
-- Check for working C compiler:
/wix/buildroot/output/host/usr/bin/i686-buildroot-linux-uclibc-gcc --
works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler:
/wix/buildroot/output/host/usr/bin/i686-buildroot-linux-uclibc-g++
-- Check for working CXX compiler:
/wix/buildroot/output/host/usr/bin/i686-buildroot-linux-uclibc-g++ --
works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
Orocos Component Library version  (2.5.0)
No orocos-ocl.cmake file loaded, using default settings.See
orocos-ocl.default.cmake
Detected OROCOS_TARGET environment variable. Using: gnulinux
Orocos-RTT found in
/wix/buildroot/output/host/usr/i686-buildroot-linux-uclibc/sysroot/wix/buildroot/output/build/orocos-rtt-2.5.0/install/lib/cmake/orocos-rtt/orocos-rtt-gnulinux-libraries.cmake
-- Found orocos-rtt 2.5.0 for the gnulinux target.
CMake Error at CMakeLists.txt:168 (find_package):
  Found package configuration file:

    /wix/buildroot/output/host/usr/i686-buildroot-linux-uclibc/sysroot/wix/buildroot/output/build/orocos-rtt-2.5.0/install/lib/cmake/orocos-rtt/orocos-rtt-config.cmake

  but it set OROCOS-RTT_FOUND to FALSE so package "OROCOS-RTT" is considered
  to be NOT FOUND.


-- Configuring incomplete, errors occurred!
make: *** [/wix/buildroot/output/build/orocos-ocl-2.5.0/.stamp_configured]
Error 1
-- 
Orocos-Dev mailing list
[email protected]
http://lists.mech.kuleuven.be/mailman/listinfo/orocos-dev
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.