Hi...
Not knowing much about the GSL library, I did a little poking around. I have come to realize that the GSL lib has been around since 1996 and is written in C. It appears that there are a number of pre-compiled binary available already for various systems. So the question is.... why does your perl-GSL download include the GSL source code which requires compile? In other words ... can a user download the precompiled GSL lib for there particular system and then simply use the *.pm files in the perl-GSL which you supply?
Regards...
_______________________________________
Michael Roberge
embedded DRAM Design
1000 River Rd, Essex Jct VT 05452, Bldg 861-1 B5
Internal email: Michael Roberge/Burlington/IBM
External email: mrob...@us.ibm.com
(802)769-6272 T/L 446-6272
You could now run 'perl Build test', but you'd probably get errors because
of the 2 missing modules. So ... first install Test::Exception and
Test::Class, then run 'perl Build test', followed by 'perl Build install'.
Cheers,
Rob
>
> Jonathan....
> Do you have any suggestions? Per the last append I still can not get ./
> Build to compile.
I've got a bit lost here ... what is the output you now get when you run
./Build ?
>>
>> Also note that after a "./Build clean" it wanted me to run 'perl
>> Build.PL --prefix=' again before it would allow "./Build" or "./Build
>> install"
Yes - that's normal. After a "./Build clean" you have to start again from
the beginning with a "perl Build.PL" (or a "./Build.PL", if that works for
you).
Cheers,
Rob
>
> Here is the error from ./Build, even after I did 'export CFLAGS=-
> fPIC'. I also tried
> 'extra_linker_flags => '-shared -fPIC ' . $ldflags,' in Build.PL. In
> other words the -fPIC flags did not make the suspected AMD error go
> away.
>
> # Here is error from ./Build.....
> gcc -o blib/arch/auto/Math/GSL/BLAS/BLAS.so BLAS_wrap.o -shared -L/
> afs/
> btv/data/a20/usrlocal/lib -lgsl -lgslcblas -lm -gsl
> /usr/bin/ld: BLAS_wrap.o: relocation R_X86_64_32S against `a local
> symbol' can not be used when making a shared object; recompile with -
> fPIC
It looks like the '-fPIC' flag has not been applied (despite your attempt to
apply it).
The "-shared" bit is there, so there's no need to worry about it ... it's
probably just a question of how to get that "-fPIC" applied using
Module::Build - and I don't know the answer.
If, having got to that stage, you then enter:
gcc -o blib/arch/auto/Math/GSL/BLAS/BLAS.so
BLAS_wrap.o -shared -fPIC -L/afs/btv/data/a20/usrlocal/lib -lgsl -lgslcblas
-lm -gsl
(that's all one line), does BLAS_wrap.o then get built ok ? (That would at
least confirm that probably the only problem to work out is how to get that
damned -fPIC switch applied :-)
Cheers,
Rob
> Please do not post this file to the google forum since it?contains some
> machine specific paths.
Jonathan didn't post it to the google forum ... but *you* did :-)
Anyway - the ./Build output looks fine. (Congratulations - you've just built
Math::GSL !!)
So it's just a matter of working out what's going wrong at the test stage.
What's the actual error you're getting ?
What does the following output for you:
perl -MTest::Builder::Module -le 'print $Test::Builder::Module::VERSION'
and also, the following:
perl -MTest::Simple -le "print $Test::Simple::VERSION"
Cheers,
Rob
Oops ... that should be:
perl -MTest::Simple -le 'print $Test::Simple::VERSION'
(Single quotes instead of double quotes.)
Cheers,
Rob
If it's telling you that Test/Simple.pm can't be found in @INC, and yet
Test/Simple.pm *is* already located in one of the @INC directories, then
that means there's a problem with the Test/Simple.pm permissions - or a
problem with the relevant directory permissions. (Afaik there's no other
explanation.)
There are, however, some subtle variations in the "can't be found" errors,
all of which mean slightly different things - so make sure you take note of
exactly what it is that can't be found .... and that it's saying it can't be
found (not that it can't be loaded).
Since Test::Simple is needed to run the test suite for just about every
module, you should be getting the same error for other modules whenever you
run 'make test' or './Build test'.
Cheers,
Rob