From mboxrd@z Thu Jan 1 00:00:00 1970 MIME-Version: 1.0 In-Reply-To: <20130325111628.GA5305@polynum.com> References: <20130323100519.GA3980@polynum.com> <2087087D-B83B-43EE-8CA9-D3B578C91938@gmail.com> <3016266.MVcRYAfMTf@coil> <20130325111628.GA5305@polynum.com> Date: Mon, 25 Mar 2013 11:55:19 +0000 Message-ID: From: Charles Forsyth To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net> Content-Type: multipart/alternative; boundary=f46d0444e97fa5009b04d8be7ad2 Subject: Re: [9fans] mk and transitive dependencies (was: gcc not an option for Plan9) Topicbox-Message-UUID: 348246cc-ead8-11e9-9d60-3106f5b1d025 --f46d0444e97fa5009b04d8be7ad2 Content-Type: text/plain; charset=UTF-8 On 25 March 2013 11:16, wrote: > since the > linking with libraries is order dependent. And one will need to > explicitely state that some lib depends on some others for the > linking (except if the symbols in the library are scanned to detect > unsatisfied dependencies and a search is done in standard directories > to find a library satisfying the dependency etc.). > the loaders do that using pragma lib: The order of search to resolve undefined symbols is to load all files and libraries mentioned explicitly on the command line, and then to resolve remaining symbols by searching in topological order libraries mentioned in header files included by files already loaded ... --f46d0444e97fa5009b04d8be7ad2 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable

= On 25 March 2013 11:16, <tlaronde@polynum.com> wrote:
since the
linking with libraries is order dependent. And one will need to
explicitely state that some lib depends on some others for the
linking (except if the symbols in the library are scanned to detect
unsatisfied dependencies and a search is done in standard directories
to find a library satisfying the dependency etc.).

the loaders do that using pragma lib:
= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 The order of search to resolve undefined= symbols is to load
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 all files and= libraries mentioned explicitly on the command
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 line, and then to resolve remaining = symbols by searching in
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 topological order libraries mentioned in= header files
=C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 included by files already loaded ...

--f46d0444e97fa5009b04d8be7ad2--