From: Kevin K. <ke...@ac...> - 2009-04-26 13:15:14
|
Twylite wrote: > For VC 2005+ you need to deploy using Private Assemblies or > get the user to install the VC redistributable package. > In this case a better alternative may be to statically link to the > runtime libs -- this has an impact on startup time and memory > consumption, but gets around the problem of the target computer not > having the right libraries. The static link also requires you to get your database vendor to make static-link-compatible libraries. I don't know anyone who's successfully build the MySQL libs that way. I usually address the problem by making the user go get the VC Redistributables. It's awkward. (WinSxS got rid of the "DLL Hell" deployment problem and introduced worse ones.) I also include the manifest-bundling step in the build. > Do anyone actually use code signing?! Not me! > Yes, supporting the VS compiles is horribly painful. With Tcl. I say > "with Tcl" because my company works extensively with C/C++ sources that > cross-compile on multiple platforms (Win32, Linux, Solaris, and three > embedded platforms), and the Windows builds are amongst the easiest. > Tcl's makefiles by comparison are an exercise in complexity, and have > the side-effect of marginalizing Windows developers (you can't exploit > the MSVC tools when you're working with a makefile rather than a > dsp/vcproj). And you can't use a .dsp/vcproj anywhere but Visual Studio. Who's marginalizing whom? > Anyway, just putting that out there, it seemed relevant to this > discussion. If you're interesting in trying CMake for Tcl extensions > and TDBC drivers let me know and I can give you a hand getting something > working. CMake is useful, but also involves getting downstream distributors tooled up for it. (ActiveState at the very least!) I'd switch in a heartbeat if I didn't want so much to stay compatible with the way that Andreas does things. (I don't lobby very hard for CMake because of a perceived conflict of interest. I work at GE Research, where CMake was invented.) -- 73 de ke9tv/2, Kevin |