On Thu, 18 Aug 2011, Skipper Seabold wrote:
On Thu, Aug 18, 2011 at 7:13 PM, Allin Cottrell
<cottrell(a)wfu.edu> wrote:
> On Thu, 18 Aug 2011, Skipper Seabold wrote:
>
>> On Thu, Aug 18, 2011 at 5:32 PM, Allin Cottrell <cottrell(a)wfu.edu> wrote:
>>> On Thu, 18 Aug 2011, Skipper Seabold wrote:
>>>
>>>> Trying to install gretl 1.9.5 from source due to the known seg faults
>>>> in the downstream ubuntu 11.04 repositories. I have all the
>>>> dependencies installed, except my lapack (3.2.2) was built with ATLAS
>>>> (3.9.2) with the same version of gcc I have installed. The lapack
>>>> stuff seems to be giving me troubles, though I'm not too sure why.
>>>
>>> No doubt this should be better documented, but if you want to build
>>> gretl against atlas you should use the LAPACK_LIBS environment
>>> variable. For example:
>>>
>>> LAPACK_LIBS='-L/your/atlas/lib -llapack -lf77blas -lcblas -latlas' \
>>> ./configure <options>
>>>
>>> You can't just replace -lblas with -lcblas, because more libraries
>>> are needed with an atlas build, including crucially libatlas.
>>
>> Right, I neglected to mention that I also tried to edit configure to link
>> against atlas, cblas, f77blas, etc. to the same effect about the hidden
>> symbol.
>>
>> Are you saying that all I need to do is define LAPACK_LIBS as such and then
>> run configure, or do I still need the with-lapack-prefix as well??
>
> Just use LAPACK_LIBS; the lapack-prefix thing is only for use where
> you have the standard "-llapack -lblas" linkage, but are using a
> non-standard installation directory.
That's what I thought. It doesn't look like the LAPACK_LIBS options
are being passed to the compiler, but I haven't gone through the
configure script in great detail.
>> [...] it fails to build, saying it can't find lblas
>
> "lblas"? Looks like a typo?
This is why I changed -lblas to -lcblas and tried to add the other
libraries. I have libcblas.*, libf77blas.*, etc. but when I run
configure, it just tries the -llapack -lblas options instead of the
LAPACK_LIBS.
I think that either your atlas installation is broken or you're not
passing the correct LAPACK_LIBS variable.
I just tried here on Ubuntu 10.04, using the latest stable lapack
(3.3.1) plus latest stable atlas (3.8.4), libraries installed into
/opt/atlas/lib. In configuring the gretl build I either pass
LAPACK_LIBS='-L/opt/atlas/lib -llapack_atl -lf77blas \
-lcblas -latlas' [...]
as part of the invocation of gretl's configure script, or else put
the relevant variable into the environment via
export LAPACK_LIBS='-L/opt/atlas/lib -llapack_atl \
-lf77blas -lcblas -latlas'
before invoking ./configure. Either way the gretl build works OK.
And 'grep lapack config.log' shows that what I specified for
LAPACK_LIBS is being respected.
But note: if your atlas libs are built without the correct
dependencies being indicated to the linker, you may need to add
elements to the LAPACK_LIBS variable, for example -lgfortran and
-lgcc_s -- and in that case you may need to add symlinks to your
system to define libgfortran.so and libgcc_s.so.
Building your own atlas BLAS and linking programs against the
relevant libraries is truly an expert option.
Allin Cottrell