[R-SIG-Mac] value of FLIBS and installation of packages from source

Simon Urbanek simon.urbanek at r-project.org
Tue Nov 3 03:35:24 CET 2015


On Nov 2, 2015, at 6:31 PM, Chris Paciorek <paciorek at stat.berkeley.edu> wrote:

> I may have been unclear in my original message -- I had gfortran 4.2.3
> installed previously and was having the problem with that older
> version installed.  With 4.2.3, if I _manually_ set FLIBS in
> etc/Makeconf to point to /usr/local/gfortran/lib, then the problem
> went away.
> 

... but that is *not* what the CRAN Fortran uses - so I guess you had different Fortran installed - which is why it didn't work. I suspect that if you had actually [re?]installed the Fortran from Tools it would work, but you [or some script] have possibly removed the libraries from /usr/local/lib or had a different Fortran which is why you got the error.

Cheers,
Simon


> Once I installed 4.8.2, things were fine without having to change
> FLIBS in etc/Makeconf.
> 
> chris
> 
> On Mon, Nov 2, 2015 at 3:03 PM, Simon Urbanek
> <simon.urbanek at r-project.org> wrote:
>> 
>>> On Nov 2, 2015, at 4:50 PM, Chris Paciorek <paciorek at stat.berkeley.edu> wrote:
>>> 
>>> Thanks, that worked. But is it a concern that users can't easily
>>> install a package on OS X from source? Perhaps not since there should
>>> be Mac binaries for packages on CRAN?
>>> 
>>> In particular, on CRAN (https://cran.r-project.org/bin/macosx/tools/)
>>> I was seeing gfortran 4.2.3 and overlooked the note about more recent
>>> Fortran binaries.  But even in clicking on that link to get to
>>> http://r.research.att.com/tools/, I don't see the 4.8.2 version.
>>> Should any of these items be updated?  It's not clear to me how one
>>> would find 4.8.2 if one didn't know where to look.
>>> 
>> 
>> Either should work - at least last time I checked it did. If I understand your report you didn't have *any* Fortran libraries installed, but you need Fortran to compile Fortran packages -- on CRAN it says
>> "GNU Fortran isNOT included (needed if you want to compile packages from sources that contain FORTRAN code) please see the tools directory."
>> 
>> That said, I guess it would be reasonable to provide a pkg for the Mavericks Fortran and add it to the tools as well.
>> 
>> Cheers,
>> Simon
>> 
>> 
>>> 
>>> On Mon, Nov 2, 2015 at 1:31 PM, Simon Urbanek
>>> <simon.urbanek at r-project.org> wrote:
>>>> Chris,
>>>> 
>>>> it seems that you didn't install the necessary Fortran compiler from
>>>> http://r.research.att.com/libs/gfortran-4.8.2-darwin13.tar.bz2
>>>> 
>>>> Cheers,
>>>> Simon
>>>> 
>>>> 
>>>>> On Nov 2, 2015, at 2:03 PM, Chris Paciorek <paciorek at stat.berkeley.edu> wrote:
>>>>> 
>>>>> I'm having trouble installing a number of R packages from source on
>>>>> Mac OS X (Yosemite) when the packages reference FLIBS in their
>>>>> src/Makevars.
>>>>> 
>>>>> I have what I think is a fairly standard R install on Yosemite -
>>>>> installed from R-3.2.2.pkg.
>>>>> 
>>>>> Here's where an example install fails (in this case the 'actuar' package):
>>>>> clang -dynamiclib -Wl,-headerpad_max_install_names -undefined
>>>>> dynamic_lookup -single_module -multiply_defined suppress
>>>>> -L/Library/Frameworks/R.framework/Resources/lib -L/usr/local/lib -o
>>>>> actuar.so beta.o burr.o chisq.o dpq.o dpqphtype.o exp.o gamma.o
>>>>> genbeta.o genpareto.o hierarc.o init.o invburr.o invexp.o invgamma.o
>>>>> invgauss.o invparalogis.o invpareto.o invtrgamma.o invweibull.o
>>>>> lgamma.o llogis.o lnorm.o names.o normal.o panjer.o paralogis.o
>>>>> pareto.o pareto1.o phtype.o random.o randomphtype.o trbeta.o trgamma.o
>>>>> unif.o util.o weibull.o
>>>>> -L/Library/Frameworks/R.framework/Resources/lib -lRlapack
>>>>> -L/Library/Frameworks/R.framework/Resources/lib -lRblas
>>>>> -L/usr/local/lib/gcc/x86_64-apple-darwin13.0.0/4.8.2 -lgfortran
>>>>> -lquadmath -lm -F/Library/Frameworks/R.framework/.. -framework R
>>>>> -Wl,-framework -Wl,CoreFoundation
>>>>> ld: warning: directory not found for option
>>>>> '-L/usr/local/lib/gcc/x86_64-apple-darwin13.0.0/4.8.2'
>>>>> ld: library not found for -lgfortran
>>>>> clang: error: linker command failed with exit code 1 (use -v to see invocation)
>>>>> 
>>>>> Some likely relevant facts:
>>>>> 
>>>>> 1)
>>>>> /Library/Frameworks/R.framework/Resources/etc/Makeconf has
>>>>> FLIBS = -L/usr/local/lib/gcc/x86_64-apple-darwin13.0.0/4.8.2
>>>>> -lgfortran -lquadmath -lm
>>>>> but /usr/local/lib/gcc does not exist on my machine.
>>>>> 
>>>>> 2) libquadmath.0.dylib and libgfortran.3.dylib exist in
>>>>> /Library/Framework/R.framework/Resources/lib
>>>>> The following kludge allows the 'actuar' package to be installed from source:
>>>>> cd /Library/Framework/R.framework/Resources/lib
>>>>> ln -s libgfortran.3.dylib libgfortran.dylib
>>>>> ln -s libquadmath.0.dylib libquadmath.dylib
>>>>> 
>>>>> albeit of course still with the warning about the nonexistent
>>>>> /usr/local/lib/gcc/x86_64-apple-darwin13.0.0/4.8.2
>>>>> 
>>>>> 3) Alternatively I can install the gfortran Mac package provided by
>>>>> CRAN and manually set FLIBS in Makeconf to point to
>>>>> /usr/local/gfortran/lib
>>>>> 
>>>>> So, any ideas why R is being installed such that FLIBS points to a
>>>>> non-existent directory? And for packages that don't need the fortran
>>>>> compiler, but merely libgfortran, is there a way to install packages
>>>>> that have FLIBS in their Makevars without installing the gfortran
>>>>> package and monkeying with FLIBS in Makeconf?
>>>>> 
>>>>> I'll note that this is occurring on a few machines I have access to,
>>>>> including a new Macbook Air purchased in June 2015, with R and Xcode
>>>>> installed thereafter. So it doesn't seem that it is a result of having
>>>>> versions of OS X and command line tools from before Yosemite.
>>>>> 
>>>>> I have command line tools installed:
>>>>> 
>>>>> paciorek:/tmp> gcc --version
>>>>> Configured with:
>>>>> --prefix=/Applications/Xcode.app/Contents/Developer/usr
>>>>> --with-gxx-include-dir=/usr/include/c++/4.2.1
>>>>> Apple LLVM version 6.1.0 (clang-602.0.49) (based on LLVM 3.6.0svn)
>>>>> Target: x86_64-apple-darwin14.3.0
>>>>> Thread model: posix
>>>>> 
>>>>> 
>>>>> Here's sessionInfo():
>>>>> 
>>>>>> sessionInfo()
>>>>> R version 3.2.2 (2015-08-14)
>>>>> Platform: x86_64-apple-darwin13.4.0 (64-bit)
>>>>> Running under: OS X 10.10.3 (Yosemite)
>>>>> 
>>>>> locale:
>>>>> [1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
>>>>> 
>>>>> attached base packages:
>>>>> [1] stats     graphics  grDevices utils     datasets  methods   base
>>>>> 
>>>>> 
>>>>> thanks,
>>>>> Chris
>>>>> 
>>>>> ----------------------------------------------------------------------------------------------
>>>>> Chris Paciorek
>>>>> 
>>>>> Associate Research Statistician, Lecturer, Statistical Computing Consultant
>>>>> 
>>>>> Office: 495 Evans Hall                      Email: paciorek at stat.berkeley.edu
>>>>> Mailing Address:                            Voice: 510-842-6670
>>>>> Department of Statistics                    Fax:   510-642-7892
>>>>> 367 Evans Hall                              Skype: cjpaciorek
>>>>> University of California, Berkeley          WWW:
>>>>> www.stat.berkeley.edu/~paciorek
>>>>> Berkeley, CA 94720 USA                      Permanent forward:
>>>>> paciorek at alumni.cmu.edu
>>>>> 
>>>>> _______________________________________________
>>>>> R-SIG-Mac mailing list
>>>>> R-SIG-Mac at r-project.org
>>>>> https://stat.ethz.ch/mailman/listinfo/r-sig-mac
>>>>> 
>>>> 
>>> 
>> 
> 



More information about the R-SIG-Mac mailing list