Release Build dependency on debug rt in vs7.1

Ross Johnson Ross.Johnson@homemail.com.au
Sat Aug 8 01:38:00 GMT 2009


The pre-built pthreadVC2.dll is built using nmake and the Makefile 
provided (the actual commandline would have been "nmake clean 
VC-inlined"). I'm guessing the project file isn't inlining, which could 
account for the larger size for the pre-built dll.

For comparison with the project build, if you build with "nmake" as 
above you should find that the compile options are:-

/O2 /Ob2 /W3 /MD /nologo /I. /D_WIN32_WINNT=0x400 /DHAVE_CONFIG_H /DPTW32_BUILD_INLINED


Although there is a project file included in the sources it was 
contributed and is not otherwise maintained. I use the commandline tools 
for all building and testing of the dll because it makes the release 
process more consistent across the different build environments.

Fritz, Robert H. CIV NAVAIR/5.1.2.1 2424,1,607 wrote:
> I've downloaded pthreads-w32-2-8-0-release.exe and have built it in Release under vs7.1, letting VS7.1 import/convert the .dsw/.dsp into .sln/.vcproj.  While pthreadVC2.dll builds without errors or warnings, my application, also built in Release as part of the same solution, complains if the VS7.1 RT Debug DLL msvcr71d.dll is not present.
>
> I've isolated the problem to pthreadVC2.dll when built in Release under vs7.1:
> 1) I substituted the vs7.1 built DLL with Pre-built.2\lib\pthreadVC2.dll and msvcr71d.dll is no longer required.  
> 2) I've substituted the vs7.1 built DLL with a VS6 built pthreadVC2.dll I built using the original .dsw/.dsp and again my application runs without complaint.  
>
> I've looked into the .proj file and see that it is properly using NDEBUG.  
> Can someone duplicate/explain how my DLL has acquired a dependency on msvcr71d.dll? For comparison purposes, my pthreadVC2.dll is 52kb when built in VS7.1. 
>
> The last peculiarity I've noticed is that Pre-built.2\lib\pthreadVC2.dll is 85kb in size, while the one I built in VS6 using the provided .dsw/.dsp is 44kb.  I would have expected them to be the same size.  This would imply that Pre-built was created using a different method.
>
> Finally, has anyone played with the VS2010 beta to see what, if any, impact the multi-core support might have on this pthread code?
>   



More information about the Pthreads-win32 mailing list