thanks and helloworld segmentation fault

Hi everybody,
first of all, thanks for the reply to my last post (core-test failed).

Now, I ran into another problem. My goal is to use the OCL camera
component. For that I downloaded ocl from the svn repository. That I
cannot compile:

/home/irene/OrocosSrc/ocl/taskbrowser/TaskBrowser.cpp: In member
function »void OCL::TaskBrowser::printInfo(const std::string&)«:
/home/irene/OrocosSrc/ocl/taskbrowser/TaskBrowser.cpp:1612: error:
»class RTT::TaskContext« does not contain element named »ready«
make: *** [all] Fehler 2

What I did then was to check out the tar.bz2 version of ocl from the
website. That I can compile when I do NOT make cameras and test.
So I wanted to check if the helloworld application works and it
terminates with a segmentation fault.
I added all output underneath this post. Any help is very much appreciated!

ccmake .
-----------------------------------------------------------------------output-ccmake--------------------------------------------
Orocos Component Library version (1.4.1)

Build type set to 'OCL' by user.

Found Doxygen -- documentation can be built

Searching RTT in /usr/local:

Found flavors:
orocos-rtt-gnulinux.pc;orocos-rtt-lxrt.pc;orocos-rtt-corba-lxrt.pc

-- Looking for orocos-rtt-gnulinux >= 1.3.0 -- found

-- Looking for orocos-rtt-lxrt >= 1.3.0 -- found

Using: lxrt . Set OROCOS_TARGET variable to another one to change the
compile target.

-- Looking for orocos-rtt-lxrt >= 1.0.0 -- found

Includes in:
/usr/local/include;ON;/usr/realtime/include;/usr/src/kernel-headers-2.6.15-rtai/include

Libraries in: /usr/local/lib;/usr/realtime/lib

Libraries: orocos-rtt-lxrt;lxrt;pthread;xerces-c

Defines: -DOROCOS_TARGET=lxrt

Detected CORBA build of RTT:
/usr/local/include/rtt/corba/ControlTaskProxy.hpp

-- Looking for orocos-rtt-corba-lxrt >= 1.3.0 -- found

Looking for KDL in: /usr/local

-- Looking for orocos-kdl >= 1.0 -- not found

Looking for BFL in: /usr/local

-- Looking for orocos-bfl >= 0.4.2 -- found

Includes in: /usr/include/;

Libraries in:

Libraries: orocos-bfl

Defines:

Looking for comedi/LXRT headers in /usr/local/include

rtai_comedi.h found.
Looking for libftd2xx - not found

-- Looking for canlib - not found

-- Looking for Qt4 >= 4.1 - not found

-- Looking for OpenCV - found

-- Looking for libncurses - found

-- Looking for readline/readline.h - found

-- Looking for Boost - found

Building Shared library for orocos-ocl-common

Building Shared library for orocos-taskbrowser

Building Shared library for orocos-timer

Building Shared library for orocos-helloworld

Building Shared library for orocos-reporting

Building Shared library for orocos-deployment

Selected Libraries: -lorocos-deployment-lxrt -lorocos-reporting-lxrt
-lorocos-helloworld-lxrt
-lorocos-timer-lxrt -lorocos-taskbrowser-lxrt -lorocos-ocl-common-lxrt
--------------------------------end output
ccmake----------------------------------------------------

When calling sudo ./helloworld
it starts the component and immediately crashes with segmentation fault.
I read in the FAQ that this problem occurrs when different compiler
versions are mixed, or when rtai modules are missing.
I do have rtai_sem, lxrt and hal running.

------------------------------------------------------------------------------------
irene@Sphinx:~/OrocosSrc/orocos-ocl-1.4.1$ export ORO_LOGLEVEL=6
irene@Sphinx:~/OrocosSrc/orocos-ocl-1.4.1$ cd helloworld/
irene@Sphinx:~/OrocosSrc/orocos-ocl-1.4.1/helloworld$ sudo ./helloworld
0.000 [ Info ][Logger] Successfully extracted environment variable
ORO_LOGLEVEL
0.001 [ Info ][Logger] OROCOS version '1.4.1' compiled with GCC
4.0.3. Running in LXRT/RTAI.
0.001 [ Info ][Logger] Orocos Logging Activated at level : [ Debug ]
( 6 )
0.001 [ Info ][Logger] Reference System Time is : 4355184004367 ticks
( 1925.87 seconds ).
0.019 [ Info ][Logger] Logging is relative to this time.
0.020 [ Info ][Logger] RTAI Periodic Timer runs in preemptive
'one-shot' mode.
0.020 [ Debug ][Logger] RTAI Task Created
0.020 [ Debug ][Logger] MainThread started.
0.020 [ Debug ][Logger] Starting StartStopManager.
0.020 [ Info ][Toolkit] Loading Tool RealTime.
0.021 [ Debug ][Toolkit] Registered Type 'int' to the Orocos Type System.
0.021 [ Debug ][Toolkit] Registered Type 'uint' to the Orocos Type System.
0.021 [ Debug ][Toolkit] Registered Type 'double' to the Orocos Type
System.
0.021 [ Debug ][Toolkit] Registered Type 'bool' to the Orocos Type System.
0.022 [ Debug ][Toolkit] Registered Type 'PropertyBag' to the Orocos
Type System.
0.022 [ Debug ][Toolkit] Registered Type 'float' to the Orocos Type System.
0.022 [ Debug ][Toolkit] Registered Type 'char' to the Orocos Type System.
0.022 [ Debug ][Toolkit] Registered Type 'array' to the Orocos Type System.
0.023 [ Debug ][Toolkit] Registered Type 'string' to the Orocos Type
System.
0.023 [ Info ][main()] **** Creating the 'Hello' component ****
0.023 [ Debug ][ExecutionEngine] Creating ExecutionEngine for Hello
0.023 [ Debug ][MethodRepository] Added Method: 'execute'.
0.024 [ Debug ][MethodRepository] Added Method: 'loadPrograms'.
0.024 [ Debug ][MethodRepository] Added Method: 'loadProgramText'.
0.024 [ Debug ][MethodRepository] Added Method: 'unloadProgram'.
0.024 [ Debug ][MethodRepository] Added Method: 'getProgramStatus'.
0.025 [ Debug ][MethodRepository] Added Method: 'getProgramLine'.
0.025 [ Debug ][MethodRepository] Added Method: 'loadStateMachines'.
0.025 [ Debug ][MethodRepository] Added Method: 'loadStateMachineText'.
0.025 [ Debug ][MethodRepository] Added Method: 'unloadStateMachine'.
0.044 [ Debug ][MethodRepository] Added Method: 'getStateMachineStatus'.
0.044 [ Debug ][MethodRepository] Added Method: 'getStateMachineLine'.
0.044 [ Debug ][MethodRepository] Added Method: 'hasProgram'.
0.044 [ Debug ][MethodRepository] Added Method: 'isProgramRunning'.
0.045 [ Debug ][MethodRepository] Added Method: 'isProgramPaused'.
0.045 [ Debug ][MethodRepository] Added Method: 'inProgramError'.
0.045 [ Debug ][MethodRepository] Added Method: 'hasStateMachine'.
0.045 [ Debug ][MethodRepository] Added Method: 'isStateMachineActive'.
0.046 [ Debug ][MethodRepository] Added Method: 'isStateMachineRunning'.
0.046 [ Debug ][MethodRepository] Added Method: 'isStateMachinePaused'.
0.046 [ Debug ][MethodRepository] Added Method: 'inStateMachineError'.
0.046 [ Debug ][MethodRepository] Added Method: 'inStateMachineState'.
0.046 [ Debug ][MethodRepository] Added Method: 'getStateMachineState'.
0.047 [ Debug ][CommandRepository] Added Command: 'startProgram'.
0.047 [ Debug ][CommandRepository] Added Command: 'stopProgram'.
0.047 [ Debug ][CommandRepository] Added Command: 'stepProgram'.
0.047 [ Debug ][CommandRepository] Added Command: 'pauseProgram'.
0.048 [ Debug ][CommandRepository] Added Command: 'activateStateMachine'.
0.048 [ Debug ][CommandRepository] Added Command: 'deactivateStateMachine'.
0.048 [ Debug ][CommandRepository] Added Command: 'startStateMachine'.
0.048 [ Debug ][CommandRepository] Added Command: 'pauseStateMachine'.
0.049 [ Debug ][CommandRepository] Added Command: 'stopStateMachine'.
0.049 [ Debug ][CommandRepository] Added Command: 'resetStateMachine'.
0.049 [ Debug ][CommandRepository] Added Command:
'requestStateMachineState'.
0.049 [ Debug ][MethodRepository] Added Method: 'updateProperties'.
0.068 [ Debug ][MethodRepository] Added Method: 'readProperties'.
0.068 [ Debug ][MethodRepository] Added Method: 'readProperty'.
0.068 [ Debug ][MethodRepository] Added Method: 'updateFile'.
0.069 [ Debug ][MethodRepository] Added Method: 'writeProperties'.
0.069 [ Debug ][MethodRepository] Added Method: 'writeProperty'.
0.069 [ Debug ][MethodRepository] Added Method: 'configure'.
0.069 [ Debug ][MethodRepository] Added Method: 'isConfigured'.
0.070 [ Debug ][MethodRepository] Added Method: 'start'.
0.070 [ Debug ][MethodRepository] Added Method: 'activate'.
0.070 [ Debug ][MethodRepository] Added Method: 'stop'.
0.070 [ Debug ][MethodRepository] Added Method: 'isRunning'.
0.070 [ Debug ][MethodRepository] Added Method: 'getPeriod'.
0.071 [ Debug ][MethodRepository] Added Method: 'isActive'.
0.071 [ Debug ][MethodRepository] Added Method: 'inFatalError'.
0.071 [ Debug ][MethodRepository] Added Method: 'warning'.
0.071 [ Debug ][MethodRepository] Added Method: 'inRunTimeWarning'.
0.072 [ Debug ][MethodRepository] Added Method: 'getWarningCount'.
0.072 [ Debug ][MethodRepository] Added Method: 'error'.
0.072 [ Debug ][MethodRepository] Added Method: 'inRunTimeError'.
0.072 [ Debug ][MethodRepository] Added Method: 'getErrorCount'.
0.073 [ Debug ][MethodRepository] Added Method: 'cleanup'.
0.073 [ Debug ][MethodRepository] Added Method: 'resetError'.
0.073 [ Debug ][MethodRepository] Added Method: 'update'.
0.073 [ Debug ][MethodRepository] Added Method: 'trigger'.
0.074 [ Debug ][Logger] Building Container of string
0.093 [ Debug ][Logger] Building Container of string
0.093 [ Debug ][Logger] Event Created with name : the_event
0.093 [ Info ][Logger] Creating PeriodicThread for scheduler: 0
0.094 [ Info ][TimerThreadInstance] PeriodicThread created with
scheduler type '0', priority 0 and period 0.01.
0.094 [ Info ][ExecutionEngine::setActivity] Hello is periodic.
0.094 [ Debug ][Logger] Periodic Thread TimerThreadInstance started.
0.094 [ Debug ][MethodRepository] Added Method: 'ready'.
0.095 [ Debug ][MethodRepository] Added Method: 'Get'.
0.095 [ Debug ][MethodRepository] Added Method: 'Set'.
0.095 [ Debug ][MethodRepository] Added Method: 'ready'.
0.095 [ Debug ][MethodRepository] Added Method: 'Push'.
0.096 [ Debug ][MethodRepository] Added Method: 'Pop'.
0.096 [ Debug ][MethodRepository] Added Method: 'front'.
0.096 [ Debug ][MethodRepository] Added Method: 'size'.
0.096 [ Debug ][MethodRepository] Added Method: 'capacity'.
0.097 [ Debug ][MethodRepository] Added Method: 'empty'.
0.097 [ Debug ][MethodRepository] Added Method: 'full'.
0.097 [ Debug ][MethodRepository] Added Method: 'clear'.
0.097 [ Debug ][MethodRepository] Added Method: 'the_method'.
0.098 [ Debug ][CommandRepository] Added Command: 'the_command'.
0.116 [ Debug ][EventService] Added Event 'the_event' to EventService.
0.116 [ Info ][ConnectionC] Creating Asyn connection to the_event.
0.117 [ Info ][Logger] **** Starting the 'Hello' component ****
0.117 [ Info ][Logger] **** Using the 'Hello' component ****
0.117 [ Info ][Logger] **** Reading a Property: ****
0.117 [ Info ][Logger] the_property = Hello World
0.118 [ Info ][Logger] **** Sending a Command: ****
0.118 [ Info ][Logger] Sending Command : 1
0.118 [ Info ][Logger] **** Calling a Method: ****
0.118 [ Info ][Logger] Calling Method : Hello World
0.118 [ Info ][Logger] **** Emitting an Event: ****
0.119 [ Info ][Logger] **** Starting the TaskBrowser ****
0.119 [ Debug ][ExecutionEngine] Creating ExecutionEngine for TaskBrowser
0.119 [ Debug ][MethodRepository] Added Method: 'execute'.
0.119 [ Debug ][MethodRepository] Added Method: 'loadPrograms'.
0.120 [ Debug ][MethodRepository] Added Method: 'loadProgramText'.
0.120 [ Debug ][MethodRepository] Added Method: 'unloadProgram'.
0.120 [ Debug ][MethodRepository] Added Method: 'getProgramStatus'.
0.120 [ Debug ][MethodRepository] Added Method: 'getProgramLine'.
0.121 [ Debug ][MethodRepository] Added Method: 'loadStateMachines'.
0.121 [ Debug ][MethodRepository] Added Method: 'loadStateMachineText'.
0.121 [ Debug ][MethodRepository] Added Method: 'unloadStateMachine'.
0.121 [ Debug ][MethodRepository] Added Method: 'getStateMachineStatus'.
0.121 [ Debug ][MethodRepository] Added Method: 'getStateMachineLine'.
0.140 [ Debug ][MethodRepository] Hello Command: WorldAdded Method:
'hasProgram'.
0.140 [ Debug ][MethodRepository] Added Method: 'isProgramRunning'.
0.141 [ Debug ][MethodRepository] Added Method: 'isProgramPaused'.
0.141 [ Debug ][MethodRepository] Added Method: 'inProgramError'.
0.141 [ Debug ][MethodRepository] Added Method: 'hasStateMachine'.
0.141 [ Debug ][MethodRepository] Added Method: 'isStateMachineActive'.
0.141 [ Debug ][MethodRepository] Added Method: 'isStateMachineRunning'.
0.142 [ Debug ][MethodRepository] Added Method: 'isStateMachinePaused'.
0.142 [ Debug ][MethodRepository] Added Method: 'inStateMachineError'.
0.142 [ Debug ][MethodRepository] Added Method: 'inStateMachineState'.
0.142 [ Debug ][MethodRepository] Added Method: 'getStateMachineState'.
0.143 [ Debug ][CommandRepository] Added Command: 'startProgram'.
0.143 [ Debug ][CommandRepository] Added Command: 'stopProgram'.
0.143 [ Debug ][CommandRepository] Added Command: 'stepProgram'.
0.143 [ Debug ][CommandRepository] Added Command: 'pauseProgram'.
0.143 [ Debug ][CommandRepository] Added Command: 'activateStateMachine'.
0.144 [ Debug ][CommandRepository] Added Command: 'deactivateStateMachine'.
0.144 [ Debug ][CommandRepository] Added Command: 'startStateMachine'.
0.144 [ Debug ][CommandRepository] Added Command: 'pauseStateMachine'.
0.144 [ Debug ][CommandRepository] Added Command: 'stopStateMachine'.
0.145 [ Debug ][CommandRepository] Added Command: 'resetStateMachine'.
0.145 [ Debug ][CommandRepository] Added Command:
'requestStateMachineState'.
0.145 [ Debug ][MethodRepository] Added Method: 'updateProperties'.
0.145 [ Debug ][MethodRepository] Added Method: 'readProperties'.
0.146 [ Debug ][MethodRepository] Added Method: 'readProperty'.
0.163 [ Debug ][MethodRepository] Added Method: 'updateFile'.
0.164 [ Debug ][MethodRepository] Added Method: 'writeProperties'.
0.164 [ Debug ][MethodRepository] Added Method: 'writeProperty'.
0.164 [ Debug ][MethodRepository] Added Method: 'configure'.
0.164 [ Debug ][MethodRepository] Added Method: 'isConfigured'.
0.165 [ Debug ][MethodRepository] Added Method: 'start'.
0.165 [ Debug ][MethodRepository] Added Method: 'activate'.
0.165 [ Debug ][MethodRepository] Added Method: 'stop'.
0.165 [ Debug ][MethodRepository] Added Method: 'isRunning'.
0.165 [ Debug ][MethodRepository] Added Method: 'getPeriod'.
0.166 [ Debug ][MethodRepository] Added Method: 'isActive'.
0.166 [ Debug ][MethodRepository] Added Method: 'inFatalError'.
0.166 [ Debug ][MethodRepository] Added Method: 'warning'.
0.166 [ Debug ][MethodRepository] Added Method: 'inRunTimeWarning'.
0.167 [ Debug ][MethodRepository] Added Method: 'getWarningCount'.
0.167 [ Debug ][MethodRepository] Added Method: 'error'.
0.167 [ Debug ][MethodRepository] Added Method: 'inRunTimeError'.
0.167 [ Debug ][MethodRepository] Added Method: 'getErrorCount'.
0.167 [ Debug ][MethodRepository] Added Method: 'cleanup'.
0.168 [ Debug ][MethodRepository] Added Method: 'resetError'.
0.168 [ Debug ][MethodRepository] Added Method: 'update'.
0.168 [ Debug ][MethodRepository] Added Method: 'trigger'.
Switched to : Hello
0.169 [ Info ][Logger] Entering Task Hello

This console reader allows you to browse and manipulate TaskContexts.
You can type in a command, event, method, expression or change variables.
(type 'help' for instructions)
TAB completion and HISTORY is available ('bash' like)

In Task Hello[R]. (Status of last Command : none )
(type 'ls' for context info) :Segmentation fault

thanks and helloworld segmentation fault

Hello,

Op donderdag 21-08-2008 om 16:24 uur [tijdzone +0200], schreef Irene
Markelic:
> Hi everybody,
> first of all, thanks for the reply to my last post (core-test failed).
>
> Now, I ran into another problem. My goal is to use the OCL camera
> component. For that I downloaded ocl from the svn repository. That I
> cannot compile:
>
> /home/irene/OrocosSrc/ocl/taskbrowser/TaskBrowser.cpp: In member
> function »void OCL::TaskBrowser::printInfo(const std::string&)«:
> /home/irene/OrocosSrc/ocl/taskbrowser/TaskBrowser.cpp:1612: error:
> »class RTT::TaskContext« does not contain element named »ready«
> make: *** [all] Fehler 2
>
> What I did then was to check out the tar.bz2 version of ocl from the
> website. That I can compile when I do NOT make cameras and test.
> So I wanted to check if the helloworld application works and it
> terminates with a segmentation fault.
> I added all output underneath this post. Any help is very much
> appreciated!

The camera component changed a lot since the release of the tar.bz2, it
didn't work properly (it makes a copy of the pointer to the image, and
not of the hole image, so it crashed sometimes). Most of the changes
happend in the ocl-pma branch [1].

François

[1] http://svn.mech.kuleuven.be/websvn/orocos/branches/ocl-pma/