|
Boost : |
Subject: Re: [boost] [test] Using the Boost Unit Test Framework with shared libs
From: Peter (vmail_at_[hidden])
Date: 2009-03-24 16:39:21
Hi
Thanks for you help.
>
>
>> *I then link to boost_unit_test_framework-gcc34-mt-1_38.so
>> The link passes , but I get a warning from gcc++ 3.4.4 that auto-linking
>> has been enabled ( I will provide the exact details if useful ).
>
> If you mean auto-import, that's normal on cygwin.
>
Yes , thats what I meant :
warning: auto-importing has been activated without --enable-auto-import
specified on the command line.
This should work unless it involves constant data structures referencing
symbols from auto-imported DLLs.Info: resolving vtable for
boost::unit_test::unit_test_log_tby linking to
__imp___ZTVN5boost9unit_test15unit_test_log_tE (auto-import)
Is this really normal ?
And is it really good ? I once had exactly the same sort of warning (
compiling stuff not related to boost ) and it turned out
that I linked against a dll with Visual C++ Symbols ( that were not
exported in a way that gcc can handle them correctly ).
The resulting executable was basically undefined behavior.
In any case, I do not want to live with compiler/linker warnings.
Usually, as far as I know, on windows ( and also on cygwin on windows )
the standard way would be to create a .dll and then use that to create
an import library .lib that is linked against. The .dll itself is not
required for the linking process.
Am I missing something ? Is there a way to use shared libs in Boost.Test
without linker warnings ( that I know from experience have to be taken
very seriously in this particular case ) ?
Again, thanks for help
> In Christ,
> Steven Watanabe
Peter
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk