Boost logo

Boost Testing :

Subject: Re: [Boost-testing] [Serialization] Testing issue.
From: Jürgen Hunold (juergen.hunold_at_[hidden])
Date: 2010-03-10 10:18:53


Hi Robert,

Op den Middeweken 10 März 2010 Klock 00:21:46 hett Robert Ramey schreven:
> I have one test - test_dll_plugin which is giving problems on all plaforms.
>
> It tests a dynamically loaded DLL. When I run bjam on my own system
> it seems to work well on both windows and gcc under cygwin. But
> the test matrix shows all platforms failing for this test!.

Fails here with gcc-4.4 and msvc-9.0, too.

> I can't help
> but think its related to the fact that this uses a dynamically loaded
> DLL but maybe that's a red herring.

It seems that the library names coded in the test are not those generated by
Boost.Build. For a quick test I've just inserted the generated names and the
test start to run.

Index: test_dll_plugin.cpp
===================================================================
--- test_dll_plugin.cpp (revision 60377)
+++ test_dll_plugin.cpp (working copy)
@@ -164,7 +164,12 @@
     BOOST_REQUIRE(NULL != testfile);
 
     HINSTANCE hDLL; // Handle to DLL
- hDLL = LoadLibrary("dll_polymorphic_derived2.dll");
+ //hDLL = LoadLibrary("dll_polymorphic_derived2.dll");
+#if defined(__GNUC__)
+ hDLL = LoadLibrary("libdll_polymorphic_derived2_lib-gcc44-mt-
d-1_43.dll");
+#else
+ hDLL = LoadLibrary("dll_polymorphic_derived2_lib-vc90-mt-gd-1_43.dll");
+#endif
     BOOST_CHECK_MESSAGE((0 != hDLL), "Failed to find/load
dll_polymorphic_derived2" );
     if(0 == hDLL)
         return EXIT_FAILURE;
--------------------------------------------------------------

The gcc test then triggers an assert, but it at least loads the plugin.

> Any suggestions would be appreciated.

The best solution would be to force Boost.Build to always use
"dll_polymorphic_derived2.dll" as the library name. Otherwise you could
compose the library name using the autolink-magic.

I've cross-mailed this to the Boost-Build list, in case someone has a better
idea or even a solution.

Yours,

Jürgen

-- 
* Dipl.-Math. Jürgen Hunold       ! Ingenieurgesellschaft für 
* voice: ++49 511 262926 57       ! Verkehrs- und Eisenbahnwesen mbH  
* fax  : ++49 511 262926 99       ! Lister Straße 15
* juergen.hunold_at_[hidden]        ! www.ivembh.de
* 
* Geschäftsführer:                ! Sitz des Unternehmens: Hannover
* Prof. Dr.-Ing. Thomas Siefer    ! Amtsgericht Hannover, HRB 56965
* PD Dr.-Ing. Alfons Radtke       !

Boost-testing list run by mbergal at meta-comm.com