[xsd-users] Double definitions when using DLLs

Boris Kolpackov boris at codesynthesis.com
Fri Aug 15 00:54:12 EDT 2014


Sorry, here it is.

Boris


----- Original Message -----
From: "alexander.gosling at kongsberg.com" <alexander.gosling at kongsberg.com>
Subject: RE: [xsd-users] Double definitions when using DLLs
Date: Thu, 14 Aug, 2014 11:55 +0000

Hi Boris,
I could not see any attached test case :)

-- 
alex


-----Original Message-----
From: Boris Kolpackov [mailto:boris at codesynthesis.com] 
Sent: 14. august 2014 10:42
To: Gosling, Alexander
Cc: xsd-users at codesynthesis.com
Subject: Re: [xsd-users] Double definitions when using DLLs

Hi Alexander,

Please find attached the test case I was using at that time. That was
4 years ago so my memory is a bit fuzzy as to what exactly going on in there. The dll_test.new is my latest (modified) version while dll_test.orig is the original test case. See which one resembles your case the closest (if at all).

Generally, by now I have a pretty good understanding of what's going on with this problem. Unfortunately, this Win32 DLL exporting stuff is quite complex (and in many cases outright broken) and, as a result, there are many ways in which things can be done "incorrectly" that will all lead to the same or very similar errors. That's why it is best to either have a detailed description of your setup (so that I could try to guess which part is incorrect) or, better yet, have a small test case that mimics your setup so that I can try and fix it.

Boris



----- Original Message -----
From: "alexander.gosling at kongsberg.com" <alexander.gosling at kongsberg.com>
Subject: RE: [xsd-users] Double definitions when using DLLs
Date: Wed, 13 Aug, 2014 15:20 +0000

Hi Boris,
Thanks for your suggestions.

Yes, we can isolate the code from our system and supply it to you. That is a bit of work, so it would be easier for us if you could send us the program you used to verify the solution you describe in http://www.codesynthesis.com/pipermail/xsd-users/2010-September/003011.html.

We can compile that in our environment, and check any differences between our code and yours.

--
alex

________________________________________
From: Boris Kolpackov [boris at codesynthesis.com]
Sent: Tuesday, August 12, 2014 2:27 PM
To: Gosling, Alexander
Cc: xsd-users at codesynthesis.com
Subject: Re: [xsd-users] Double definitions when using DLLs

Hi Alexander,

Can you describe your setup a bit. Specifically, what are the DLLs, what are the executables, what exports what, and what errors and where you get. This way I can try to re-create your setup in a separate test case. Or, if you want to create such a test case yourself, that would be even better! I could then try to "fix" it.

Thanks,
Boris





----- Original Message -----
From: "alexander.gosling at kongsberg.com" <alexander.gosling at kongsberg.com>
Subject: RE: [xsd-users] Double definitions when using DLLs
Date: Tue, 12 Aug, 2014 08:49 +0000

Hello Boris,
We have tried these suggestions in Visual Studio 2012. Unfortunately have not been successful in making it work.

Could you show us an example in how you managed to get it to work?

--
alex


-----Original Message-----
From: Boris Kolpackov [mailto:boris at codesynthesis.com]
Sent: 5. mai 2014 18:55
To: Gosling, Alexander
Cc: xsd-users at codesynthesis.com
Subject: Re: [xsd-users] Double definitions when using DLLs

Alexander,

I believe you can resolve this issue if you can make one of the DLLs "root" and export std::basic_string from it while importing it in all the other DLLs and your executable. This earlier post has the instructions:

http://www.codesynthesis.com/pipermail/xsd-users/2010-September/003011.html

With this email containing more analysis/information on the problem:

http://www.codesynthesis.com/pipermail/xsd-users/2010-September/003019.html

Let me know how it goes or if something is not clear.

Boris

________________________________

CONFIDENTIALITY
This e-mail and any attachment contain KONGSBERG information which may be proprietary, confidential or subject to export regulations, and is only meant for the intended recipient(s). Any disclosure, copying, distribution or use is prohibited, if not otherwise explicitly agreed with KONGSBERG. If received in error, please delete it immediately from your system and notify the sender properly.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: dll_test.zip
Type: application/zip
Size: 33858 bytes
Desc: not available
Url : http://codesynthesis.com/pipermail/xsd-users/attachments/20140815/6183e274/dll_test-0001.zip


More information about the xsd-users mailing list