From help-request at octave dot org Sun Apr 9 09:12:06 2006 Subject: Re: compiling x86_64 with acml From: Jonathan Schreiter To: Quentin Spencer Cc: help at octave dot org Date: Sun, 9 Apr 2006 07:09:28 -0700 (PDT) Hi Quentin, Thanks for the reply. I think octave's configure is picking up the acml for blas OK as indicated in the following output: Octave is now configured for x86_64-unknown-linux-gnu Source directory: . Installation prefix: /usr/local C compiler: gcc -Wall -W -Wshadow -g -O2 C++ compiler: g++ -Wall -W -Wshadow -g -O2 Fortran compiler: g77 -O Fortran libraries: -L/usr/lib64 -L/opt/acml3.1.0/gnu64/lib -L/usr/lib/gcc-lib/x86_64-redhat-linux/3.2.3 -L/usr/lib/gcc-lib/x86_64-redhat-linux/3.2.3/../../../../lib64 -L/usr/lib/gcc-lib/x86_64-redhat-linux/3.2.3/../../.. -L/lib/../lib64 -L/usr/lib/../lib64 -lfrtbegin -lg2c -lm -lgcc_s BLAS libraries: -lacml FFTW libraries: HDF5 libraries: MPI libraries: LIBS: -lreadline -lncurses -lm Default pager: less gnuplot: gnuplot Do internal array bounds checking: false Build static libraries: true Build shared libraries: false Dynamic Linking: false Include support for GNU readline: true I think the error has something to do with the gcc install / configuration relative to enabling fortran compiler support. The example program on the wiki will not compile on my system: #include #include using namespace std; int main (void) { basic_string a = "thing one"; string b = "thing two"; cout << a.c_str() << endl; return (a == b); } and returns lots of undefined references (the same as the output of the octave compile - only in smaller quantities). I'll try working with the installs of the various rpms available for gcc and fortan support. If I come up with a procedure, I'll reply to the mailing list. In the meantime, if someone already has this documented, please let me know. Many thanks, Jonathan --- Quentin Spencer wrote: > Jonathan Schreiter wrote: > > >Hi all, > >I have an AMD64 with Fedora Core 5 and ACML 3.1.0. > >I'm trying to build octave from source to use the > >--enable-64 and --with-blas=acml. I am having a > >problem with gcc that is noted in the wiki here > under > >troubleshooting 2 > > > > > >Anybody know a good process on how to overcome > this? > >I see thousands of warning / errors similar to the > >type described when I try to do a make. > ./configure > >works fine. > > > >Any help would be greatly appreciated. > > > > > > Unfortunately, I don't have 64-bit hardware so i > can't test this, but if > the ACML blas library is called libblas.so and is > binary compatible with > the reference blas, you should be able to just > replace the system blas > with the new one and octave would pick it up. The > x86_64 version of > octave in Fedora Extras is already compiled with > --enable-64. Right now > the blas and atlas packages provide blas libraries > that are > interchangeable. If only blas is installed, > (/usr/lib64/libblas.so.3), > octave will link to that at run time, but if atlas > is installed > (/usr/lib64/atlas/libblas.so.3) octave will link to > that instead, even > if the reference blas library is installed. You may > be able to do > something similar with ACML, (put it in > /usr/lib64/acml/libblas.so.??, > and put something in /etc/ld.so.conf.d/ like the > octave-x86_64.conf or > atlas.conf files) but I really don't know anything > about whether it is > actually binary compatible, and unfortunately I > can't help with the > compile problems. > > -Quentin > ------------------------------------------------------------- Octave is freely available under the terms of the GNU GPL. Octave's home on the web: http://www.octave.org How to fund new projects: http://www.octave.org/funding.html Subscription information: http://www.octave.org/archive.html -------------------------------------------------------------