[fpc-pascal] FPC shared libraries for Mac OS X
Jonas Maebe
jonas.maebe at elis.ugent.be
Tue Aug 19 19:25:17 CEST 2008
On 19 Aug 2008, at 12:55, Werner Bochtler wrote:
> Can anyone give me a hint how to set the 'install_name',
> 'compatibility_version' and 'current_version' in FPC shared libraries
> for Mac OS X?
In exactly the same way as for a C shared library: by passing the
appropriate flags to the linker. From "man ld":
-install_name name
Sets an internal "install path" (LC_ID_DYLIB) in a
dynamic
library. Any clients linked against the library will
record
that path as the way dyld should locate this
library. If
this option is not specified, then the -o path will
be used.
This option is also called -dylib_install_name for
compati-
bility.
-compatibility_version number
Specifies the compatibility version number of the
library.
When a library is loaded by dyld, the compatibility
version
is checked and if the program's version is greater
that the
library's version, it is an error. The format of
number is
X[.Y[.Z]] where X must be a positive non-zero number
less
than or equal to 65535, and .Y and .Z are optional
and if
present must be non-negative numbers less than or
equal to
255. If the compatibility version number is not
specified,
it has a value of 0 and no checking is done when the
library
is used. This option is also called -
dylib_compatibil-
ity_version for compatibility.
-current_version number
Specifies the current version number of the library.
The cur-
rent version of the library can be obtained
programmatically
by the user of the library so it can determine
exactly which
version of the library it is using. The format of
number is
X[.Y[.Z]] where X must be a positive non-zero number
less
than or equal to 65535, and .Y and .Z are optional
and if
present must be non-negative numbers less than or
equal to
255. If the version number is not specified, it has
a value
of 0. This option is also called -
dylib_current_version for
compatibility.
->
fpc -k"-install_name somename" -k"-compatibility_version 1.2.3" -k"-
current_version 11.12.13" mysharedlib.pp
Jonas
More information about the fpc-pascal
mailing list