cURL / Mailing Lists / curl-library / Single Mail

curl-library

Question on symbols to export on shared image.

From: John E. Malmberg <wb8tyw_at_qsl.net>
Date: Tue, 02 Jun 2009 19:25:19 -0500

On VMS, for a shared library image, you have to use an explicit list of
public symbols that will be visible for compile time linking.

For upward compatibility, newer entries are always added to the end of
the list, and the existing entries can not change in order. That way
newer shared images can replace older ones with out relinking any of the
applications that use them.

In setting up a shared library image for libcurl, I noticed that the
curl program for 7.19.5 is referencing two non-public symbols:

Curl_raw_equal and Curl_raw_nequal. In order for me to have curl use
the shared library instead of a privately linked copy, I have to also
make those symbols public.

Is it intentional that the curl program not be able to use the shared image?

Or should I make those symbols public in the shared image that I will be
kitting up?

Several of the tests/libtests modules also reference non-public symbols.
  For unit tests, I can see that those would be limited to development,
so there is no need to have those symbols exposed.

Regards,
-John
wb8tyw_at_qsl.net
Personal Opinion Only
Received on 2009-06-03