Date: Wed, 7 Mar 2012 23:09:23 +0100 From: Roland Smith <rsmith@xs4all.nl> To: Doug Hardie <bc979@lafn.org> Cc: "questions@FreeBSD.org" <questions@freebsd.org> Subject: Re: Dynamic Libraries Message-ID: <20120307220923.GB72419@slackbox.erewhon.net> In-Reply-To: <E64D58F0-0EDD-46A1-B022-2CC8BB64BC29@lafn.org> References: <E64D58F0-0EDD-46A1-B022-2CC8BB64BC29@lafn.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--+g7M9IMkV8truYOl Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, Mar 07, 2012 at 12:53:13AM -0800, Doug Hardie wrote: > All this works just fine on i386. However, when I compile everything on > AMD64 I get an error message that says the lower level library needs to be > compiled with fPIC. If I add that to the Makefile for the lower level > library and rebuild everything, it all works again. I don't understand w= hy > the fPIC is required for AMD64. It is a requirement of the architecture. It is explained e.g. in:=20 http://www.technovelty.org/code/c/amd64-pic.html =20 > Also, how do I tell if the lower level library is being dynamically linked > at run time, or being directly incorporated into the mid level library or > top level application?=20 Examine the application with 'ldd -a <binary>'. That will give you a list of all dynamic objects used by an application, and for each of those dynamic objects the dynamic objects that they depend on. See ldd(1). If your low-level libraries don't show up in that, they are not dynamically loaded. Roland --=20 R.F.Smith http://www.xs4all.nl/~rsmith/ [plain text _non-HTML_ PGP/GnuPG encrypted/signed email much appreciated] pgp: 1A2B 477F 9970 BA3C 2914 B7CE 1277 EFB0 C321 A725 (KeyID: C321A725) --+g7M9IMkV8truYOl Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.18 (FreeBSD) iEYEARECAAYFAk9X3JMACgkQEnfvsMMhpyUKYACglkPqvBeSOFGVmLue0hdfEJih yjkAoKcaMeKn/7zGjC1ipt0K/fkShcbb =fxd+ -----END PGP SIGNATURE----- --+g7M9IMkV8truYOl--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20120307220923.GB72419>