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]

Re: making .so files...


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Jason Pyeron wrote:
> I am working with the Asterisk application, it uses "modules" these are
> .so files which are linked against the main executable.
> 
> Asterisk will load a module, which may or may not make use of code
> exported by the main executable.

If I understand you correctly, then it's not so difficult; I've done it
myself with bmp, gedit, gthumb, liferea, and xmms.

I don't know Asterisk, but it doesn't appear to use autotools; this
makes things more difficult, especially if you want to make a portable
patch.

First, make sure that the asterisk executable is built *first*; you may
need to precede '.' to the SUBDIRS variable (i.e. SUBDIRS = . subdir1
subdir2 etc.)

Add the following to the asterisk executable's LDFLAGS:
'-Wl,--export-all-symbols,--out-implib,libasterisk.dll.a'

Then, add the following to all the modules LDFLAGS, specifying the
correct location: '-Wl,/path/to/libasterisk.dll.a'.

Of course, make sure that all requisite link libraries are specified in
LIBS for both the executable and the modules.

You'll still need to find some way of making all this dependent on
Cygwin in the Makefiles in order to make this portable.


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

iD8DBQFDWBmQpiWmPGlmQSMRAmL3AKDsK1MMNFSvPA4GLcvC5NJ0ZqOpAACg+uWe
lS4WeqeOxgs5yMCDG/r1Dms=
=ievK
-----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]