R: Error on RTT_PLUGIN_rtt-transport-corba_ROOT_DIR during compile of orogen test module

Dear Sirs,

tank you for your kind support.
Unfortunately I am trying without success to compile orogen generated modules.

I have a fresh install of toolchain-2.3.0 on ubuntu 10.10 with xenomai patch.

running, from the build directory, the command cmake .. -DCMAKE_INSTALL_PREFIX=$HOME/orocosComponents

I get the following output

cmake .. -DCMAKE_INSTALL_PREFIX=$HOME/orocosComponents
-- The C compiler identification is GNU
-- The CXX compiler identification is GNU
-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Performing Test CXX_SUPPORTS_WALL
-- Performing Test CXX_SUPPORTS_WALL - Success
-- Found Doxygen: /usr/bin/doxygen
-- documentation can be built
-- checking for module 'orocos-rtt-xenomai>=2.1.0'
-- found orocos-rtt-xenomai, version 2.3.0
-- checking for module 'typelib'
-- found typelib, version 1.1
-- checking for module 'orocos-rtt-corba-xenomai>=2.1.0'
-- found orocos-rtt-corba-xenomai, version 2.3.0
-- Orocos reports in /usr/src/orocos/install/include/rtt/transports/corba/rtt-corba-config.h to use the OMNIORB
-- checking for module 'orocos-ocl-xenomai>=2.1.0'
-- found orocos-ocl-xenomai, version 2.3.0
-- OCL found, the generated task library will be compatible with the deployer component
-- Optional library RTT_PLUGIN_rtt-marshalling NOT FOUND. If the library is already installed, use the RTT_PLUGIN_rtt-marshalling_ROOT_DIR environment variable or ccmake to set the missing variables manually.
-- Found RTT_PLUGIN_rtt-typekit
-- Found RTT_PLUGIN_rtt-transport-corba
-- Optional library RTT_PLUGIN_rtt-marshalling NOT FOUND. If the library is already installed, use the RTT_PLUGIN_rtt-marshalling_ROOT_DIR environment variable or ccmake to set the missing variables manually.
-- Optional library RTT_PLUGIN_rtt-marshalling NOT FOUND. If the library is already installed, use the RTT_PLUGIN_rtt-marshalling_ROOT_DIR environment variable or ccmake to set the missing variables manually.
-- Configuring done
-- Generating done
-- Build files have been written to: /root/rock/Rosetta10/build

Unfortunately I need to use rtt-marshalling library.

I set my CMakeLists.txt files as follows:

CMakeLists.txt in the root project

PROJECT(rosetta)
cmake_minimum_required(VERSION 2.6)

SET (CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/.orogen/config")
INCLUDE(rosettaBase)

find_package(RTTPlugin REQUIRED rtt-marshalling)
find_package(RTTPlugin COMPONENTS rtt-marshalling)
target_link_libraries(Rosetta ${RTT_PLUGIN_rtt-marshalling_LIBRARIES})

# FIND_PACKAGE(KDL)
# FIND_PACKAGE(OCL)

CMakeLists.txt in tasks directory

# Generated from orogen/lib/orogen/templates/tasks/CMakeLists.txt

include(rosettaTaskLib)

find_package(RTTPlugin REQUIRED rtt-marshalling)

ADD_LIBRARY(${ROSETTA_TASKLIB_NAME} SHARED
${ROSETTA_TASKLIB_SOURCES})

add_dependencies(${ROSETTA_TASKLIB_NAME}
regen-typekit)

TARGET_LINK_LIBRARIES(${ROSETTA_TASKLIB_NAME}
${OrocosRTT_LIBRARIES}
${ROSETTA_TASKLIB_DEPENDENT_LIBRARIES} ${RTT_PLUGIN_rtt-marshalling_LIBRARIES})
SET_TARGET_PROPERTIES(${ROSETTA_TASKLIB_NAME}
PROPERTIES LINK_INTERFACE_LIBRARIES "${ROSETTA_TASKLIB_INTERFACE_LIBRARIES}")

INSTALL(TARGETS ${ROSETTA_TASKLIB_NAME}
RUNTIME DESTINATION bin
LIBRARY DESTINATION lib/orocos)

INSTALL(FILES ${ROSETTA_TASKLIB_HEADERS}
DESTINATION include/orocos/rosetta)

I verified that librtt-marshalling-xenomai.so library
is stored in /usr/src/orocos/install/lib/orocos/xenomai/plugins/

Following your advice I run the command

cmake .. -DRTT_PLUGIN_rtt-marshalling_ROOT_DIR=/usr/src/orocos/install/lib/orocos/xenomai/plugins/librtt-marshalling-xenomai.so

but I got the same error.

Can You help me in finding what am I missing?

Thank you in advance

G. Rizzi

----Messaggio originale----

Da: pierrick [dot] koch [..] ...

Data: 14-mar-2011 4.09

A: <peter [..] ...>

Cc: <orocos-dev [..] ...>, <orocos-users [..] ...>, "gprizzi [..] ..."<gprizzi [..] ...>

Ogg: Re: [Orocos-Dev] [Orocos-users] Error on RTT_PLUGIN_rtt-transport-corba_ROOT_DIR during compile of orogen test module

Hi,
in the meanwhile you can do:

orogen *.orogen mkdir build &amp;&amp; cd buildcmake .. -DRTT_PLUGIN_rtt-transport-corba_LIBRARY=~/work/orocos-toolchain-23/install/lib/orocos/gnulinux/types/librtt-transport-corba-gnulinux.so -DRTT_PLUGIN_rtt-typekit_LIBRARY=~/work/orocos-toolchain-23/install/lib/orocos/gnulinux/types/librtt-typekit-gnulinux.so
make
where ~/work/orocos-toolchain-23 is the path to your orocos toolchain.

Cheers,Pierrick
On Sun, Mar 13, 2011 at 3:27 AM, Peter Soetens <peter [..] ...> wrote:

On Sat, Mar 12, 2011 at 9:06 PM, gprizzi [..] ... <gprizzi [..] ...> wrote:

> Dear Sirs,

>

> Whit the last patch I was able to install orocos Toolchain-2.3 on linux

> patched with xenomai.

>

> To test the system I executed the command:

>

> orogen create test

>

> to get the example orogen module.

>

> Then I executed the commands:

>

> orogen --target=xenomai -v test.orogen

> cmake .. -DCMAKE_INSTALL_PREFIX=$HOME/orocosComponents

>

> This last commands ends with errors about

>

> Optional library RTT_PLUGIN_rtt-typekit NOT FOUND. If the library is already

> installed, use the RTT_PLUGIN_rtt-typekit_ROOT_DIR environment variable or

> ccmake to set the missing variables manually.

> -- Optional library RTT_PLUGIN_rtt-transport-corba NOT FOUND. If the library

> is already installed, use the RTT_PLUGIN_rtt-transport-corba_ROOT_DIR

> environment variable or ccmake to set the missing variables manually.

> CMake Error: The following variables are used in this project, but they are

> set to NOTFOUND.

> Please set them or make sure they are set and tested correctly in the CMake

> files:

> RTT_PLUGIN_rtt-transport-corba_LIBRARY

> linked by target "test_test" in directory /root/rosetta/test

> RTT_PLUGIN_rtt-typekit_LIBRARY

> linked by target "test_test" in directory /root/rosetta/test

>

> I had the same kind of errors in november 2010 and in that occasion Mr.

> Sylvain Joyeux

> told me that The toolchain's orogen has been badly broken.

> A few days later updatting the project I found that this inconsistency was

> fixed.

>

> The errors reported above came from the same cause or they depends on

> environment variable I did't define?

> In the last case can you suggest me how can I correctly define the missing

> environment varibles?

I believe this bug is caused by the cmake macros used by orogen not looking

for the ${OROCOS_TARGET} subdirectory. We install libs by default in a

target subdir of lib/orocos/<target>, cmake looks probably only in lib/orocos.

We need to fix this on the mainline, it's gonna be for monday.

>

> The full output follows.

>

> Thank you in advance for your kind support.

>

> Gianpaolo Rizzi.

>

> root@rizzi-P5KC:~/rosetta# orogen create test

> root@rizzi-P5KC:~/rosetta# cd test

> root@rizzi-P5KC:~/rosetta/test# orogen --target=xenomai -v test.orogen

> INFO: creating /root/rosetta/test/.orogen/test.orogen

> INFO: creating /root/rosetta/test/.orogen/orogen-project-test.pc.in

> INFO: creating /root/rosetta/test/.orogen/tasks/TaskBase.cpp

> INFO: creating /root/rosetta/test/.orogen/tasks/TaskBase.hpp

> INFO: creating /root/rosetta/test/tasks/Task.cpp

> INFO: creating /root/rosetta/test/templates/tasks/Task.cpp

> INFO: creating /root/rosetta/test/tasks/Task.hpp

> INFO: creating /root/rosetta/test/templates/tasks/Task.hpp

> INFO: creating /root/rosetta/test/.orogen/tasks/DeployerComponent.cpp

> INFO: creating /root/rosetta/test/.orogen/tasks/test-tasks.pc.in

> INFO: creating /root/rosetta/test/.gitignore

> INFO: creating /root/rosetta/test/templates/.gitignore

> INFO: creating /root/rosetta/test/Doxyfile.in

> INFO: creating /root/rosetta/test/templates/Doxyfile.in

> INFO: creating /root/rosetta/test/.orogen/main-test_test.cpp

> INFO: creating /root/rosetta/test/.orogen/test_test.pc.in

> INFO: creating /root/rosetta/test/.orogen/config/test_testDeployment.cmake

> INFO: creating /root/rosetta/test/.orogen/config/FindOrocosCORBA.cmake

> INFO: creating /root/rosetta/test/.orogen/config/Deployment.cmake

> INFO: creating /root/rosetta/test/.orogen/config/LibFindMacros.cmake

> INFO: creating /root/rosetta/test/.orogen/config/RPATHHandling.cmake

> INFO: creating /root/rosetta/test/.orogen/config/FindRTTPlugin.cmake

> INFO: creating /root/rosetta/test/.orogen/config/testBase.cmake

> INFO: creating /root/rosetta/test/.orogen/config/testTaskLib.cmake

> INFO: creating /root/rosetta/test/tasks/CMakeLists.txt

> INFO: creating /root/rosetta/test/templates/tasks/CMakeLists.txt

> INFO: creating /root/rosetta/test/CMakeLists.txt

> INFO: creating /root/rosetta/test/templates/CMakeLists.txt

> root@rizzi-P5KC:~/rosetta/test# mkdir build

> root@rizzi-P5KC:~/rosetta/test# cd build

> root@rizzi-P5KC:~/rosetta/test/build# cmake ..

> -DCMAKE_INSTALL_PREFIX=$HOME/orocosComponents

> -- The C compiler identification is GNU

> -- The CXX compiler identification is GNU

> -- Check for working C compiler: /usr/bin/gcc

> -- Check for working C compiler: /usr/bin/gcc -- works

> -- Detecting C compiler ABI info

> -- Detecting C compiler ABI info - done

> -- Check for working CXX compiler: /usr/bin/c++

> -- Check for working CXX compiler: /usr/bin/c++ -- works

> -- Detecting CXX compiler ABI info

> -- Detecting CXX compiler ABI info - done

> -- Performing Test CXX_SUPPORTS_WALL

> -- Performing Test CXX_SUPPORTS_WALL - Success

> -- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)

> -- documentation generation disabled

> -- checking for module 'orocos-rtt-xenomai>=2.1.0'

> -- found orocos-rtt-xenomai, version 2.3.0

> -- checking for module 'orocos-ocl-xenomai>=2.1.0'

> -- found orocos-ocl-xenomai, version 2.3.0

> -- OCL found, the generated task library will be compatible with the

> deployer component

> -- checking for module 'orocos-rtt-corba-xenomai'

> -- found orocos-rtt-corba-xenomai, version 2.3.0

> -- Optional library RTT_PLUGIN_rtt-typekit NOT FOUND. If the library is

> already installed, use the RTT_PLUGIN_rtt-typekit_ROOT_DIR environment

> variable or ccmake to set the missing variables manually.

> -- Optional library RTT_PLUGIN_rtt-transport-corba NOT FOUND. If the library

> is already installed, use the RTT_PLUGIN_rtt-transport-corba_ROOT_DIR

> environment variable or ccmake to set the missing variables manually.

> CMake Error: The following variables are used in this project, but they are

> set to NOTFOUND.

> Please set them or make sure they are set and tested correctly in the CMake

> files:

> RTT_PLUGIN_rtt-transport-corba_LIBRARY

> linked by target "test_test" in directory /root/rosetta/test

> RTT_PLUGIN_rtt-typekit_LIBRARY

> linked by target "test_test" in directory /root/rosetta/test

>

> -- Configuring incomplete, errors occurred!

>

Peter

--

Orocos-Dev mailing list

Orocos-Dev [..] ...

http://lists.mech.kuleuven.be/mailman/listinfo/orocos-dev