[Expat-bugs] [ expat-Bugs-1007100 ] Release and Debug DLLs should have different names

SourceForge.net noreply at sourceforge.net
Fri May 11 18:56:53 CEST 2007


Bugs item #1007100, was opened at 2004-08-11 01:26
Message generated for change (Comment added) made by kbluck
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=110127&aid=1007100&group_id=10127

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Build control
Group: Feature Request
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: Nobody/Anonymous (nobody)
Assigned to: Greg Stein (gstein)
Summary: Release and Debug DLLs should have different names

Initial Comment:
On windows, (unlike on Unix) it is a wise idea to have 
output dlls and libs for release and debug with different 
names, possibly following the Python convention: 
 
python.exe 
python_d.exe 
python23.dll 
python23_d.dll 
etc... 
 
The ACE library is another one: 
ace.dll 
aced.dll 
 
And IBMs unicode libraries  (ICU) follow a similar 
converntion. 
 
The reason for this is that applications may encounter 
runtime errors when linking to libraries that use a different 
heap, and release and debug versions generally do this. 
 
 
 

----------------------------------------------------------------------

Comment By: Kevin J Bluck (kbluck)
Date: 2007-05-11 09:56

Message:
Logged In: YES 
user_id=11142
Originator: NO

There are two main schools of thought on this issue. The first is that
debug build targets should be named differently. The second is that debug
builds should be made into a different target path than release builds.

I personally prefer the second option, since it is completely within my
own control and works regardless of whether any given library author has
chosen to mangle target names. The only advantage to mangled names is that
you can install and run both variants in the same folder. But then, you
have to ask, what if I want to define a third build variant, such as
optimized with symbols? Now I need yet another naming variant, which
assuredly *no* library will support, so I'm forced into using a different
path after all.

I'd just start out building into different paths in the first place. Then
you don't have to concern yourself about other people's naming
conventions.


----------------------------------------------------------------------

Comment By: Karl Waclawek (kwaclaw)
Date: 2006-03-09 08:13

Message:
Logged In: YES 
user_id=290026


I am not convinced that this is a good idea for Expat.
Everytime I would like to debug I need to link to a
different library. This is inconvenient.

I am not sure that Expat will have a problem with different
heaps, as the API does not require cross-allocation or
cross-deallocation of memory.


----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=110127&aid=1007100&group_id=10127


More information about the Expat-bugs mailing list