This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

dlopen()/dlsym() and symbols in deps


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

It would appear that Cygwin's dlopen() implementation does not support
the automatic loading of dependencies.  This matters in the case that
one dlsym()'s a *handle to find a symbol in the dependencies rather than
in itself.

On linux, this is apparently possible:

"Note that some implementations permit the construction of dependencies
between such objects that are embedded within files. In such cases, a
dlopen() operation shall load such dependencies in addition to the
object referenced by file." [1]

[1] http://www.opengroup.org/onlinepubs/009695399/functions/dlopen.html

I came across this when reporting what I originally thought was a bug in
glade3 [2] (with a testcase[3]), but now I have found it to be a
deficiency in Cygwin itself.  While I think I have a fix for gmodule to
work around this, based on tml's gmodule-win32.c code (and therefore I
can't propose a patch myself), it would be nice to see this implemented
in Cygwin proper.

[2] http://bugzilla.gnome.org/show_bug.cgi?id=449562
[3] http://bugzilla.gnome.org/attachment.cgi?id=90416

Could someone more familiar with the internal workings of Cygwin please
provide some input on this issue?


Yaakov

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (Cygwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFGezswpiWmPGlmQSMRCGP+AJ9jqZBpYloCZpq64JUF0JLpRo+ukACg8xnJ
KkhL/s3nx6jyQdumLBsgVm4=
=/0q+
-----END PGP SIGNATURE-----

--
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/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]