0

I have a large preexisting code base depending on many external libraries which all uses \MTd as the runtime setting. This code base is stable and well tested in this configuration.I would prefer to keep it as is.

I am attempting to integrate a new external library into the code base (incase it matters it is the Casablanca REST SDK) however I have just discovered it appears to need to be used with the \MDd setting. I was getting some strange untrackable bug deep in std:shared_ptr when I discovered this problem. When I changed my isolated project to use \MDd casablanca worked much better.

Visual studio does not appear to allow me to have different settings it appears to be either all or nothing in one solution?

Does anyone know of a good work around for this situation? Any suggestions? I'm not even sure where to focus my attention? 1) Can I fake Visual studio out and use both? and if so should I actually do that? 2) Or should I attempt to get a working static library of casablanca? It does not appear possible on the disscussion forum? 3) Or should I just bite the bullet and move the entire solution to \MDd? 4) Lastly, should I just cut my loses and try a different client server framework? A quick search showed for a windows c++ client server solution I could use Boost Asio, Google Client API, WinSock?

This is my first client server implementation and opinions are very welcome.

dewaffled
  • 2,850
  • 2
  • 17
  • 30
Robyn Fry
  • 83
  • 7
  • Have you seen [this discussion](https://casablanca.codeplex.com/workitem/18)? There are detailed instructions there how to build it with static runtime. As for your questions: you can specify runtime per-project in project options window. But you cannot mix modules runtime if you need integration beyond plain C ABI. The libraries you mentioned are of completely different levels - this one provides REST capatibilities over HTTP. With boost asio you will have only TCP sockets out of the box - if you need HTTP you'll need to do it yourself. WinSock - is plain C Windows API. – dewaffled Jan 26 '15 at 20:05

1 Answers1

0

We actually moved the entire code base to link dynamically. There were other libraries causing some concerns and this seemed like a good time to migrate the code base. Problem solved, at least for now. Thanks for the feedback.

Robyn Fry
  • 83
  • 7