Boost logo

Boost Users :

From: Tjernstrom, Staffan (stjernstrom_at_[hidden])
Date: 2008-07-18 20:51:49


No, unless I also define BOOST_TEST_DYN_LINK, but then I have to copy across the boost test dll (it's not picked up in the manifest by default).

As far as I can tell, the culprit seems to be the following in <boost/test/unit_test.hpp>

//____________________________________________________________________________//

// ************************************************************************** //
// ************** Auto Linking ************** //
// ************************************************************************** //

#if !defined(BOOST_ALL_NO_LIB) && !defined(BOOST_TEST_NO_LIB) && \
    !defined(BOOST_TEST_SOURCE) && !defined(BOOST_TEST_INCLUDED)
# define BOOST_LIB_NAME boost_unit_test_framework

# if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_TEST_DYN_LINK)
# define BOOST_DYN_LINK
# endif

# include <boost/config/auto_link.hpp>

#endif // auto-linking disabled

// ************************************************************************** //
// ************** unit_test_main ************** //
// ************************************************************************** //

namespace boost { namespace unit_test {

int BOOST_TEST_DECL unit_test_main( init_unit_test_func init_func, int argc, char* argv[] );

}}

#if defined(BOOST_TEST_DYN_LINK) && defined(BOOST_TEST_MAIN) && !defined(BOOST_TEST_NO_MAIN)

// ************************************************************************** //
// ************** main function for tests using dll ************** //
// ************************************************************************** //

int BOOST_TEST_CALL_DECL
main( int argc, char* argv[] )
{
    return ::boost::unit_test::unit_test_main( &init_unit_test, argc, argv );
}

//____________________________________________________________________________//

#endif // BOOST_TEST_DYN_LINK && BOOST_TEST_MAIN && !BOOST_TEST_NO_MAIN

Rgds

Staffan Tj.

Staffan Tjernström | Sr. Software Engineer - Market Data Systems | www.esignal.com
eSignal, Interactive Data Desktop Solutions (NYSE: IDC)
3955 Point Eden Way | Hayward, CA 94545-3720 | 510.723.1723 | FAX: 510.266.6100

-----Original Message-----
From: boost-users-bounces_at_[hidden] [mailto:boost-users-bounces_at_[hidden]] On Behalf Of John C. Femiani
Sent: Friday, 18 July, 2008 09:56
To: boost-users_at_[hidden]
Subject: Re: [Boost-users] [test] Fatal link error LNK1561: entry point must be defined when using boost.test

Tjernstrom, Staffan wrote:
>
> What happens is that I try to compile / link any of the unit test
> examples in Visual Studio 2005 Pro, for example the code at
>
> http://www.boost.org/doc/libs/test/example/unit_test_example_05.cpp
Every time I try to click on a unit test example link I have been getting a 404 error :( Can other people use links like this?
>
> I keep getting the LNK1561: entry point must be defined error. I know
> that it's looking for, and picking up, the
> libboost_unit_test_framework-vc80-mt-1_35.lib as if I remove the
> /LIBPATH from the link command options it compains that it cannot find
> that library.
>
> I have my project settings set as follows:
>
> Compiler:
> /O2 /GL /I "C:\Program Files (x86)\boost\boost_1_35_0" /D "_MBCS" /FD
> /EHa /MD /Fo"Release\\" /Fd"Release\vc80.pdb" /W3 /nologo /c /Wp64 /Zi
> /TP /errorReport:prompt
>
> Linker:
> /OUT:"D:\staffan\Documents\Visual Studio
> 2005\Projects\CeT3x\test\AllUnitTests\Release\test_XOLibrary.exe"
> /NOLOGO /LIBPATH:"C:\Program Files (x86)\boost\boost_1_35_0\lib"
> /MANIFEST
> /MANIFESTFILE:"Release\test_XOLibrary.exe.intermediate.manifest"
> /DEBUG /PDB:"d:\staffan\Documents\Visual Studio
> 2005\Projects\CeT3x\test\AllUnitTests\release\test_XOLibrary.pdb"
> /OPT:REF /OPT:ICF /LTCG /MACHINE:X86 /ERRORREPORT:PROMPT kernel32.lib
> user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib
> shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib
>
> Any thoughts anyone?
Does it work if BOOST_TEST_MAIN is defined?

--John Femiani
_______________________________________________
Boost-users mailing list
Boost-users_at_[hidden]
http://lists.boost.org/mailman/listinfo.cgi/boost-users

DISCLAIMER: This message (including any files transmitted with it) may contain confidential and / or proprietary information, is the property of Interactive Data Corporation and / or its subsidiaries and is directed only to the addressee(s). If you are not the designated recipient or have reason to believe you received this message in error, please delete this message from your system and notify the sender immediately. An unintended recipient's disclosure, copying, distribution or use of this message, or any attachments, is prohibited and may be unlawful.


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net