Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

openblas centos problem of installation and use #1070

Closed
xuyan-piestat opened this issue Jan 20, 2017 · 16 comments
Closed

openblas centos problem of installation and use #1070

xuyan-piestat opened this issue Jan 20, 2017 · 16 comments

Comments

@xuyan-piestat
Copy link

my os is centos 6.6 ,when i make for openblas .at last error is :
linktest.c:(.text+0x3218): undefined reference to zlatme_' linktest.c:(.text+0x321f): undefined reference to zlatmr_'
linktest.c:(.text+0x3226): undefined reference to zlatms_' linktest.c:(.text+0x322d): undefined reference to zlatmt_'
collect2: ld returned 1 exit status
make[1]: *** [../libopenblas_haswellp-r0.2.19.so] Error 1
make[1]: Leaving directory `/home/OpenBLAS-0.2.19/exports'

why?

then i can make install to /opt/openblas
when i use R language to test openblas,
update-alternatives --config libblas.so.3,no any output,
i have installed blas and openblas
blas is in /usr/lib64
openblas is in /opt/openblas

go to r shell
x <- matrix(1:(3000 * 3000), 3000, 3000)

system.time(tmp <- x %% x)
user system elapsed
38.817 0.061 38.866
i force to subtitude libblas.so.3 to openblas version
unlink /usr/lib64/libblas.so.3
ln -s ln -s /opt/OpenBLAS/lib/libopenblas.so /usr/lib64/libblas.so.3
unlink /usr/lib64/liblapack.so.3
ln -s /opt/OpenBLAS/lib/libopenblas.so /usr/lib64/openblas/liblapack.so.3
system.time(tmp <- x %
% x)
user system elapsed
35.217 0.049 35.255
echo $LD_LIBRARY_PATH , result is
/home/data2/daqi/pcre-8.39/lib:/home/data2/daqi/xz-5.2.2/lib:/home/data2/daqi/hdf5-1.8.8/lib:/usr/local/lib64/R/lib:/usr/local/lib:/usr/lib:/usr/lib64:

both almost have no difference . I donot know why.
anyone tell me which step is wrong in my process.

@brada4
Copy link
Contributor

brada4 commented Jan 20, 2017

Build error:
seek OpenBLAS FAQ which tells how to acquire recent binutils on CentOS 6
Then make clean before next build, and make sure to attach full build log, as the missing files are consequence of earlier errors.

R configuration:
Fedora has no alternatives mechanism for libblas.so as Debian.
You need to put symlink replacing libRblas.so (or install R from fedora EPEL to do that for you)
I dont think symlink juggling to emulate Ubuntu alternatives configuration has any effect whatsoever on CentOS or Fedora

@xuyan-piestat
Copy link
Author

xuyan-piestat commented Jan 20, 2017 via email

@xuyan-piestat
Copy link
Author

xuyan-piestat commented Jan 20, 2017 via email

@brada4
Copy link
Contributor

brada4 commented Jan 20, 2017

Can we get through with successful OpenBLAS build including attaching build log?
I am afraid I can help with drop-in replacement of OpenBLAS on top of vendor RPMs. Your 1km long PATH means it is unfixable.

@xuyan-piestat
Copy link
Author

xuyan-piestat commented Jan 20, 2017 via email

@martin-frbg
Copy link
Collaborator

Try http://sourceforge.net/projects/slurm-roll/files/addons/6.2.0/rpms/binutils/pb-binutils225-2.25-1.x86_64.rpm (and remember to update your path so tha/opt/pb/binutils-2.25/bin
gets tried first). If compilation still does not work, please upload the log here.

@brada4
Copy link
Contributor

brada4 commented Jan 20, 2017

@xuyan-piestat
Copy link
Author

xuyan-piestat commented Jan 22, 2017 via email

@xuyan-piestat
Copy link
Author

xuyan-piestat commented Jan 22, 2017 via email

@martin-frbg
Copy link
Collaborator

These are the LAPACK function which are written in FORTRAN, maybe you did not install gcc-gfortran ?

@brada4
Copy link
Contributor

brada4 commented Jan 22, 2017

No need to speak Chinese.
OpenBLAS builds perfectly with gcc and gfortran included in
RHEL5 AVX2 via binutils=devtoolset 2.1, min kernel 5U10
6 AVX2 via devtoolst 3+, min kernel 6U3
7 = all supported without any change

Please just choose:
Recipe A

# yum install make gcc gcc-gfortran
$ make NO_AVX2=1

Recipe B

# yum install epel-release
# yum install openblas-devel

Recipe C
is outlined in FAQ

You add too much variables with homebrew build of GCC, it will not be possible to fix any issues.
Please install official software so that we have chance to run into any problems you encounter.

@martin-frbg
Copy link
Collaborator

I expect there are enough people here who read Chinese - certainly xianyi at least, and us illiterate westerners can at least try google translate.
Perhaps it would be a good idea to have the FAQ and Installation Guide in the wiki in Chinese (and eventually Arabic) as well ?

@brada4
Copy link
Contributor

brada4 commented Jan 22, 2017

Or adhere to simplified english idea in current faq at least...

@xuyan-piestat
Copy link
Author

xuyan-piestat commented Jan 23, 2017 via email

@brada4
Copy link
Contributor

brada4 commented Jan 23, 2017

Can you first decide if you want atlas or you want openblas.

@martin-frbg
Copy link
Collaborator

yum install blas blas-devel lapack lapack-devel atlas atlas-devel --nogpgcheck
Not sure why you did this, this installs alternatives to OpenBLAS.
If you want only the BLAS part from OpenBLAS, you can build it with "make clean; make NO_LAPACK=1"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants