Re: static vs. shared linking

2015-04-11 Thread David Stacey
On 09/04/15 22:32, Larry Hall (Cygwin) wrote: On 04/09/2015 04:15 AM, David Stacey wrote: I can't believe that I'm the first person to fall foul of this - any library that relies heavily on templates risks falling into the same trap. It's true that someone using STL strings has the poten

Re: static vs. shared linking

2015-04-11 Thread David Stacey
On 09/04/15 18:24, Corinna Vinschen wrote: On Apr 9 09:15, David Stacey wrote: The solution is to compile with '-frepo', which works for both my test code and also poco-1.6.0 - although it has quite an impact on the compilation time (it trebles what was already a fairly lengthy compilatio

Re: static vs. shared linking

2015-04-09 Thread Larry Hall (Cygwin)
On 04/09/2015 04:15 AM, David Stacey wrote: I can't believe that I'm the first person to fall foul of this - any library that relies heavily on templates risks falling into the same trap. It's true that someone using STL strings has the potential to see this bug but I doubt there are allot

Re: static vs. shared linking

2015-04-09 Thread Corinna Vinschen
On Apr 9 09:15, David Stacey wrote: > On 31/03/2015 17:35, David Stacey wrote: > >I'll post back here if and when I make more progress. > > tl;dr: The problem was caused by a template being instantiated twice (one in > the shared DLL and one in the main executable). This was fixed by compiling >

Re: static vs. shared linking

2015-04-09 Thread David Stacey
On 31/03/2015 17:35, David Stacey wrote: I'll post back here if and when I make more progress. tl;dr: The problem was caused by a template being instantiated twice (one in the shared DLL and one in the main executable). This was fixed by compiling with '-frepo'. I do wonder if g++ should have

Re: static vs. shared linking

2015-03-31 Thread David Stacey
On 31/03/15 10:05, Corinna Vinschen wrote: On Mar 30 20:15, David Stacey wrote: Back to the matter in hand - I don't suppose you had thoughts on why my simple application crashes when linked as shared, but works fine when linked statically? No, sorry. This may be a c++11 thingy which requires

Re: static vs. shared linking

2015-03-31 Thread Corinna Vinschen
On Mar 31 08:04, Achim Gratz wrote: > David Stacey writes: > > Thank you for your reply. I tried this two different ways: > > > > - Running 'rebase -s' on cygcrash_library.dll; > > Better try 'rebase -O' if you're just experimenting. > > > - Moving 'cygcrash_library.dll' into /usr/bin and tri

Re: static vs. shared linking

2015-03-31 Thread Corinna Vinschen
On Mar 30 20:15, David Stacey wrote: > On 30/03/15 11:55, Corinna Vinschen wrote: > >On Mar 25 22:42, David Stacey wrote: > >>I've never had much joy out of addr2line before, and I'm struggling to > >>recreate what you've done. I've added '-g' to the command line, run 'go.sh' > >>again. This genera

Re: static vs. shared linking

2015-03-30 Thread Achim Gratz
David Stacey writes: > Thank you for your reply. I tried this two different ways: > > - Running 'rebase -s' on cygcrash_library.dll; Better try 'rebase -O' if you're just experimenting. > - Moving 'cygcrash_library.dll' into /usr/bin and triggering a full > rebase using 'rebase-trigger full'

Re: static vs. shared linking

2015-03-30 Thread Andrey Repin
Greetings, David Stacey! >>> Back to the matter in hand - I don't suppose you had thoughts on why my >>> simple application crashes when linked as shared, but works fine when >>> linked statically? >> Probably I've missed this bit before, forgive me if I did, but have you >> rebased your library a

Re: static vs. shared linking

2015-03-30 Thread David Stacey
On 30/03/2015 21:30, Andrey Repin wrote: Greetings, David Stacey! Back to the matter in hand - I don't suppose you had thoughts on why my simple application crashes when linked as shared, but works fine when linked statically? Probably I've missed this bit before, forgive me if I did, but have

Re: static vs. shared linking

2015-03-30 Thread Andrey Repin
Greetings, David Stacey! > Back to the matter in hand - I don't suppose you had thoughts on why my > simple application crashes when linked as shared, but works fine when > linked statically? Probably I've missed this bit before, forgive me if I did, but have you rebased your library after link

Re: static vs. shared linking

2015-03-30 Thread David Stacey
On 30/03/15 11:55, Corinna Vinschen wrote: On Mar 25 22:42, David Stacey wrote: I've never had much joy out of addr2line before, and I'm struggling to recreate what you've done. I've added '-g' to the command line, run 'go.sh' again. This generates a fresh stackdump file, and then I do: awk '

Re: static vs. shared linking

2015-03-30 Thread Corinna Vinschen
On Mar 25 22:42, David Stacey wrote: > On 25/03/2015 09:04, Corinna Vinschen wrote: > > If you > >install the cygwin-debuginfo package, addr2line returns something like this > >as the call stack (non-required path components removed): > > > >[...]/cygwin/exceptions.cc:1247 > >[...]/cygwin/exceptio

Re: static vs. shared linking

2015-03-25 Thread David Stacey
On 24/03/2015 00:02, David Stacey wrote: I've been having difficulty building poco-1.6.0 for Cygwin for some time. I've managed to produce a test case that shows the problem: https://dl.dropboxusercontent.com/u/119453582/Cygwin/crashtest.tar.xz This archive contains source files that produce a

Re: static vs. shared linking

2015-03-25 Thread David Stacey
On 25/03/2015 22:11, David Stacey wrote: On 25/03/2015 16:59, Warren Young wrote: If that makes the symptom disappear, I wonder if there’s some problem with a Cygwin *.exe owning a std::string that gets resized by a Cygwin *.dll. If so, that probably*is* a memory ownership coordination probl

Re: static vs. shared linking

2015-03-25 Thread David Stacey
On 25/03/2015 09:04, Corinna Vinschen wrote: On Mar 24 18:39, David Stacey wrote: On 24/03/2015 00:02, David Stacey wrote: I've been having difficulty building poco-1.6.0 for Cygwin for some time. I've managed to produce a test case that shows the problem: https://dl.dropboxusercontent.com/u/1

Re: static vs. shared linking

2015-03-25 Thread David Stacey
On 25/03/2015 16:59, Warren Young wrote: On Mar 25, 2015, at 3:04 AM, Corinna Vinschen wrote: And this is where it comes from. It's a call to void basic_string<_CharT, _Traits, _Alloc>::reserve(size_type __res) David, what happens if you say wtext.reserve(1); inside runTests() be

Re: static vs. shared linking

2015-03-25 Thread Warren Young
On Mar 25, 2015, at 3:04 AM, Corinna Vinschen wrote: > > And this is where it comes from. It's a call to > > void basic_string<_CharT, _Traits, _Alloc>::reserve(size_type __res) David, what happens if you say wtext.reserve(1); inside runTests() before the call to crash()? If that make

Re: static vs. shared linking

2015-03-25 Thread Corinna Vinschen
On Mar 24 18:39, David Stacey wrote: > On 24/03/2015 00:02, David Stacey wrote: > >I've been having difficulty building poco-1.6.0 for Cygwin for some > >time. I've managed to produce a test case that shows the problem: > > > >https://dl.dropboxusercontent.com/u/119453582/Cygwin/crashtest.tar.xz >

Re: static vs. shared linking

2015-03-24 Thread David Stacey
On 24/03/2015 00:02, David Stacey wrote: I've been having difficulty building poco-1.6.0 for Cygwin for some time. I've managed to produce a test case that shows the problem: https://dl.dropboxusercontent.com/u/119453582/Cygwin/crashtest.tar.xz This archive contains source files that produce a

static vs. shared linking

2015-03-23 Thread David Stacey
I've been having difficulty building poco-1.6.0 for Cygwin for some time. I've managed to produce a test case that shows the problem: https://dl.dropboxusercontent.com/u/119453582/Cygwin/crashtest.tar.xz This archive contains source files that produce a very simple library. When linked staticall