   Have things changed? Static Library Q's.
  Hi :)So, for the first time I was trying to turn some of my code into a library, and the process itself was straightforward.The difference between debug and release versions are ...confusing, though.I've read http://www.gamedev.net/reference/articles/article1583.asp (Static Library Tips) as well as http://www.gamedev.net/reference/articles/article1316.asp (Static LibrariesFrom a Game Programming Perspective)as well as random Google hits, and the walkthrough Microsoft posted.Still, I'm confused.Maybe it's because of MSVS2010, but I can't seem to just use the release version of my library with a debug version of a program referencing it.(Makes sense, but only in VS2010 I get an error that there is a debug level mismatch about STL iterators, etc)So I built a debug version, but they all seem to reference the actual source files on my HDD.When I delete/rename them, VS2010 gives me a warning that no source is found, and gives me assembly as an option, which is fine, but what if I wanted to distribute a library in the future?The /Zd (Line Numbers only) suggested in the first article doesn't apply.Isn't there a way to build a debug version without having to provide the source?Especially since the source appears to be required to be found at the original location.What do I do? >_>   
  Are you using SC++L templates/containers in your public library interface?   ;  If SC++L means the STL classes, yes. It uses the vector and map ones.If it means something else, then I have no idea, Google told me nothing...   ;Quote:Original post by EriusIf SC++L means the STL classes, yes. It uses the vector and map ones.If it means something else, then I have no idea, Google told me nothing...The SC++L (Standard C++ Library) is based on the STL from sgi, but they are not the same.You cannot use templates across binary boundaries. The definition needs to be available in the compilation unit where you want to instantiate it for a particular type.   ;  Hmhm. Okay. I'm gonna read more on that,then.This still leaves the question whether it's possible to build a debug library that does not (apparently) include/reference local source code files.It's fine for myself, I can deal with agreeing to just see assembly if the source-code isn't found at the place the library assumes it, but I don't see it as a very pretty thing for distribution.After all, the chance is rather slim that the end user wants to, or has the correct path for the library to find the files set up.So, is there a way to make a library satisfy the 'debug' status without wanting the source files, since libs are designed as an alternative to pas code around which needs to be compiled?Are there debug-info alternatives, like only function or symbol names, so someone would know 'where' something went wrong as in "read violation in libfoo::bar" or something, but not see the source file?   