delorie.com/archives/browse.cgi | search |
Hans Streibel wrote: > Sorry I can't do that very quickly because I have > no idea what you are talking about :-( > - .rodata > - .data > - linker script, > - strategic un-consting of the offending symbols Sorry, it's actually .rdata not .rodata, and I typed a very abbreviated message in hopes that it would be enough to google on. The problem occurs when you have a data structure (typically a struct) declared const that contains any reference to a variable that is imported from another DLL. A fuller explanation is <http://www.cygwin.com/ml/cygwin/2004-09/msg01101.html>. As you can see from Chuck's message it's kind of a hairy situation in that there is no "real" fix for it other than undoing the optimization of placing these in a readonly section. That can be accomplished by either using a modified linker script or by removing the 'const' from the declaration. The former is a sort of brute force/last ditch approach which is useful if you have a very large code base with lots of modules and you can't or don't want to hunt down the offending structs. I think the qt project had to take this approach: <http://www.cygwin.com/ml/cygwin/2004-10/msg01052.html> I'm not convinced this is what's wrong in your case, but it fits the symptoms so it's worth ruling out. Brian -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |