SimpleAmqpClient icon indicating copy to clipboard operation
SimpleAmqpClient copied to clipboard

Can't build as static lib on Win64 platform

Open rabellogp opened this issue 10 years ago • 4 comments

I'm trying to build SimpleAmqpClient as static lib using BUILD_SHARED_LIBS=OFF but I keep getting the "The SimpleAmqpClient library cannot be built as a static library on Win32" despite I'm on the current generator "Visual Studio 12 2013 Win64". I've built both rabbitmq-c and Boost as static lib on x64 architecture without problems.

I'm on Windows 8.1 x64, CMake 3.3.2 GUI, Boost 1.59.

rabellogp avatar Oct 01 '15 12:10 rabellogp

No static libs on Win32 was a restriction I put in place in an attempt to make SimpleAmqpClient easer to use[1]. Currently this is working as intended.

I'm contemplating lifting this restriction, as I've seen some demand for it, and I've done something similar for rabbitmq-c.

[1] The reason behind this is the way importing of symbols on Win32 is different depending on whether you're linking against a static or dynamic library. Ideally the code would only need one type of decoration when building the library, and different one when using as either a dynamic or static library. Win32 requires differentiating between static and dynamic symbols when using them, thus the restriction is that users would be forced to define an additional preprocessor definition (-DSIMPLEAMQPCLIENT_STATIC) when compiling sources with the intention of using a static SimpleAmqpClient).

alanxz avatar Oct 13 '15 05:10 alanxz

Has anything changed?

Pro100sie3mam avatar Dec 07 '16 15:12 Pro100sie3mam

@Pro100sie3mam not yet. I have seen quite a bit of interest in a static version of SimpleAmqpClient recently, so I'm making this a priority to get it done.

alanxz avatar Dec 08 '16 03:12 alanxz

I am voicing in my request as well... My project won't build properly on windows unless I can have all dependencies static due to memory deallocation happening in the wrong heaps and what not when using .dll.

mrdeveloperdude avatar Nov 02 '18 10:11 mrdeveloperdude