Hi,
I just downloaded and Orocos 2.1.0 RTT and compiled it with MinGW GCC4.4.0 and boost 1.43. Compilation ran to completion without any errors (only some warnings because of missing -enable-auto-import flag) - great :O)
Then I tried to run all test cases from the tests folders and some of the tests failed. The following test failed:
enum_type_test function_test marshalling_test program_test property_loader_test property_marsh_test property_test scripting_test state_test types_test
I attached the console output of all tests that failed. Does this indicated that a MinGW built Orocos 2.1.0 does not work properly or does it indicate that I missed a configuration step before running the test cases?
Test output:
enum_type_test Running 4 test cases... rtt/tests/enum_type_test.cpp(83): fatal error in "testEnumIntConversion": critical check Types()->type("int") failed rtt/tests/enum_type_test.cpp(121): fatal error in "testEnumStringConversion": critical check ts failed function_test Running 11 test cases... rtt/tests/function_test.cpp(460): fatal error in "testSimpleReturnFunction": Parse error at line 1: Semantic error: Return type 'int' for function 'f oo' is an unknown type. rtt/tests/function_test.cpp(460): fatal error in "testOnlyExportFunction": Parse error at line 4: Semantic error: Return type 'int' for function 'foo _ret' is an unknown type. rtt/tests/function_test.cpp(460): fatal error in "testReturnExportFunction": Parse error at line 4: Semantic error: Return type 'int' for function 'f oo_ret' is an unknown type. rtt/tests/function_test.cpp(460): fatal error in "testCallFunction": Parse error at line 1: Semantic error: "int" is an unknown type... rtt/tests/function_test.cpp(460): fatal error in "testFunctionStack": Parse error at line 2: Semantic error: "double" is an unknown type... rtt/tests/function_test.cpp(460): fatal error in "testFunctionExportArgs": Parse error at line 1: Semantic error: "int" is an unknown type... rtt/tests/function_test.cpp(460): fatal error in "testFunctionCallArgs": Parse error at line 1: Semantic error: "int" is an unknown type... rtt/tests/function_test.cpp(460): fatal error in "testFunctionFail": Parse error at line 8: Semantic error: "bool" is an unknown type... *** 8 failures detected in test suite "Master Test Suite" main-test does not produce any output marshalling_test Running 1 test case... rtt/tests/marshalling_test.cpp(43): fatal error in "TestGetProvider": critical check sc failed *** 1 failure detected in test suite "Master Test Suite" program_test Running 12 test cases... rtt/tests/program_test.cpp(405): fatal error in "testParseProgram": Parse error at line 7: Fatal Semantic error: Cannot apply binary operation unknow n_t == unknown_t. rtt/tests/program_test.cpp(405): fatal error in "testProgramCondition": Parse error at line 23: Semantic error: "bool" is an unknown type... rtt/tests/program_test.cpp(405): fatal error in "testProgramBreak": Parse error at line 3: Fatal Semantic error: Cannot apply binary operation unknow n_t != unknown_t. rtt/tests/program_test.cpp(405): fatal error in "testProgramAnd": Parse error at line 2: Fatal Semantic error: Cannot apply binary operation unknown_ t && unknown_t. rtt/tests/program_test.cpp(405): fatal error in "testProgramTry": Parse error at line 3: Fatal Semantic error: Cannot apply binary operation unknown_ t && unknown_t. rtt/tests/program_test.cpp(405): fatal error in "testProgramToProgram": Parse error at line 3: Fatal Semantic error: Cannot apply binary operation un known_t == unknown_t. rtt/tests/program_test.cpp(405): fatal error in "testProgramCallFoo": Parse error at line 2: Fatal Semantic error: Cannot apply unary operator "+" to unknown_t. rtt/tests/program_test.cpp(405): fatal error in "testProgramDoFoo": Parse error at line 2: Fatal Semantic error: Cannot apply unary operator "+" to u nknown_t. rtt/tests/program_test.cpp(405): fatal error in "testSend": Parse error at line 6: Semantic error: "SendHandle" is an unknown type... *** 9 failures detected in test suite "Master Test Suite" property_loader_test Running 4 test cases... rtt/tests/property_loader_test.cpp(69): error in "testPropSaveLoad": check pl.configure(filename, &tc, true) failed rtt/tests/property_loader_test.cpp(88): error in "testPropSaveLoad": check pl.configure(filename, &tc, true) failed rtt/tests/property_loader_test.cpp(162): error in "testPropStoring": check tc.provides()->hasProperty("pdoubles") failed rtt/tests/property_loader_test.cpp(168): error in "testPropStoring": check bag.size() == 3 failed [2 != 3] rtt/tests/property_loader_test.cpp(170): error in "testPropStoring": check bag.find("pdoubles") failed rtt/tests/property_loader_test.cpp(177): fatal error in "testPropStoring": critical check bagvector.ready() failed *** 6 failures detected in test suite "Master Test Suite" property_marsh_test Running 3 test cases... rtt/tests/property_marsh_test.cpp(114): fatal error in "testPropMarshVect": critical check bag.ready() failed target: [[driveLimits='(unknown_t)' ]] source: [[driveLimits='(unknown_t)' ]] /rtt/tests/property_marsh_test.cpp(154): error in "testPropMarshVectLegacy": check refreshProperties( target, source) failed rtt/tests/property_marsh_test.cpp(160): error in "testPropMarshVectLegacy": check p1->rvalue().size() == 6 failed [7 != 6] rtt/tests/property_marsh_test.cpp(161): error in "testPropMarshVectLegacy": check p1->rvalue()[0] == 1 failed [1.234 != 1] *** 4 failures detected in test suite "Master Test Suite" property_test Running 12 test cases... rtt/tests/property_test.cpp(315): error in "testComposition": check pvd.getTypeInfo() != RTT::detail::DataSourceTypeInfo<RTT::detail::UnknownType>::g etTypeInfo() failed rtt/tests/property_test.cpp(318): error in "testComposition": check pvd.getTypeInfo()->composeType( pvd.getDataSource(), pvd2.getDataSource() ) faile d rtt/tests/property_test.cpp(322): error in "testComposition": check typeDecomposition( pvd.getDataSource(), bag.value() ) failed rtt/tests/property_test.cpp(323): error in "testComposition": check pvd.getTypeInfo()->composeType( bag.getDataSource(), pvd2.getDataSource() ) faile d rtt/tests/property_test.cpp(324): error in "testComposition": check pvd == pvd2 failed rtt/tests/property_test.cpp(343): error in "testNewDecomposition": check pvd.getTypeInfo() != RTT::detail::DataSourceTypeInfo<RTT::detail::UnknownTyp e>::getTypeInfo() failed rtt/tests/property_test.cpp(347): error in "testNewDecomposition": check propertyDecomposition( &pvd, bag.value() ) failed rtt/tests/property_test.cpp(350): fatal error in "testNewDecomposition": critical check pvalue.ready() failed *** 8 failures detected in test suite "Master Test Suite" scripting_test Running 1 test case... rtt/tests/scripting_test.cpp(53): fatal error in "TestGetProvider": critical check sc failed *** 1 failure detected in test suite "Master Test Suite" state_test Running 14 test cases... rtt/tests/state_test.cpp(955): fatal error in "testParseState": Parse error at line 2: Semantic error: "int" is an unknown type... rtt/tests/state_test.cpp(974): fatal error in "testStateFailure": critical check sm failed rtt/tests/state_test.cpp(955): fatal error in "testStateChildren": Parse error at line 2: Semantic error: "double" is an unknown type... rtt/tests/state_test.cpp(955): fatal error in "testStateTransitions": Parse error at line 3: Semantic error: "int" is an unknown type... rtt/tests/state_test.cpp(955): fatal error in "testStateTransitionStop": Parse error at line 4: Fatal Semantic error: Cannot apply binary operation u nknown_t == unknown_t. rtt/tests/state_test.cpp(955): fatal error in "testStateGlobalTransitions": Parse error at line 2: Semantic error: "int" is an unknown type... rtt/tests/state_test.cpp(955): fatal error in "testStateSubStateVars": Parse error at line 2: Semantic error: "double" is an unknown type... rtt/tests/state_test.cpp(955): fatal error in "testStateSubStateCommands": Parse error at line 2: Semantic error: "double" is an unknown type... rtt/tests/state_test.cpp(955): fatal error in "testStateOperationSignalTransition": Parse error at line 2: Semantic error: "double" is an unknown typ e... rtt/tests/state_test.cpp(955): fatal error in "testStateOperationSignalTransitionProgram": Parse error at line 2: Semantic error: "double" is an unkn own type... rtt/tests/state_test.cpp(955): fatal error in "testStateOperationSignalGuard": Parse error at line 2: Semantic error: "double" is an unknown type... rtt/tests/state_test.cpp(955): fatal error in "testStateEvents": Parse error at line 2: Semantic error: "int" is an unknown type... *** 12 failures detected in test suite "Master Test Suite" types_test crashes
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
On Sunday 14 November 2010 17:22:55 uwe_kindler [..] ... wrote:
> Hi,
>
> I just downloaded and Orocos 2.1.0 RTT and compiled it with MinGW GCC4.4.0
> and boost 1.43. Compilation ran to completion without any errors (only
> some warnings because of missing -enable-auto-import flag) - great :O)
>
> Then I tried to run all test cases from the tests folders and some of the
> tests failed. The following test failed:
>
> enum_type_test
> function_test
> marshalling_test
> program_test
> property_loader_test
> property_marsh_test
> property_test
> scripting_test
> state_test
> types_test
>
> I attached the console output of all tests that failed. Does this indicated
> that a MinGW built Orocos 2.1.0 does not work properly or does it indicate
> that I missed a configuration step before running the test cases?
The test output suggests that the rtt-typekit is not loaded in the tests. Can
you run the tests seperately after increasing the orocos loglevel: export
ORO_LOGLEVEL=7, and check whether the basic types and operations are loaded
into the tests?
Ruben
> Test output:
>
>
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
> The test output suggests that the rtt-typekit is not loaded in the tests. Can
> you run the tests seperately after increasing the orocos loglevel: export
> ORO_LOGLEVEL=7, and check whether the basic types and operations are loaded
> into the tests?
Hi Ruben,
this is the output of the enum_type_test with ORO_LOGLEVEL=7. Any idea
what is wrong here or what I can do to fix this?
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
On Tuesday 16 November 2010 10:43:26 Uwe Kindler wrote:
> > The test output suggests that the rtt-typekit is not loaded in the tests.
> > Can you run the tests seperately after increasing the orocos loglevel:
> > export ORO_LOGLEVEL=7, and check whether the basic types and operations
> > are loaded into the tests?
>
> Hi Ruben,
>
> this is the output of the enum_type_test with ORO_LOGLEVEL=7. Any idea
> what is wrong here or what I can do to fix this?
>
>
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
On Tuesday 16 November 2010 10:43:26 Uwe Kindler wrote:
> > The test output suggests that the rtt-typekit is not loaded in the tests.
> > Can you run the tests seperately after increasing the orocos loglevel:
> > export ORO_LOGLEVEL=7, and check whether the basic types and operations
> > are loaded into the tests?
>
> Hi Ruben,
>
> this is the output of the enum_type_test with ORO_LOGLEVEL=7. Any idea
> what is wrong here or what I can do to fix this?
The output clearly shows that the typekit for the basic types is not loaded:
int -> unknown type. This is normally automatically done by the
deployer/taskbrowser, I have no idea why this is not happening in the test,
maybe someone else can shed some light on this problem.
Ruben
>
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
> The output clearly shows that the typekit for the basic types is not loaded:
> int -> unknown type. This is normally automatically done by the
> deployer/taskbrowser, I have no idea why this is not happening in the test,
> maybe someone else can shed some light on this problem.
Is the typekit for the basic types a certain file or shared library that
must be located somewhere?
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
On Tue, Nov 16, 2010 at 1:02 PM, Uwe Kindler <uwe_kindler [..] ...> wrote:
>
>> The output clearly shows that the typekit for the basic types is not loaded:
>> int -> unknown type. This is normally automatically done by the
>> deployer/taskbrowser, I have no idea why this is not happening in the test,
>> maybe someone else can shed some light on this problem.
>
> Is the typekit for the basic types a certain file or shared library that
> must be located somewhere?
It must be located in the 'types' subdirectory of your RTT_COMPONENT_PATH
environment variable.
Try to set your RTT_COMPONENT_PATH to the orocos-toolchain/rtt/build/rtt
directory, or set it to your tests directory (where the build result is)
and copy the typekit into the 'types' subdirectory. When you run 'make check',
this environment variable is set automatically for you, but not when you run
the tests manually.
I urgently need to document this expected hierarchy.
Peter
--
Orocos-Users mailing list
Orocos-Users [..] ...
http://lists.mech.kuleuven.be/mailman/listinfo/orocos-users
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
On Tue, Nov 16, 2010 at 11:34 PM, Peter Soetens
<peter [..] ...> wrote:
> On Tue, Nov 16, 2010 at 1:02 PM, Uwe Kindler <uwe_kindler [..] ...> wrote:
>>
>>> The output clearly shows that the typekit for the basic types is not loaded:
>>> int -> unknown type. This is normally automatically done by the
>>> deployer/taskbrowser, I have no idea why this is not happening in the test,
>>> maybe someone else can shed some light on this problem.
>>
>> Is the typekit for the basic types a certain file or shared library that
>> must be located somewhere?
>
> It must be located in the 'types' subdirectory of your RTT_COMPONENT_PATH
> environment variable.
> Try to set your RTT_COMPONENT_PATH to the orocos-toolchain/rtt/build/rtt
> directory, or set it to your tests directory (where the build result is)
> and copy the typekit into the 'types' subdirectory. When you run 'make check',
> this environment variable is set automatically for you, but not when you run
> the tests manually.
>
> I urgently need to document this expected hierarchy.
Actually, I did: See
http://www.orocos.org/stable/documentation/rtt/v2.x/doc-xml/orocos-rtt-p...
Peter
--
Orocos-Users mailing list
Orocos-Users [..] ...
http://lists.mech.kuleuven.be/mailman/listinfo/orocos-users
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
Hi Peter,
thank you for your help so far but I'dont get the tests to work properly. If I run mingw32-make check (see http://www.orocos.org/forum/orocos/orocos-users/orocos-toolchain-211-min...).
In the tests directory there are two subdirectories: plugins and types.
The plugins directory contains the file libservice_plugin.dll and the types subdirectory contains the file libtypekit_plugin.dll. Is the libtypekit_plugin.dll the required typekit or do I need to put any other file or dll into the typekit subfolder.
If I set the RTT_COMPONENT_PATH to the tests folder then I get the following output for the enum_type_test:
The output shows that the plugin libservice_plugin.dll and the typekit libtypekit_plugin.dll are properly loaded. So does this mean that another typekit plugin is missing or does it indicate that something is not working properly? Do I need to copy any other file to the typekit directory?
Uwe
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
Hi Peter,
thank you for your help so far but I'dont get the tests to work properly. If I run mingw32-make check (see http://www.orocos.org/forum/orocos/orocos-users/orocos-toolchain-211-mingw-test-output) the same tests fail.
In the tests directory there are two subdirectories: plugins and types. The plugins directory contains the file libservice_plugin.dll and the types subdirectory contains the file libtypekit_plugin.dll. Is the libtypekit_plugin.dll the required typekit or do I need to put any other file or dll into the typekit subfolder.
If I set the RTT_COMPONENT_PATH to the tests folder then I get the following output for the enum_type_test:
The output shows that the plugin libservice_plugin.dll and the typekit libtypekit_plugin.dll are properly loaded. So does this mean that another typekit plugin is missing or does it indicate that something is not working properly? Do I need to copy any other file to the typekit directory?
Uwe
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
On Wednesday 17 November 2010 08:03:37 uwe_kindler [..] ... wrote:
> Hi Peter,
>
> thank you for your help so far but I'dont get the tests to work properly.
> If I run mingw32-make check (see
> http://www.orocos.org/forum/orocos/orocos-users/orocos-toolchain-211-mingw
> -test-output).
>
> In the tests directory there are two subdirectories: plugins and types.
> The plugins directory contains the file libservice_plugin.dll and the types
> subdirectory contains the file libtypekit_plugin.dll. Is the
> libtypekit_plugin.dll the required typekit or do I need to put any other
> file or dll into the typekit subfolder.
The libtypekit_plugin.dll is a *test* plugin. The *real* one is named
librtt-typekit-win32.dll
Try to put that one in the build/tests/types directory, instead of in the
build/tests directory. I don't understand why the default is not working for
you. Maybe we assume a certain directory structure when running the tests,
like having the build directory as a subdir of the rtt directory.
Peter
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
Ah, we are getting closer to a solution.
This was also my first idea after running the tests for the first time. But the logoutput states that librtt-typekit-win32.dll is not a valid plugin - the 'loadRTTPlugin' function was not found in this dll. Here is the log output from enum_type_test with librtt-typekit-win32.dll copied into types folder:
Here is the complete log output:
So maybe the plugin function loadRTTPlugin is not exported properly for this DLL?
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
Ah, we are getting closer to a solution.
This was also my first idea after running the tests for the first time. But the logoutput states that librtt-typekit-win32.dll is not a valid plugin - the 'loadRTTPlugin' function was not found in this dll. Here is the log output from enum_type_test with librtt-typekit-win32.dll copied into types folder:
Here is the complete log output:
So maybe the plugin function loadRTTPlugin is not exported properly for this DLL?
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
On Wednesday 17 November 2010 09:58:40 uwe_kindler [..] ... wrote:
> Ah, we are getting closer to a solution.
>
> This was also my first idea after running the tests for the first time. But
> the logoutput states that librtt-typekit-win32.dll is not a valid plugin -
> the 'loadRTTPlugin' function was not found in this dll. Here is the log
> output from enum_type_test with librtt-typekit-win32.dll copied into types
> folder:
>
>
That's a problem: See rtt-config.h
Why the !defined( __MINGW32__ ) ?? We drop the RTT_EXPORT decoration, which is
absolutely necessary for plugins to work (all/only plugin functions are
decorated with that). Not that this decoration is independent from the
RTT_DLL_EXPORT flag.
You could at least test with adding:
# if defined ( __MINGW32__ )
# define RTT_EXPORT __declspec(dllexport)
# endif
Peter
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
I think !defined( __MINGW32__ ) is based on Orocos 1x where I had some trouble with missing exports. The safest way for MinGW builts to export all symbols is the linker option -export-all-symbols. And this optin only works properly if __declspec(dllexport) is not used.
I did a quick search in all files of Orocos 2.1.1 for export-all-symbols and could not find anything. So it seems that this option is missing or was dropped for MinGW builds for some reason.
I will try to add export-all-symbols manually and rebuild everything.
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
I think !defined( __MINGW32__ ) is based on Orocos 1x where I had some trouble with missing exports. The safest way for MinGW builts to export all symbols is the linker option -export-all-symbols. And this optin only works properly if __declspec(dllexport) is not used.
I did a quick search in all files of Orocos 2.1.1 for export-all-symbols and could not find anything. So it seems that this option is missing or was dropped for MinGW builds for some reason.
I will try to add export-all-symbols manually and rebuild everything.
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
On Wednesday 17 November 2010 11:07:17 uwe_kindler [..] ... wrote:
> I think !defined( __MINGW32__ ) is based on Orocos 1x where I had some
> trouble with missing exports.
Since we're building fine on Visual Studio, maybe you should just drop the
!defined check ?
Peter
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
I dropped the !defined( __MINGW32__ ) in rtt-config.h and that is the result:
We had the same issues with MinGW in RTT 1.x. This was the reason to switch to --export-all-symbols and to introduce !defined( __MINGW32__ ).
In rtt/config/check_depend.cmake there are the following lines:
But the --enable-auto-import feature is not active. If I download the RTT 2.1.1 and build it with MinGW the following warnings appear for each library:
I think we should try to enable the auto import feature via --enable-auto-import and enable the export of all symbols via --export-all-symbols. I would like to give it a try but dont not have any idea in which CMake file to place these linker flags.
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
I dropped the !defined( __MINGW32__ ) in rtt-config.h and that is the result:
We had the same issues with MinGW in RTT 1.x. This was the reason to switch to --export-all-symbols and to introduce !defined( __MINGW32__ ).
In rtt/config/check_depend.cmake there are the following lines:
But the --enable-auto-import feature is not active. If I download the RTT 2.1.1 and build it with MinGW the following warnings appear for each library:
I think we should try to enable the auto import feature via --enable-auto-import and enable the export of all symbols via --export-all-symbols. I would like to give it a try but dont not have any idea in which CMake file to place these linker flags.
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
On Wednesday 17 November 2010 13:29:20 uwe_kindler [..] ... wrote:
> I dropped the !defined( __MINGW32__ ) in rtt-config.h and that is the
> result:
You need to drop it from all *-config.h files in the rtt. There's files for
scripting, marshalling, the transports etc.
...
>
> We had the same issues with MinGW in RTT 1.x. This was the reason to switch
> to --export-all-symbols and to introduce !defined( __MINGW32__ ).
>
> In rtt/config/check_depend.cmake there are the following lines:
>
>
So the CMAKE_LD_FLAGS_ADD flag is not picked up when building the libs...
>
> But the --enable-auto-import feature is not active. If I download the RTT
> 2.1.1 and build it with MinGW the following warnings appear for each
> library:
>
>
>
> I think we should try to enable the auto import feature via
> --enable-auto-import and enable the export of all symbols via
> --export-all-symbols. I would like to give it a try but dont not have any
> idea in which CMake file to place these linker flags.
We pass linker flags in the SET_TARGET_PROPERTIES macros for the libraries (see
config/rtt_macros.cmake) CMAKE_LD_FLAGS_ADD is invented by us to pass flags from
the config files to the libs. It looks like we just never pick them up
(anymore).
Peter
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
Ok, I left rtt-config.h unchanged (did not remove !defined( __MINGW32__ )) and manually added -Wl,--enable-auto-import -Wl,--export-all-symbols to the CMAKE_SHARED_LINKER_FLAGS in CMake GUI and rebuilt the whole stuff.
The result looks quite good:
Here is the snippet of the log output (ORO_LOGLEVEL=7) of the types_test that failed
So I think the best method at the moment for MinGW builds is to use enable-auto-import and export-all-symbols.
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
Ok, I left rtt-config.h unchanged (did not remove !defined( __MINGW32__ )) and manually added -Wl,--enable-auto-import -Wl,--export-all-symbols to the CMAKE_SHARED_LINKER_FLAGS in CMake GUI and rebuilt the whole stuff.
The result looks quite good:
Here is the snippet of the log output (ORO_LOGLEVEL=7) of the types_test that failed
So I think the best method at the moment for MinGW builds is to use enable-auto-import and export-all-symbols.
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
On Wednesday 17 November 2010 14:50:15 uwe_kindler [..] ... wrote:
> Ok, I left rtt-config.h unchanged (did not remove !defined( __MINGW32__ ))
> and manually added -Wl,--enable-auto-import -Wl,--export-all-symbols to
> the CMAKE_SHARED_LINKER_FLAGS in CMake GUI and rebuilt the whole stuff.
>
> The result looks quite good:
>
This test fails on all platforms. It will be fixed in 2.2.0
...
>
> So I think the best method at the moment for MinGW builds is to use
> enable-auto-import and export-all-symbols.
So we could set CMAKE_SHARED_LINKER_FLAGS in the check_depend.cmake file when
detecting cygwin ?
Peter
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
I changed the check_depend.cmake file (line 231) the following way and the build runs fine without any auto import warnings:
There are two other warning issues during build that can get fixed easily. I get a lot of warnigs of this kind:
This warning issue was gone in 2.1.0 and came back in 2.1.1. I solved this by replacing
#define NOMINMAX
in win32.h with
Another warning that occured only once during build was this one:
I fixed this warning ba adding #include <stdlib.h> to dlfcn.c file.
After these changes the build runs to completion with almost no warnings and test cases run fine.
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
I changed the check_depend.cmake file (line 231) the following way and the build runs fine without any auto import warnings:
There are two other warning issues during build that can get fixed easily. I get a lot of warnigs of this kind:
This warning issue was gone in 2.1.0 and came back in 2.1.1. I solved this by replacing
#define NOMINMAX
in win32.h with
Another warning that occured only once during build was this one:
I fixed this warning ba adding #include <stdlib.h> to dlfcn.c file.
After these changes the build runs to completion with almost no warnings and test cases run fine.
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
On Thursday 18 November 2010 10:06:25 uwe_kindler [..] ... wrote:
> I changed the check_depend.cmake file (line 231) the following way and the
> build runs fine without any auto import warnings:
...
Thanks, I added all the fixes on the toolchain-2.1 branch.
Peter
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
> The output clearly shows that the typekit for the basic types is not
loaded:
> int -> unknown type. This is normally automatically done by the
> deployer/taskbrowser, I have no idea why this is not happening in the
test,
> maybe someone else can shed some light on this problem.
Maybe it helps if I describe the steps I did until running the test cases.
1.
I downloaded Orocos toolchain 2.1.0
2.
I opened the the CMake GUI and pointed the source code path to:
orocos/orocos-toolchain-2.1.0/rtt
3.
I selected the build directory:
orocos/build_orocos-toolchain-2.1.0_mingw4.4.0
4.
I configured RTT (OROCOS_TARGET win32, CMAKE_BUILD_TYPE debug and added
BOOST_ROOT)
5.
I generated the makefiles
6.
I opened a console in build directory and executed mingw32-make
6.
I manually copied the following files into
orocos/build_orocos-toolchain-2.1.0_mingw4.4.0/tests directory:
liborocos-rtt-win32.dll
librtt-typekit-win32.dll
librtt-scripting-win32.dll
librtt-marshalling-win32.dll
libfixtures.dll
7.
I changed to the orocos/build_orocos-toolchain-2.1.0_mingw4.4.0/tests
to start the tests.
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
On Tuesday 16 November 2010 12:40:41 Uwe Kindler wrote:
> > The output clearly shows that the typekit for the basic types is not
>
> loaded:
> > int -> unknown type. This is normally automatically done by the
> > deployer/taskbrowser, I have no idea why this is not happening in the
>
> test,
>
> > maybe someone else can shed some light on this problem.
>
> Maybe it helps if I describe the steps I did until running the test cases.
>
> 1.
> I downloaded Orocos toolchain 2.1.0
>
> 2.
> I opened the the CMake GUI and pointed the source code path to:
> orocos/orocos-toolchain-2.1.0/rtt
>
> 3.
> I selected the build directory:
> orocos/build_orocos-toolchain-2.1.0_mingw4.4.0
>
> 4.
> I configured RTT (OROCOS_TARGET win32, CMAKE_BUILD_TYPE debug and added
> BOOST_ROOT)
>
> 5.
> I generated the makefiles
>
> 6.
> I opened a console in build directory and executed mingw32-make
>
> 6.
> I manually copied the following files into
> orocos/build_orocos-toolchain-2.1.0_mingw4.4.0/tests directory:
> liborocos-rtt-win32.dll
> librtt-typekit-win32.dll
> librtt-scripting-win32.dll
> librtt-marshalling-win32.dll
> libfixtures.dll
Are you sure this step is needed? On other OS's this is not necessary. What
was the reason you did this?
Ruben.
> 7.
> I changed to the orocos/build_orocos-toolchain-2.1.0_mingw4.4.0/tests
> to start the tests.
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
> Are you sure this step is needed? On other OS's this is not
necessary. What
> was the reason you did this?
Windows searchs for shared libraries only in directories that are in the
PATH environment variable and in the directory where the executable is
started.
So to make shure that Windows finds all required DLLs i simply copied
them into the directory where the test executables are located. I.e. if
I remove librtt-marshalling-win32.dll from the directory and execute
enum_type_test then Windows complains with a message box (translated
from german):
"Could not start application because librtt-marshalling-win32.dll is
missing..."
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
This is the log output of enum_type_test with ORO_LOGLEVEL=7. Any idea whats going wrong here?
0.000 [ Info ][Logger] Successfully extracted environment variable ORO_LOGLEVEL
0.002 [ Info ][Logger] OROCOS version '2.1.0' compiled with GCC 4.4.0.Orocos Logging Activated at level : [ Debug ] ( 6 )
0.004 [ Info ][Logger] Reference System Time is : 262959564175055 ticks ( 262960 seconds ).
0.007 [ Info ][Logger] Logging is relative to this time.
0.009 [ Debug ][Logger] MainThread started.
0.011 [ Debug ][Logger] Starting StartStopManager.
0.013 [ Info ][Logger] No RTT_COMPONENT_PATH set.
0.015 [ Info ][Logger] Loading plugin libraries from directory ./plugins ...
0.017 [ Debug ][Logger] Scanning file ./plugins/CMakeFiles ...not a regular file: ignored.
0.019 [ Debug ][Logger] Scanning file ./plugins/cmake_install.cmake ...not a .dll library: ignored.
0.022 [ Debug ][Logger] Scanning file ./plugins/CTestTestfile.cmake ...not a .dll library: ignored.
0.025 [ Debug ][Logger] Scanning file ./plugins/libservice_plugin.dll ...Found library libservice_plugin.dll
0.027 [ Info ][Logger] Loaded RTT Plugin 'serviceplugin' from 'service_plugin'
0.029 [ Debug ][Logger] Scanning file ./plugins/libservice_plugin.dll.a ...not a .dll library: ignored.
0.031 [ Debug ][Logger] Scanning file ./plugins/Makefile ...not a .dll library: ignored.
0.033 [ Debug ][Logger] No such directory: ./plugins/win32
0.035 [ Info ][Logger] Loading plugin libraries from directory ./types ...
0.038 [ Debug ][Logger] Scanning file ./types/CMakeFiles ...not a regular file: ignored.
0.040 [ Debug ][Logger] Scanning file ./types/cmake_install.cmake ...not a .dll library: ignored.
0.042 [ Debug ][Logger] Scanning file ./types/CTestTestfile.cmake ...not a .dll library: ignored.
0.045 [ Debug ][Logger] Scanning file ./types/libtypekit_plugin.dll ...Found library libtypekit_plugin.dll
0.047 [ Info ][TypekitRepository::Import] Loading Typekit TypesPluginTest.
0.049 [ Info ][Logger] Loaded RTT TypeKit/Transport 'TypesPluginTest' from 'typekit_plugin'
0.051 [ Debug ][Logger] Scanning file ./types/libtypekit_plugin.dll.a ...not a .dll library: ignored.
0.053 [ Debug ][Logger] Scanning file ./types/Makefile ...not a .dll library: ignored.
0.055 [ Debug ][Logger] No such directory: ./types/win32
Running 4 test cases...
0.060 [ Debug ][Logger] LogLevel unaltered by test-runner.
Failed to register enum<-> int conversion because type int is not known in type system.
Registered Type 'TheEnum' to the Orocos Type System.
C:/CodingXP/Sources & Projects/orocos/orocos-toolchain-2.1.0/rtt/tests/enum_type_test.cpp(83): fatal error in "testEnumIntConversion": critical check Types()->type("int") failed
0.075 [ Warning][Logger] Overriding TypeInfo for 'TheEnum'.
Failed to register enum<-> int conversion because type int is not known in type system.
Attempt to register Type 'TheEnum' twice to the Orocos Type System.
0.081 [ Debug ][Logger] Registered Type 'TheEnum' to the Orocos Type System.
C:/CodingXP/Sources & Projects/orocos/orocos-toolchain-2.1.0/rtt/tests/enum_type_test.cpp(121): fatal error in "testEnumStringConversion": critical check ts failed
0.086 [ Info ][Thread] Creating Thread for scheduler: 1
0.088 [ Info ][TC] Thread created with scheduler type '1', priority 0 and period 0.
0.091 [ Info ][Thread] Creating Thread for scheduler: 1
0.093 [ Info ][GlobalEngine] Thread created with scheduler type '1', priority 0 and period 0.
0.095 [ Warning][Logger] Overriding TypeInfo for 'TheEnum'.
Failed to register enum<-> int conversion because type int is not known in type system.
Attempt to register Type 'TheEnum' twice to the Orocos Type System.
0.102 [ Debug ][Logger] Registered Type 'TheEnum' to the Orocos Type System.
0.104 [ ERROR ][TypeInfoName] Creating enum_type_test_int_save.cpf
No enum-to-string mapping defined for enum TheEnum. Converting to int.
Can not build Property of unknown_t.
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
This is the log output of enum_type_test with ORO_LOGLEVEL=7. Any idea whats going wrong here?
0.000 [ Info ][Logger] Successfully extracted environment variable ORO_LOGLEVEL 0.002 [ Info ][Logger] OROCOS version '2.1.0' compiled with GCC 4.4.0.Orocos Logging Activated at level : [ Debug ] ( 6 ) 0.004 [ Info ][Logger] Reference System Time is : 262959564175055 ticks ( 262960 seconds ). 0.007 [ Info ][Logger] Logging is relative to this time. 0.009 [ Debug ][Logger] MainThread started. 0.011 [ Debug ][Logger] Starting StartStopManager. 0.013 [ Info ][Logger] No RTT_COMPONENT_PATH set. 0.015 [ Info ][Logger] Loading plugin libraries from directory ./plugins ... 0.017 [ Debug ][Logger] Scanning file ./plugins/CMakeFiles ...not a regular file: ignored. 0.019 [ Debug ][Logger] Scanning file ./plugins/cmake_install.cmake ...not a .dll library: ignored. 0.022 [ Debug ][Logger] Scanning file ./plugins/CTestTestfile.cmake ...not a .dll library: ignored. 0.025 [ Debug ][Logger] Scanning file ./plugins/libservice_plugin.dll ...Found library libservice_plugin.dll 0.027 [ Info ][Logger] Loaded RTT Plugin 'serviceplugin' from 'service_plugin' 0.029 [ Debug ][Logger] Scanning file ./plugins/libservice_plugin.dll.a ...not a .dll library: ignored. 0.031 [ Debug ][Logger] Scanning file ./plugins/Makefile ...not a .dll library: ignored. 0.033 [ Debug ][Logger] No such directory: ./plugins/win32 0.035 [ Info ][Logger] Loading plugin libraries from directory ./types ... 0.038 [ Debug ][Logger] Scanning file ./types/CMakeFiles ...not a regular file: ignored. 0.040 [ Debug ][Logger] Scanning file ./types/cmake_install.cmake ...not a .dll library: ignored. 0.042 [ Debug ][Logger] Scanning file ./types/CTestTestfile.cmake ...not a .dll library: ignored. 0.045 [ Debug ][Logger] Scanning file ./types/libtypekit_plugin.dll ...Found library libtypekit_plugin.dll 0.047 [ Info ][TypekitRepository::Import] Loading Typekit TypesPluginTest. 0.049 [ Info ][Logger] Loaded RTT TypeKit/Transport 'TypesPluginTest' from 'typekit_plugin' 0.051 [ Debug ][Logger] Scanning file ./types/libtypekit_plugin.dll.a ...not a .dll library: ignored. 0.053 [ Debug ][Logger] Scanning file ./types/Makefile ...not a .dll library: ignored. 0.055 [ Debug ][Logger] No such directory: ./types/win32 Running 4 test cases... 0.060 [ Debug ][Logger] LogLevel unaltered by test-runner. Failed to register enum<-> int conversion because type int is not known in type system. Registered Type 'TheEnum' to the Orocos Type System. C:/CodingXP/Sources & Projects/orocos/orocos-toolchain-2.1.0/rtt/tests/enum_type_test.cpp(83): fatal error in "testEnumIntConversion": critical check Types()->type("int") failed 0.075 [ Warning][Logger] Overriding TypeInfo for 'TheEnum'. Failed to register enum<-> int conversion because type int is not known in type system. Attempt to register Type 'TheEnum' twice to the Orocos Type System. 0.081 [ Debug ][Logger] Registered Type 'TheEnum' to the Orocos Type System. C:/CodingXP/Sources & Projects/orocos/orocos-toolchain-2.1.0/rtt/tests/enum_type_test.cpp(121): fatal error in "testEnumStringConversion": critical check ts failed 0.086 [ Info ][Thread] Creating Thread for scheduler: 1 0.088 [ Info ][TC] Thread created with scheduler type '1', priority 0 and period 0. 0.091 [ Info ][Thread] Creating Thread for scheduler: 1 0.093 [ Info ][GlobalEngine] Thread created with scheduler type '1', priority 0 and period 0. 0.095 [ Warning][Logger] Overriding TypeInfo for 'TheEnum'. Failed to register enum<-> int conversion because type int is not known in type system. Attempt to register Type 'TheEnum' twice to the Orocos Type System. 0.102 [ Debug ][Logger] Registered Type 'TheEnum' to the Orocos Type System. 0.104 [ ERROR ][TypeInfoName] Creating enum_type_test_int_save.cpf No enum-to-string mapping defined for enum TheEnum. Converting to int. Can not build Property of unknown_t.
enum_type_test log output
Hi Ruben,
this is the output of the enum_type_test with ORO_LOGLEVEL=7. Any idea what goes wrong. Do you also need the output of the other tests?
enum_type_test log output
Hi Ruben,
this is the output of the enum_type_test with ORO_LOGLEVEL=7. Any idea what goes wrong. Do you also need the output of the other tests?
enum_type_test log output
Hi Ruben,
this is the output of the enum_type_test with ORO_LOGLEVEL=7. Any idea what goes wrong. Do you also need the output of the other tests?
enum_type_test log output
Hi Ruben,
this is the output of the enum_type_test with ORO_LOGLEVEL=7. Any idea what goes wrong. Do you also need the output of the other tests?
Some test cases fail for Orocos 2.1.0 RTT built with MinGW
Hi,
I just downloaded and Orocos 2.1.0 RTT and compiled it with MinGW GCC4.4.0 and boost 1.43. Compilation ran to completion without any errors (only some warnings because of missing -enable-auto-import flag) - great :O)
Then I tried to run all test cases from the tests folders and some of the tests failed. The following test failed:
enum_type_test
function_test
marshalling_test
program_test
property_loader_test
property_marsh_test
property_test
scripting_test
state_test
types_test
I attached the console output of all tests that failed. Does this indicated that a MinGW built Orocos 2.1.0 does not work properly or does it indicate that I missed a configuration step before running the test cases?
Test output: