Subject: Re: [Boost-bugs] [Boost C++ Libraries] #1927: MacOS (Darwin) should use the -headerpad_max_install_name option
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2008-06-03 17:30:12
#1927: MacOS (Darwin) should use the -headerpad_max_install_name option
-----------------------------------+----------------------------------------
Reporter: andrew_at_[hidden] | Owner:
Type: Bugs | Status: new
Milestone: Boost 1.35.1 | Component: Building Boost
Version: Boost 1.35.0 | Severity: Problem
Resolution: | Keywords: darwin macos library dylib
-----------------------------------+----------------------------------------
Comment (by andrew_at_[hidden]):
The short, but inaccurate answer, is "yes".
Dynamic library paths and linking on Apple is '''not''' as simple topic.
Libraries (inside frameworks) are usually in fixed locations. There is
(under 10.4) a "magic" file name so libraries can be located with respect
to the executable file bundle.
Apple has
[http://developer.apple.com/documentation/DeveloperTools/Conceptual/MachOTopics/Articles/loading_code.html
extensive documentation] on how dyld files are searched for.
A brief (and informative) summary is
[http://qin.laya.com/tech_coding_help/dylib_linking.html here].
Leopard (10.5) introduced RPATH semantics
[http://www.codeshorts.ca/2007/nov/01/leopard-linking-making-relocatable-
libraries-movin see here].
But basically... using the "-headerpad_max_install_names" linker option
allows the boost user to compile boost '''once''' and then package up the
libraries as "application-specific framework bundles" in a final
application. Without the headerpad option, boost must be custom-compiled
to its final installation directory for every project that uses it.
--
Ticket URL: <http://svn.boost.org/trac/boost/ticket/1927#comment:4>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:49:58 UTC