arivero
unread,Jun 11, 2010, 6:19:53 AM6/11/10Sign in to reply to author
Sign in to forward
You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to Visual C++ Lovers
Hello,
I am building with Visual C++ 9.0 an static library (not dll) that
uses only STL (basically vectors, maps and strings).
My purpose is to distribute this library as an evaluation. In short,
I
have to compile my static lib in release mode because I don't want to
open the library code (not for this evaluation version).
However, I would like to allow that other C++ developers can create
their own programs in debug mode linking with my library in release.
My problem comes when I do some test and act in the role of the
developers. For that I create a program in debug (it uses debug CRT)
and I link with the static library (that uses release CRT). All
compilation is ok, but when I run the program in debug it fails with
a
memory crack caused for the STLs. Problems are for example when I
use:
std::string str = "hello"
I know the problem is in mix debug and release versions with STL, if
I
don´t mix both modes all works fine, but I cannot distribute my
static
library in debug. So I have a problem when users want to build
programs
in debug.
So, this is my question... how can I distribute only one copy of my
static library without any debug information and without cracks :)
for
the users can link with it in debug or release?
Thanks in advance