[Rd] R CMD SHLIB

Prof Brian Ripley ripley at stats.ox.ac.uk
Wed May 17 08:54:41 CEST 2006


On Wed, 17 May 2006, Martin Maechler wrote:

>>>>>> "TL" == Thomas Lumley <tlumley at u.washington.edu>
>>>>>>     on Tue, 16 May 2006 10:15:11 -0700 (PDT) writes:
>
>    TL> On Tue, 16 May 2006, Prof Brian Ripley wrote:
>    >> It is possible to do things like
>    >>
>    >> env PKG_LIB="-L/opt/foo/lib -lbar" R CMD SHLIB *.c
>    >>
>    >> to add libraries to the creation of a shared object, but
>    >> I have from time to time wondered if we should allow
>    >>
>    >> R CMD SHLIB *.c -L/opt/foo/lib -lbar
>    >>
>    >> not least as users seems to expect it to work.  It looks
>    >> simple to do (at least under Unix) if we pass -L* -l* *.a
>    >> directly to the link command.
>    >>
>    >> Would this be worthwhile?
>
>    TL> Yes.
>
>    TL> My only reservation is that users may then expect all
>    TL> compiler/linker flags to work, not just -L/-l
>
> I had exactly the same thought.
>
> Maybe Brian's proposal can be extended into
>
>  "all switches that are not recognized by 'R CMD SHLIB' are
>   passed to compiler / linker  ...."
>
> hmm, or maybe not, since the question quickly become *which* are
> passed to compiler and which to linker (and which to both ?) ...

On looking at the code, currently all items on the command line not
recognized as flags, source files or object files are ignored, so we can 
just pass those to the linker.

It's a little more complicated under Windows since Perl is used and
-L* looks like an unknown option and so need to be preceded by --.

Will commit these changes to R-devel shortly.

-- 
Brian D. Ripley,                  ripley at stats.ox.ac.uk
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595



More information about the R-devel mailing list