[Beowulf] Compiling HPL
Kevin Ball
kball at pathscale.com
Mon Apr 4 09:56:51 PDT 2005
Hi Jack,
It looks like you might have a typo in your includes:
/usr/local/lam-7.1.1/share/include should be
-I/usr/local/lam-7.1.1/share/include.
Without that, gcc thinks /usr/local/lam-7.1.1/share/include is a source
file, and as it stated you cannot use -o with -c and multiple source
files.
For future reference, the way that hpl runs its make system is as
follows:
1) You make a Make.arch file that specifies details for your
architecture/setup/etc. This is your Make.Linux_PII_CBLAS. This file
goes in the top level.
2) When you run 'make arch=Linux_PII_CBLAS', they create a subdirectory
for Linux_PII_CBLAS in every src directory.
3) In that directory, they create a symbolic link Make.inc to your
Make.Linux_PII_CBLAS
4) Into that directory they copy the appropriate make file from
hpl/makes (e.g. hpl/makes/make.auxil). Each of these make files has an
'include Make.inc' in it.
5) They run make from these directories.
Thus they are actually running make from a subdirectory of each of the
src dirs. This is why the include paths are so often referencing many
directories above, and why you were seeing references to
./src/auxil/Linux_PII_CBLAS/Makefile
Don't worry about having screwed things up by copying over that file;
its recopied each time anyway. Just be careful not to get rid of the
files in hpl/makes.
Hope this helps!
-Kevin
On Mon, 2005-04-04 at 06:46, jack at crepinc.com wrote:
> Hello again,
>
> I did what you said and went through the Makefile and fixed the paths.
> (I don't know why I didn't think to do that). Then, I got another error
> message of the same sort, basically saying the /home/jack/hpl....blah
> was messed up. I took that to mean that the paths were still wrong. It
> referenced ./src/auxil/Linux_PII_CBLAS/Makefile, so I copyed my normal
> makefile (/usr/local/hpl/Make.Linux_PII_CBLAS) to that file. Then, when
> I tryed to recompile, I get this:
>
> make[2]: Entering directory `/usr/local/hpl/src/auxil/Linux_PII_CBLAS'
> /usr/bin/gcc -o HPL_dlacpy.o -c -DHPL_CALL_CBLAS
> -I/usr/local/hpl/include -I/usr/local/hpl/include/Linux_PII_CBLAS
> /usr/local/lam-7.1.1/share/include -fomit-frame-pointer -O3
> -funroll-loops ../HPL_dlacpy.c
> gcc: cannot specify -o with -c or -S and multiple compilations
>
> Have I royally screwed everything up?
>
> Thanks a lot,
>
> -Jack Carrozzo
> http://www.crepinc.com/
More information about the Beowulf
mailing list