fatal error LNK1561: entry point must be defined building boost libs with win32 port of pthread
I am trying to build boost using the win32 port of pthreads. The command I use is: bjam -STOOLS=vc-7_1 -sPTW32_DIR="where-i-put-win32-pthreads" -sPTW32_LIB="pthreadVC.lib" stage The error I get is: LINK : warning LNK4001: no object files specified; libraries used LINK : warning LNK4068: /MACHINE not specified; defaulting to X86 LINK : fatal error LNK1561: entry point must be defined Would be nice of Mico$oft said ***which*** entrypoint is missing. Without that little snippet of information I can only guess.... The log shows the linker command line used: CALL "C:\Program Files\Microsoft Visual Studio .NET 2003\VC7\bin\VCVARS32.BAT" >nul "C:\Program Files\Microsoft Visual Studio .NET 2003\VC7\bin\link" /nologo /INCREMENTAL:NO /LIBPATH:e:\work\overnight\win_extern\lib" /DEBUG /DLL /subsystem:console /out:"..\..\..\bin\boost\libs\regex\build\boost_regex.dll\vc-7_1\debug\t hreading-multi\ boost_regex-vc71-mt-gd-1_33_1.dll" /IMPLIB:"..\..\..\bin\boost\libs\regex\build\boost_regex.dll\vc-7_1\debu g\threading-multi\ boost_regex-vc71-mt-gd-1_33_1.lib" @"..\..\..\bin\boost\libs\regex\build\boost_regex.dll\vc-7_1\debug\threa ding-multi\ boost_regex-vc71-mt-gd-1_33_1.CMD" The CMD file just contains a list of the object files. Any ideas please? I am tearing my hair out here. A quick google reveals that a few other people across the world also have this problem, but not many. Those people posted their question to various forums and unfortunately got no reply :-( Regards, Andrew Marlow ---- There is an emerald here the size of a plover's egg! Don't top-post http://www.catb.org/~esr/jargon/html/T/top-post.html Plain text mails only, please http://www.expita.com/nomime.html ******************************************************************************" The data and information (collectively called Information) herein is the sole property of ICAP. The Information is confidential, may be legally privileged and is intended solely for the use of the individual or entity to whom it is addressed. Unauthorised disclosure, copying or distribution of the Information is strictly prohibited and the recipient of the Information shall not redistribute the Information in any form to a third party. If you received this Information in error please tell us by reply (or telephone the sender) and delete all copies on your system. References in this Information to ICAP are references to ICAP plc, a company incorporated in England with registered number 3611426 whose registered office is 2 Broadgate, London, EC2M 7UR and where the context requires, includes its subsidiary and associated undertakings. As applicable, certain companies within the ICAP group are authorised and regulated by the Financial Services Authority. Any investment research sent from ICAP will provide an impartial and objective assessment of the securities, companies or other matters that are the subject of their research and our Conflicts of Interest Management Policy regarding investment research can be viewed by requesting a copy from your usual contact at ICAP. Please visit www.icap.com for further regulatory information including details regarding the European eCommerce Directive. *******************************************************************************" We have taken precautions to minimise the risk of transmitting software viruses, but we advise you to carry out your own virus checks on any attachment to this message. We cannot accept liability for any loss or damage caused by software viruses. " *******************************************************************************
"Andrew Marlow"
I am trying to build boost using the win32 port of pthreads.
Is that a supported configuration? Hmm, I see some (rather discouraging) comments about it in the Jamfile, but I don't think we've tested that arrangement for many releases. Not surprising you're having trouble.
The command I use is:
bjam -STOOLS=vc-7_1 -sPTW32_DIR="where-i-put-win32-pthreads" -sPTW32_LIB="pthreadVC.lib" stage
The error I get is:
LINK : warning LNK4001: no object files specified; libraries used LINK : warning LNK4068: /MACHINE not specified; defaulting to X86 LINK : fatal error LNK1561: entry point must be defined
Would be nice of Mico$oft said ***which*** entrypoint is missing. Without that little snippet of information I can only guess....
The log shows the linker command line used:
CALL "C:\Program Files\Microsoft Visual Studio .NET 2003\VC7\bin\VCVARS32.BAT" >nul "C:\Program Files\Microsoft Visual Studio .NET 2003\VC7\bin\link" /nologo /INCREMENTAL:NO /LIBPATH:e:\work\overnight\win_extern\lib" /DEBUG /DLL /subsystem:console /out:"..\..\..\bin\boost\libs\regex\build\boost_regex.dll\vc-7_1\debug\t hreading-multi\ boost_regex-vc71-mt-gd-1_33_1.dll" /IMPLIB:"..\..\..\bin\boost\libs\regex\build\boost_regex.dll\vc-7_1\debu g\threading-multi\ boost_regex-vc71-mt-gd-1_33_1.lib" @"..\..\..\bin\boost\libs\regex\build\boost_regex.dll\vc-7_1\debug\threa ding-multi\ boost_regex-vc71-mt-gd-1_33_1.CMD"
Well, that's interesting; I can think of no reason that the pthreadwin32 options shouldn't affect anything about the build of the Regex library. Do you get the same results if you leave out the -sPTW32_XXX options?
The CMD file just contains a list of the object files.
Also interesting; the linker warning claims there were no object files specified.
Any ideas please?
I'm afraid I have no idea. I would probably start by whittling down the command line issued by bjam until you get sometihng that seems to be more-or-less correct, so you can identify what the problem is. -- Dave Abrahams Boost Consulting www.boost-consulting.com
participants (3)
-
Andrew Marlow
-
David Abrahams
-
Peter Dimov