RTT 1.8.0 failing make check for lxrt

Hi,

I have been able to compile the rtt for lxrt fine on Debian Lenny with gcc 4.3 with RTAI patched kernel 2.6.26. I don`t have any problem running the testsuites from RTAI. However, I am getting seg faults when doing a make check. Attached are the logs for the make and make check. I did loaded the module using
insmod /usr/realtime/modules/rtai_hal.ko
insmod /usr/realtime/modules/rtai_lxrt.ko
insmod /usr/realtime/modules/rtai_sem.ko
but still fails all the tests. I have tried to start the deployer and i get a seg fault right away as well. Anyone encountered this issue before?

Thanks in advance

David

AttachmentSize
rtt-lxrt.txt107.87 KB
rtt-lxrt-make-check.txt36.1 KB

RTT 1.8.0 failing make check for lxrt

On Tuesday 10 March 2009 22:40:25 yu [dot] david [..] ... wrote:
> Hi,
>
> I have been able to compile the rtt for lxrt fine on Debian Lenny with gcc
> 4.3 with RTAI patched kernel 2.6.26. I don`t have any problem running the
> testsuites from RTAI. However, I am getting seg faults when doing a make
> check. Attached are the logs for the make and make check. I did loaded the
> module using insmod /usr/realtime/modules/rtai_hal.ko
> insmod /usr/realtime/modules/rtai_lxrt.ko
> insmod /usr/realtime/modules/rtai_sem.ko
> but still fails all the tests. I have tried to start the deployer and i get
> a seg fault right away as well. Anyone encountered this issue before?

If RTAI tests work, Orocos tests should work too, we use the same API. Are you
sure only one RTAI version (also liblxrt libraries) is installed on your
system ?

If you're familiar with gdb, could you run as root:

gdb ./core-test
run
bt

where run and bt are commands for gdb. and post the result of 'bt'.

Peter

Hi Peter,I ran gdb and

Hi Peter,

I have only one liblxrt installed at the moment. I had a different version previously but I made sure it was removed with make uninstall and make clean. I also removed the /usr/realtime/ directory before installing the new version. If i do a updatedb and locate liblxrt, I have it in /usr/realtime/lib/ and the rtai source directory.

I ran gdb and here's the output i got.

debian:/usr/src/orocos-rtt-1.8.0/build/tests# gdb ./core-test
GNU gdb 6.8-debian
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i486-linux-gnu"...
(gdb) run
Starting program: /usr/src/orocos-rtt-1.8.0/build/tests/core-test
[Thread debugging using libthread_db enabled]

Program terminated with signal SIGSEGV, Segmentation fault.
The program no longer exists.
(gdb) bt
No stack.

Thanks,

David

Hi Peter,I ran gdb and

On Wednesday 11 March 2009 15:28:36 yu [dot] david [..] ... wrote:
> Hi Peter,
>
> I ran gdb and here's the output i got.
>
> debian:/usr/src/orocos-rtt-1.8.0/build/tests# gdb ./core-test
> GNU gdb 6.8-debian
> Copyright (C) 2008 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later
> <http://gnu.org/licenses/gpl.html> This is free software: you are free to
> change and redistribute it. There is NO WARRANTY, to the extent permitted
> by law. Type "show copying" and "show warranty" for details.
> This GDB was configured as "i486-linux-gnu"...
> (gdb) run
> Starting program: /usr/src/orocos-rtt-1.8.0/build/tests/core-test
> [Thread debugging using libthread_db enabled]
>
> Program terminated with signal SIGSEGV, Segmentation fault.
> The program no longer exists.
> (gdb) bt
> No stack.

This looks catastrophic. Do the unit tests work if you compile for the
gnulinux target ? Just to be sure that we aren't hunting bugs not related to
RTAI. Also, did you change any configuration or build option in cmake ?

Peter

Yes the tests passes under

Yes the tests passes under gnulinux and I was able to load deployer and cdeployer without problem. No I did not change any configuration beside setting the target to lxrt.

It appears to have

It appears to have something to do with the compiler version, I was compiling previously with gcc 4.3. I changed to gcc 4.1 and recompiled/reinstalled rtai and orocos-rtt and I was able to pass the tests. I have also compiled orocos-ocl successfully, however when I attempt to start any of the deployer:

debian:/usr/src# deployer-corba-lxrt
deployer-corba-lxrt: error while loading shared libraries: liborocos-deployment-corba-lxrt.so.1.8: cannot open shared object file: No such file or directory
debian:/usr/src# deployer-lxrt
deployer-lxrt: error while loading shared libraries: liborocos-taskbrowser-lxrt.so.1.8: cannot open shared object file: No such file or directory
debian:/usr/src# cdeployer-lxrt
cdeployer-lxrt: error while loading shared libraries: liborocos-deployment-corba-lxrt.so.1.8: cannot open shared object file: No such file or directory

but I do have them installed with make install

[ 0%] Built target message
[ 8%] Built target orocos-ocl-common-lxrt
[ 12%] Built target orocos-taskbrowser-lxrt
[ 16%] Built target orocos-timer-lxrt
[ 20%] Built target helloworld
[ 25%] Built target orocos-helloworld-lxrt
[ 58%] Built target orocos-reporting-lxrt
[ 66%] Built target orocos-deployment-lxrt
[ 70%] Built target orocos-deployment-corba-lxrt
[ 79%] Built target cdeployer-lxrt
[ 83%] Built target ctaskbrowser-lxrt
[ 91%] Built target deployer-corba-lxrt
[100%] Built target deployer-lxrt
Install the project...
-- Install configuration: "OCL"
-- Installing: /usr/local/lib/pkgconfig/orocos-ocl-lxrt.pc
-- Installing: /usr/local/include/ocl/OCL.hpp
-- Installing: /usr/local/include/ocl/HMIConsoleOutput.hpp
-- Installing: /usr/local/include/ocl/ComponentLoader.hpp
-- Installing: /usr/local/include/ocl/VectorTemplateComposition.hpp
-- Installing: /usr/local/lib/liborocos-ocl-common-lxrt.so.1.8.0
-- Installing: /usr/local/lib/liborocos-ocl-common-lxrt.so.1.8
-- Installing: /usr/local/lib/liborocos-ocl-common-lxrt.so
-- Installing: /usr/local/include/ocl/TaskBrowser.hpp
-- Installing: /usr/local/lib/liborocos-taskbrowser-lxrt.so.1.8.0
-- Installing: /usr/local/lib/liborocos-taskbrowser-lxrt.so.1.8
-- Installing: /usr/local/lib/liborocos-taskbrowser-lxrt.so
-- Installing: /usr/local/include/ocl/TimerComponent.hpp
-- Installing: /usr/local/lib/liborocos-timer-lxrt.so.1.8.0
-- Installing: /usr/local/lib/liborocos-timer-lxrt.so.1.8
-- Installing: /usr/local/lib/liborocos-timer-lxrt.so
-- Installing: /usr/local/lib/liborocos-helloworld-lxrt.so.1.8.0
-- Installing: /usr/local/lib/liborocos-helloworld-lxrt.so.1.8
-- Installing: /usr/local/lib/liborocos-helloworld-lxrt.so
-- Installing: /usr/local/include/ocl/command.hpp
-- Installing: /usr/local/include/ocl/ConsoleReporting.hpp
-- Installing: /usr/local/include/ocl/datasender.hpp
-- Installing: /usr/local/include/ocl/FileReporting.hpp
-- Installing: /usr/local/include/ocl/NiceHeaderMarshaller.hpp
-- Installing: /usr/local/include/ocl/ReportingComponent.hpp
-- Installing: /usr/local/include/ocl/socket.hpp
-- Installing: /usr/local/include/ocl/socketmarshaller.hpp
-- Installing: /usr/local/include/ocl/TcpReporting.hpp
-- Installing: /usr/local/lib/liborocos-reporting-lxrt.so.1.8.0
-- Installing: /usr/local/lib/liborocos-reporting-lxrt.so.1.8
-- Installing: /usr/local/lib/liborocos-reporting-lxrt.so
-- Installing: /usr/local/include/ocl/DeploymentComponent.hpp
-- Installing: /usr/local/include/ocl/CorbaDeploymentComponent.hpp
-- Installing: /usr/local/lib/liborocos-deployment-corba-lxrt.so.1.8.0
-- Installing: /usr/local/lib/liborocos-deployment-corba-lxrt.so.1.8
-- Installing: /usr/local/lib/liborocos-deployment-corba-lxrt.so
-- Installing: /usr/local/lib/liborocos-deployment-lxrt.so.1.8.0
-- Installing: /usr/local/lib/liborocos-deployment-lxrt.so.1.8
-- Installing: /usr/local/lib/liborocos-deployment-lxrt.so
-- Installing: /usr/local/bin/cdeployer-lxrt
-- Installing: /usr/local/bin/ctaskbrowser-lxrt
-- Installing: /usr/local/bin/deployer-corba-lxrt
-- Installing: /usr/local/bin/deployer-lxrt

It appears to have

On Mar 11, 2009, at 14:12 , yu [dot] david [..] ... wrote:

> It appears to have something to do with my compiler. I changed to
> gcc 4.1 and recompiled/reinstalled rtai and orocos-rtt and I was
> able to pass the tests. I have also compiled orocos-ocl
> successfully, however when I attempt to start any of the deployer:
>
> debian:/usr/src# deployer-corba-lxrt
> deployer-corba-lxrt: error while loading shared libraries: liborocos-
> deployment-corba-lxrt.so.1.8: cannot open shared object file: No
> such file or directory
> debian:/usr/src# deployer-lxrt
> deployer-lxrt: error while loading shared libraries: liborocos-
> taskbrowser-lxrt.so.1.8: cannot open shared object file: No such
> file or directory
> debian:/usr/src# cdeployer-lxrt
> cdeployer-lxrt: error while loading shared libraries: liborocos-
> deployment-corba-lxrt.so.1.8: cannot open shared object file: No
> such file or directory
>
> but I do have them installed with make install

<sni

Yes, but have you configured the dynamic linker to know where the
libaries are? This was answered on the list only a few weeks ago, but
for most Linux distro's, add /path/to/lib (within which liborocos-
xxx.so resides) into /etc/ld.so.conf (or similar) and run "sudo
ldconfig"

We need a how-to/troubleshooting/common-problems section on the
wiki .... same thing keeps popping up ... and it isn't always easy to
grok mail lists to find this sort of answer. IMHO.

S