[gmx-users] Compiling Gromacs 4.0.7 on AIX 5.3

Chris Neale chris.neale at utoronto.ca
Fri Apr 16 20:43:24 CEST 2010


Dear Sebastien:

Perhaps it's obvious, but can you confirm that you used the compilation 
options that I posted? My suggestion was not so much that you should try 
to compile 4.0.4 but that you should try the options that I posted. So 
if you used your original compilation commands with gromacs version 
4.0.4 then I am not surprised that it also failed to compile... please 
go back and attempt with the commands that I provided.

If, however, you did try those options (and on v4.0.4) then I am sorry 
to say that I'm no expert at compilation -- a previous colleague worked 
out that AIX compillation for me and I'm just passing along what worked 
for me.

Regarding the fftw question, I am sorry but that too I can not answer.

Chris.

-- original message --

Thank you for your answer

I tried the 4.0.4 version but unfortunately, it did better but new
errors appeared anyway

so what I test now is another version of FFTW (fftw-2.1.5.tar.gz)
and the "make" command for gromacs 4.0.7 was a success

so the question is : What will be the difference in using Gromacs if I
use FFTW2 instead of FFTW3 ?

thanks again

-------------------
here are errors shown when compiling gromacs 4.0.7 with fftw 3.2.2 on
AIX 5.3
-------------------
"
cc -qlanglvl=extc89 -DHAVE_CONFIG_H -I. -I../../src
-I/usr/include/libxml2 -I../../include
-DGMXLIBDIR=\"/usr/local/gromacs/share/top\" -I/usr/local/include -O3
-qarch=pwr5 -qtune=pwr5 -qmaxmem=16384 -c -M gmx_sdf.c -o gmx_sdf.o
"/usr/include/stdio.h", line 497.12: 1506-343 (S) Redeclaration of
fgetpos64 differs from previous declaration on line 296 of
"/usr/include/stdio.h".
"/usr/include/stdio.h", line 497.12: 1506-377 (I) The type "long long*"
of parameter 2 differs from the previous type "long*".
"/usr/include/stdio.h", line 500.12: 1506-343 (S) Redeclaration of
fseeko64 differs from previous declaration on line 440 of
"/usr/include/stdio.h".
"/usr/include/stdio.h", line 500.12: 1506-377 (I) The type "long long"
of parameter 2 differs from the previous type "long".
"/usr/include/stdio.h", line 501.12: 1506-343 (S) Redeclaration of
fsetpos64 differs from previous declaration on line 298 of
"/usr/include/stdio.h".
"/usr/include/stdio.h", line 501.12: 1506-377 (I) The type "const long
long*" of parameter 2 differs from the previous type "const long*".
"/usr/include/stdio.h", line 502.16: 1506-343 (S) Redeclaration of
ftello64 differs from previous declaration on line 441 of
"/usr/include/stdio.h".
"/usr/include/stdio.h", line 502.16: 1506-050 (I) Return type "long
long" in redeclaration is not compatible with the previous return type
"long".
"/usr/include/unistd.h", line 171.17: 1506-343 (S) Redeclaration of
lseek64 differs from previous declaration on line 169 of
"/usr/include/unistd.h".
"/usr/include/unistd.h", line 171.17: 1506-050 (I) Return type "long
long" in redeclaration is not compatible with the previous return type
"long".
"/usr/include/unistd.h", line 171.17: 1506-377 (I) The type "long long"
of parameter 2 differs from the previous type "long".
"/usr/include/sys/lockf.h", line 64.20: 1506-343 (S) Redeclaration of
lockf64 differs from previous declaration on line 62 of
"/usr/include/sys/lockf.h".
"/usr/include/sys/lockf.h", line 64.20: 1506-377 (I) The type "long
long" of parameter 3 differs from the previous type "long".
"/usr/include/unistd.h", line 800.33: 1506-343 (S) Redeclaration of
ftruncate64 differs from previous declaration on line 798 of
"/usr/include/unistd.h".
"/usr/include/unistd.h", line 800.33: 1506-377 (I) The type "long long"
of parameter 2 differs from the previous type "long".
"/usr/include/unistd.h", line 836.33: 1506-343 (S) Redeclaration of
truncate64 differs from previous declaration on line 834 of
"/usr/include/unistd.h".
"/usr/include/unistd.h", line 836.33: 1506-377 (I) The type "long long"
of parameter 2 differs from the previous type "long".
"/usr/include/unistd.h", line 853.33: 1506-343 (S) Redeclaration of
pread64 differs from previous declaration on line 850 of
"/usr/include/unistd.h".
"/usr/include/unistd.h", line 853.33: 1506-377 (I) The type "long long"
of parameter 4 differs from the previous type "long".
"/usr/include/unistd.h", line 854.33: 1506-343 (S) Redeclaration of
pwrite64 differs from previous declaration on line 851 of
"/usr/include/unistd.h".
"/usr/include/unistd.h", line 854.33: 1506-377 (I) The type "long long"
of parameter 4 differs from the previous type "long".
"/usr/include/unistd.h", line 921.25: 1506-343 (S) Redeclaration of
fclear64 differs from previous declaration on line 918 of
"/usr/include/unistd.h".
"/usr/include/unistd.h", line 921.25: 1506-050 (I) Return type "long
long" in redeclaration is not compatible with the previous return type
"long".
"/usr/include/unistd.h", line 921.25: 1506-377 (I) The type "long long"
of parameter 2 differs from the previous type "long".
"/usr/include/unistd.h", line 922.25: 1506-343 (S) Redeclaration of
fsync_range64 differs from previous declaration on line 919 of
"/usr/include/unistd.h".
"/usr/include/unistd.h", line 922.25: 1506-377 (I) The type "long long"
of parameter 3 differs from the previous type "long".
make: 1254-004 The error code from the last command is 1.


Stop.
make: 1254-004 The error code from the last command is 1.


Stop.
make: 1254-004 The error code from the last command is 2.


Stop.
make: 1254-004 The error code from the last command is 1.


Stop.



Le 15/04/2010 19:38, chris.neale at utoronto.ca 
<http://lists.gromacs.org/mailman/listinfo/gmx-users> a écrit :
 >/ This worked for me on AIX 5.3 for gromacs 4.0.4, I didn't try to
/>/ compile any gromacs versions after that because we found that gromacs
/>/ runs much better on Xeons and Opterons than it runs on power6's
/>/ running AIX 5.3
/>/
/>/ If you have a problem specific to 4.0.7 (i.e. you can compile 4.0.4
/>/ alright on AIX 5.3), then I'm sorry but I can not help you there.
/>/
/>/ Note: be sure to modify the /scratch/cneale lines to match your system.
/>/
/>/ Note: the -O5 flag makes this compilation take about 20h. You should
/>/ probably try without it first (~30 minute - 1h compilation), but it
/>/ does giev a few extra percent speed.
/>/
/>/ Chris.
/>/
/>/ ##serial compilation
/>/
/>/ export
/>/ 
PATH=/usr/lpp/ppe.hpct/bin:/usr/vacpp/bin:.:/usr/bin:/etc:/usr/sbin:/usr/ucb:/usr/bin/X11:/sbin:/usr/java14/jre/bin:/usr/java14/bin:/usr/lpp/LoadL/full/bin:/usr/local/bin 

/>/
/>/ export F77=xlf_r
/>/ export CC=xlc_r
/>/ export CXX=xlc++_r
/>/ export FFLAGS="-O5 -qarch=pwr6 -qtune=pwr6"
/>/ export CFLAGS="-O5 -qarch=pwr6 -qtune=pwr6"
/>/ export CXXFLAGS="-O5 -qarch=pwr6 -qtune=pwr6"
/>/ export FFTW_LOCATION=/scratch/cneale/exe/fftw-3.1.2_aix/exec
/>/ export GROMACS_LOCATION=/scratch/cneale/exe/gromacs-4.0.4_aix/exec
/>/ export CPPFLAGS=-I$FFTW_LOCATION/include
/>/ export LDFLAGS=-L$FFTW_LOCATION/lib
/>/ cd /scratch/cneale/exe/gromacs-4.0.4_aix
/>/ mkdir exec
/>/ ./configure --prefix=$GROMACS_LOCATION --without-motif-includes
/>/ --without-motif-libraries --without-x --without-xml >output.configure
/>/ 2>&1
/>/ make >output.make 2>&1
/>/ make install >output.make_install 2>&1
/>/ make distclean
/>/
/>/ #####################################
/>/
/>/ ##parallel compilation
/>/
/>/ export F77=xlf_r
/>/ export CC=xlc_r
/>/ export CXX=xlc++_r
/>/ export FFLAGS="-O5 -qarch=pwr6 -qtune=pwr6"
/>/ export CFLAGS="-O5 -qarch=pwr6 -qtune=pwr6"
/>/ export CXXFLAGS="-O5 -qarch=pwr6 -qtune=pwr6"
/>/ export FFTW_LOCATION=/scratch/cneale/exe/fftw-3.1.2_aix/exec
/>/ export GROMACS_LOCATION=/scratch/cneale/exe/gromacs-4.0.4_aix/exec
/>/ export CPPFLAGS=-I$FFTW_LOCATION/include
/>/ export LDFLAGS=-L$FFTW_LOCATION/lib
/>/ cd /scratch/cneale/exe/gromacs-4.0.4_aix
/>/ echo "cn-r0-10" > ~/.rhosts
/>/ echo localhost > ~/host.list
/>/ for((i=2;i<=16;i++)); do
/>/ echo localhost >> ~/host.list
/>/ done
/>/ export MP_HOSTFILE=~/host.list
/>/ ./configure --prefix=$GROMACS_LOCATION --without-motif-includes
/>/ --without-motif-libraries --without-x --without-xml --enable-mpi
/>/ --disable-nice --program-suffix="_mpi" CC=mpcc_r F77=mpxlf_r >
/>/ output.configure_mpi 2>&1
/>/ make mdrun > output.make_mpi 2>&1
/>/ make install-mdrun > output.make_install_mpi 2>&1
/>/ make distclean
/>/
/>/ /



More information about the gromacs.org_gmx-users mailing list