You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Alexander Mueller <Xe...@web.de> on 2006/02/03 16:00:23 UTC
Runtime library ambiguities for Subversion on Windows/Debug
Some of the dependant libraries of subversion seem to implicitely
include MSVCRT.lib even for the debug configuration. This leads to the
linker warning LNK4098 which tells you there are conflicts with the
standard library.
This can give unexpected result while debugging Subversion on Windows.
In my configuration _stddup was used from MSVCRT.lib while free was used
from MSVCRTD.lib...
What to do next? Shall I create an issue appending the patch?
Xela
Here is the proposed commit log message entry for the patch:
Changed the generator script for MSVC dsp files so all the libs (even
standard runtim libs) are mentioned explicitely. This is because some
of the libs subversion uses lead to an implicit linkage against
MSVCRT.lib when build in debug configuration. The result is linkage
against MSVCRT.lib and MSVCRTD.lib.
* build/generator/msvc_dsp.ezt: Added the linker option to use
no default libs (only for EXE)
* build/generator/gen_win.py: add "oldnames.lib",
"kernel32.lib" and "msvcrtd.lib"/"msvcrt.lib" to the list
of libs to be linked against (only for EXE)
Re: Runtime library ambiguities for Subversion on Windows/Debug
Posted by Branko Čibej <br...@xbc.nu>.
Alexander Mueller wrote:
> This sounds pretty good. If nobody else jumps in I will take a look at
> the zLib configuration to make sure it uses different directories.
You'll have to send patches to the zlib project, we just use the
makefile they provide.
-- Brane
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Re: Runtime library ambiguities for Subversion on Windows/Debug
Posted by Alexander Mueller <Xe...@web.de>.
This sounds pretty good. If nobody else jumps in I will take a look at
the zLib configuration to make sure it uses different directories.
Xela
Ivan Zhakov schrieb:
> On 2/3/06, Branko Čibej <br...@xbc.nu> wrote:
>
>>Alexander Mueller wrote:
>>
>>>Some of the dependant libraries of subversion seem to implicitely
>>>include MSVCRT.lib even for the debug configuration. This leads to the
>>>linker warning LNK4098 which tells you there are conflicts with the
>>>standard library.
>>
>>Yes, this is indeed a problem ...
>
> [..]
>
>>A better solution would be to see which libraries are actually causing
>>problems. and fix their builds. I suspect zlib.
>
> Yeah, Branko you are right, it's zlib. And not openssl. I have tested,
> removing --with-zlib option eliminates warnings. In zlib problem occur
> because *.obj files stored in same directory for release and debug
> configurations.
>
> So, Alexander, there is workaround: make full rebuild after changing
> between release and debug configurations. It should help.
>
> --
> Ivan Zhakov
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Re: Runtime library ambiguities for Subversion on Windows/Debug
Posted by Ivan Zhakov <ch...@gmail.com>.
On 2/3/06, Branko Čibej <br...@xbc.nu> wrote:
> Alexander Mueller wrote:
> > Some of the dependant libraries of subversion seem to implicitely
> > include MSVCRT.lib even for the debug configuration. This leads to the
> > linker warning LNK4098 which tells you there are conflicts with the
> > standard library.
> Yes, this is indeed a problem ...
[..]
> A better solution would be to see which libraries are actually causing
> problems. and fix their builds. I suspect zlib.
Yeah, Branko you are right, it's zlib. And not openssl. I have tested,
removing --with-zlib option eliminates warnings. In zlib problem occur
because *.obj files stored in same directory for release and debug
configurations.
So, Alexander, there is workaround: make full rebuild after changing
between release and debug configurations. It should help.
--
Ivan Zhakov
Re: Runtime library ambiguities for Subversion on Windows/Debug
Posted by Stefan Küng <st...@gmx.ch>.
D.J. Heap wrote:
> On 2/3/06, steveking <st...@gmx.ch> wrote:
> [snip]
>> Actually, it's openssl. I haven't seen a build switch for it to create a
>> debug build - do you know if it has something like this?
>
>
> Yes, but it's not just a switch -- you have to tweak a file. It's
> documented in the INSTALL.W32 file.
Ah, thanks for the pointer!
I guess I leave it that way - tweaking files in an automated build is
something I'd like to avoid if possible.
Stefan
--
___
oo // \\ "De Chelonian Mobile"
(_,\/ \_/ \ TortoiseSVN
\ \_/_\_/> The coolest Interface to (Sub)Version Control
/_/ \_\ http://tortoisesvn.tigris.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Re: Runtime library ambiguities for Subversion on Windows/Debug
Posted by "D.J. Heap" <dj...@gmail.com>.
On 2/3/06, steveking <st...@gmx.ch> wrote:
[snip]
>
> Actually, it's openssl. I haven't seen a build switch for it to create a
> debug build - do you know if it has something like this?
>
Yes, but it's not just a switch -- you have to tweak a file. It's
documented in the INSTALL.W32 file.
DJ
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Re: Runtime library ambiguities for Subversion on Windows/Debug
Posted by steveking <st...@gmx.ch>.
Branko Čibej wrote:
> Alexander Mueller wrote:
>> Some of the dependant libraries of subversion seem to implicitely
>> include MSVCRT.lib even for the debug configuration. This leads to the
>> linker warning LNK4098 which tells you there are conflicts with the
>> standard library.
> Yes, this is indeed a problem ...
>
>> This can give unexpected result while debugging Subversion on Windows.
>> In my configuration _stddup was used from MSVCRT.lib while free was used
>> from MSVCRTD.lib...
>>
>> What to do next? Shall I create an issue appending the patch?
> I see one potential problem with this patch: it will break VS.NET builds
> because it explicitly mentions msvcrt, which is not the correct runtime
> lib for the newer compilers.
>
> A better solution would be to see which libraries are actually causing
> problems. and fix their builds. I suspect zlib.
Actually, it's openssl. I haven't seen a build switch for it to create a
debug build - do you know if it has something like this?
Stefan
--
___
oo // \\ "De Chelonian Mobile"
(_,\/ \_/ \ TortoiseSVN
\ \_/_\_/> The coolest Interface to (Sub)Version Control
/_/ \_\ http://tortoisesvn.tigris.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Re: Runtime library ambiguities for Subversion on Windows/Debug
Posted by Branko Čibej <br...@xbc.nu>.
Alexander Mueller wrote:
> Some of the dependant libraries of subversion seem to implicitely
> include MSVCRT.lib even for the debug configuration. This leads to the
> linker warning LNK4098 which tells you there are conflicts with the
> standard library.
Yes, this is indeed a problem ...
> This can give unexpected result while debugging Subversion on Windows.
> In my configuration _stddup was used from MSVCRT.lib while free was used
> from MSVCRTD.lib...
>
> What to do next? Shall I create an issue appending the patch?
I see one potential problem with this patch: it will break VS.NET builds
because it explicitly mentions msvcrt, which is not the correct runtime
lib for the newer compilers.
A better solution would be to see which libraries are actually causing
problems. and fix their builds. I suspect zlib.
(BTW, kernel32.lib and oldnames.lib shouldn't be problematic.)
-- Brane
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org