Vendors and different types of libraries
-
Hello there, I am trying to make some vendorto provide a library which uses not only release version of mutithreaded CRT, but debug multithreaded DLL as well. My main problem so far is using it with Rational Purify: first it complains about two CRTs in use and sometimes it complains about memory leaks, but it is hard to trace them. Do you think that it is sensible? (to ask vendor for debug version) Have you also done it for your projects, what is your experience with such issues? Thanks! Igor Proskuriakov
-
Hello there, I am trying to make some vendorto provide a library which uses not only release version of mutithreaded CRT, but debug multithreaded DLL as well. My main problem so far is using it with Rational Purify: first it complains about two CRTs in use and sometimes it complains about memory leaks, but it is hard to trace them. Do you think that it is sensible? (to ask vendor for debug version) Have you also done it for your projects, what is your experience with such issues? Thanks! Igor Proskuriakov
Igor Proskuriakov wrote: Do you think that it is sensible? (to ask vendor for debug version) Well, when you're asking for the ability to debug someone else's code, you're asking them to open the door to their intellectual property, and while some companies do provide source code with their stuff, others are afraid their work will be stolen and duplicated. My guess is that if a company doesn't provide source with their libraries, you're gonna have a tough time getting a debug build from them. Chistopher Duncan Author - The Career Programmer: Guerilla Tactics for an Imperfect World (Apress)
-
Hello there, I am trying to make some vendorto provide a library which uses not only release version of mutithreaded CRT, but debug multithreaded DLL as well. My main problem so far is using it with Rational Purify: first it complains about two CRTs in use and sometimes it complains about memory leaks, but it is hard to trace them. Do you think that it is sensible? (to ask vendor for debug version) Have you also done it for your projects, what is your experience with such issues? Thanks! Igor Proskuriakov
I guess you do not have the source code to this library, just a DLL (and maybe a header file or something)? If that's the case, good luck. :) Your other options are: 1. Ignore the Purify errors for that DLL. IIRC, there are ways in Purify, BoundsChecker, etc., to tell them not to show errors for a particular DLL. (I've had to do this with system DLLs/functions...) 2. Use a different library - one that comes with source code. :-D "Time spent with cats is never wasted." - Colette
-
Hello there, I am trying to make some vendorto provide a library which uses not only release version of mutithreaded CRT, but debug multithreaded DLL as well. My main problem so far is using it with Rational Purify: first it complains about two CRTs in use and sometimes it complains about memory leaks, but it is hard to trace them. Do you think that it is sensible? (to ask vendor for debug version) Have you also done it for your projects, what is your experience with such issues? Thanks! Igor Proskuriakov
Just to clarify a few points. I am getting static library from vendor and the thing is: I do not really want to debug vendor's code, but I just want to separate my bugs from vendor's ones. It looks to me that Purify often reports memory leaks because we are using different CRTs. To simplify a problem: I am freeing memory allocated with release version of opertor new, using debug version of delete. But if I switch to release version of CRT, I cannot use Purify, so I cannot really tell if there are bugs :-( Igor Proskuriakov