public inbox for gentoo-science@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-science]  liblapack.so.3 not found
@ 2008-01-25 16:58 Alexandre Racine
  2008-01-25 20:16 ` Honza Macháček
  0 siblings, 1 reply; 5+ messages in thread
From: Alexandre Racine @ 2008-01-25 16:58 UTC (permalink / raw
  To: gentoo-science

[-- Attachment #1: Type: text/plain, Size: 2611 bytes --]

Hi all,

I am trying to install EIGENSOFT version 2.0 BETA (http://genepath.med.harvard.edu/~reich/Software.htm). The software comes with binairies, fair enough. That's the easy part.

Running one of the program "smartpca" it will say :
$ ./smartpca
./smartpca: error while loading shared libraries: liblapack.so.3: cannot open shared object file: No such file or directory

So I installed lapack-atlas (3.8) that actually install liblapack.so.0 and much more.

 emerge lapack-atlas


Looking at the folders, I can see liblapack.so.0, like so:
# ls -lh /usr/lib/liblap*
lrwxrwxrwx 1 root root 24 Jan 23 16:09 /usr/lib/liblapack.a -> lapack/atlas/liblapack.a
lrwxrwxrwx 1 root root 25 Jan 23 16:09 /usr/lib/liblapack.so -> lapack/atlas/liblapack.so
lrwxrwxrwx 1 root root 27 Jan 23 16:09 /usr/lib/liblapack.so.0 -> lapack/atlas/liblapack.so.0

Just like any good technician, I make a link.

# ls -lh /usr/lib/liblap*
lrwxrwxrwx 1 root root 24 Jan 23 16:09 /usr/lib/liblapack.a -> lapack/atlas/liblapack.a
lrwxrwxrwx 1 root root 25 Jan 23 16:09 /usr/lib/liblapack.so -> lapack/atlas/liblapack.so
lrwxrwxrwx 1 root root 27 Jan 23 16:09 /usr/lib/liblapack.so.0 -> lapack/atlas/liblapack.so.0

# ls -lh /usr/lib/lapack/atlas/liblapack.*
-rw-r--r-- 1 root root 5.8M Jan 23 16:09 /usr/lib/lapack/atlas/liblapack.a
-rw-r--r-- 1 root root  910 Jan 23 16:09 /usr/lib/lapack/atlas/liblapack.la
lrwxrwxrwx 1 root root   18 Jan 23 16:09 /usr/lib/lapack/atlas/liblapack.so -> liblapack.so.0.0.0
lrwxrwxrwx 1 root root   18 Jan 23 16:09 /usr/lib/lapack/atlas/liblapack.so.0 -> liblapack.so.0.0.0
-rwxr-xr-x 1 root root 4.2M Jan 23 16:09 /usr/lib/lapack/atlas/liblapack.so.0.0.0

# ln -s /usr/lib/lapack/atlas/liblapack.so.0.0.0 /usr/lib/liblapack.so.3

I just look at the files if everything is there.

# ls -lh /usr/lib/liblap*
lrwxrwxrwx 1 root root 24 Jan 23 16:09 /usr/lib/liblapack.a -> lapack/atlas/liblapack.a
lrwxrwxrwx 1 root root 25 Jan 23 16:09 /usr/lib/liblapack.so -> lapack/atlas/liblapack.so
lrwxrwxrwx 1 root root 27 Jan 23 16:09 /usr/lib/liblapack.so.0 -> lapack/atlas/liblapack.so.0
lrwxrwxrwx 1 root root 36 Jan 25 10:10 /usr/lib/liblapack.so.3 -> /usr/lib/lapack/atlas/liblapack.so.0.0.0

Starting the program again, I get this:

$ ./smartpca
./smartpca: error while loading shared libraries: liblapack.so.3: cannot open shared object file: No such file or directory

Why is it saying that the file is not there even if it is? Is there something wrong in my methodology?

Thanks.

Alexandre Racine
514-461-1300 poste 3304
alexandre.racine@mhicc.org


[-- Attachment #2: Type: text/html, Size: 3345 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [gentoo-science]  liblapack.so.3 not found
  2008-01-25 16:58 [gentoo-science] liblapack.so.3 not found Alexandre Racine
@ 2008-01-25 20:16 ` Honza Macháček
  2008-01-25 21:01   ` Alexandre Racine
  0 siblings, 1 reply; 5+ messages in thread
From: Honza Macháček @ 2008-01-25 20:16 UTC (permalink / raw
  To: gentoo-science

[-- Attachment #1: Type: text/plain, Size: 1620 bytes --]

Alexandre Racine wrote:

 > ...
> lrwxrwxrwx 1 root root 36 Jan 25 10:10 /usr/lib/liblapack.so.3 -> 
> /usr/lib/lapack/atlas/liblapack.so.0.0.0
> 
> Starting the program again, I get this:
> 
> $ ./smartpca
> ./smartpca: error while loading shared libraries: liblapack.so.3: cannot 
> open shared object file: No such file or directory

   Are you sure it does exactly that?
   I cannot reproduce it. Whether I link /usr/lib/liblapack.so.3 to 
/usr/lib/liblapack.so.0 or directly to 
/usr/lib/lapack/atlas/liblapack.so.0.0.0 as you did, I get libblas.so.3, 
not liblapack.so.3 not found. After linking /usr/lib/libblas.so.3 to 
/usr/lib/libblas.so.0 I start smartpca without problem:

 > ./smartpca
./smartpca: error while loading shared libraries: liblapack.so.3: cannot 
open shared object file: No such file or directory
 > sudo ln -s /usr/lib/liblapack.so.0 /usr/lib/liblapack.so.3
 > ./smartpca
./smartpca: error while loading shared libraries: libblas.so.3: cannot 
open shared object file: No such file or directory
 > sudo ln -s /usr/lib/libblas.so.0 /usr/lib/libblas.so.3
 > ./smartpca
no parameters
## smartpca version: 7521

   You can avoid such ugly symbolic links, if you compile the sources. 
With the help of `pkg-config --libs lapack` I adapted Makefile.alt to 
the attached Makefile.gcc4 and compiled the sources:

 > make -f Makefile.gcc4 all

   For now I don't feel like to pay those extra ten to sixty minutes to 
write something like a first version of an ebuild, but I thing that it 
might be quite straitforward.
   With best regards
				Honza Macháček

[-- Attachment #2: Makefile.gcc4 --]
[-- Type: text/plain, Size: 2787 bytes --]

HOMEL=$(PWD)
DEBUG_OPTIONS= -g -pg
BIN=$(HOMEL)/bin
# "make smartpca" to make smartpca program (ditto for other programs)
# "mv smartpca ../bin" or "make install" to place in ../bin directory
# "make clean" to clean up extra files in this directory
# "make clobber" to clobber all files and subdirectories except source files
#    so as to enable recompiling from scratch.

NLIB=$(HOMEL)/smartlib/nicklib.a
IDIR=$(HOMEL)/smartinclude
VPATH=.:nicksrc
BLAS = blas
# may need to change to BLAS = blas-3 (depends on blas/lapack installation)

CC=/usr/bin/gcc 
FF=/usr/bin/gfortran
CFLAGS= -c -O -I$(IDIR) -Wimplicit
LAPACK_LIBS=-llapack -lblas -lcblas -latlas

eigx.o:		eigx.f
	$(FF)  -c -o eigx.o  eigx.f

statsubs.o:	nicksrc/statsubs.c
	$(CC)  $(CFLAGS) -DTWTAB=$(TWTAB) -o statsubs.o nicksrc/statsubs.c

OBJ=strsubs.o sortit.o vsubs.o statsubs.o linsubs.o getpars.o xsearch.o gauss.o	gds.o
TWTAB=\"$(HOMEL)/smarttables/twtable\"

M1=smartpca
M1O=smartpca.o  twsubs.o mcio.o admutils.o egsubs.o eigsubs.o  eigx.o 

M2=convertf
M2O=convertf.o  mcio.o admutils.o

M3=twstats
M3O=twstats.o  

M4=eigenstrat
M4O=eigenstrat.o

M5=eigenstratQTL
M5O=eigenstratQTL.o

M6=pca
M6O=pca.o eigsubs.o eigx.o

M7=pcatoy
M7O=pcatoy.o eigsubs.o eigx.o

PROGS= smartpca convertf twstats eigenstrat eigenstratQTL pca
all: nicklib $(PROGS)          

install:	all
	cp $(PROGS) $(HOMEL)/bin

uninstall:   
	rm -f $(BIN)/smartpca
	rm -f $(BIN)/convertf
	rm -f $(BIN)/twstats
	rm -f $(BIN)/eigenstrat
	rm -f $(BIN)/eigenstratQTL
	rm -f $(BIN)/pca
	rm -f $(NLIB)/libnick.a
 
$(M1): nicklib $(M1O)
	gcc -O -I$(IDIR) $(DEBUG_OPTIONS) -L/usr/lib -lm $(LAPACK_LIBS) -o $(M1) $(M1O) $(NLIB) -Wimplicit

$(M2): nicklib $(M2O)
	gcc -O -I$(IDIR) $(DEBUG_OPTIONS) -lm  -o $(M2) $(M2O) $(NLIB) -Wimplicit

$(M3): nicklib $(M3O)
	gcc -O -I$(IDIR) $(DEBUG_OPTIONS) -lm  -o $(M3) $(M3O) $(NLIB) -Wimplicit

$(M4): nicklib $(M4O)
	gcc -O -I$(IDIR) $(DEBUG_OPTIONS) -lm  -o $(M4) $(M4O) $(NLIB) -Wimplicit

$(M5): nicklib $(M5O)
	gcc -O -I$(IDIR) $(DEBUG_OPTIONS) -lm  -o $(M5) $(M5O) $(NLIB) -Wimplicit

$(M6): nicklib $(M6O)
	gcc -O -I$(IDIR) $(DEBUG_OPTIONS) -L/usr/lib -lm $(LAPACK_LIBS) -o $(M6) $(M6O) $(NLIB) -Wimplicit

$(M7): nicklib $(M7O)
	gcc -O -I$(IDIR) $(DEBUG_OPTIONS) -L/usr/lib -lm $(LAPACK_LIBS) -o $(M7) $(M7O) $(NLIB) -Wimplicit

libnick.a:	dirs  $(OBJ)
	ar -r libnick.a $(OBJ)

nicklib:	dirs   libnick.a 
	cp libnick.a  $(NLIB)

dirs:	
	mkdir -p  $(HOMEL)/smartlib
	mkdir -p  $(HOMEL)/smarttables
	mkdir -p  $(HOMEL)/smartinclude
	mkdir -p  $(BIN)
	cp twtable  $(HOMEL)/smarttables
	cp  nicksrc/*.h  $(IDIR)

clean: 
	rm -f *.o 
	rm -f core
	rm -f libnick.a
	rm -f $(PROGS)

clobber: clean rmdirs uninstall

rmdirs: 
	rm -rf $(HOMEL)/smartlib 
	rm -rf $(HOMEL)/smarttables 
	rm -rf $(HOMEL)/smartinclude 


^ permalink raw reply	[flat|nested] 5+ messages in thread

* RE: [gentoo-science]  liblapack.so.3 not found
  2008-01-25 20:16 ` Honza Macháček
@ 2008-01-25 21:01   ` Alexandre Racine
  2008-01-25 21:26     ` Honza Macháček
  0 siblings, 1 reply; 5+ messages in thread
From: Alexandre Racine @ 2008-01-25 21:01 UTC (permalink / raw
  To: gentoo-science

[-- Attachment #1: Type: text/plain, Size: 2287 bytes --]

Hi,

I think I have found something. Doing exactly what I did on a 32bit machine works. But on my 64bit server, it does exactly the errors written below. Do you have a 32 or 64 machine? Oh and I don't know if the link can affect that...

$ ls -lh /usr/
[...]
lrwxrwxrwx   1 root    root       5 Jan  9 05:15 lib -> lib64
drwxr-xr-x  17 root    root     19K Jan 11 11:05 lib32
drwxr-xr-x 102 root    root     62K Jan 25 15:55 lib64


Thanks.


-----Original Message-----
From: Honza Machácek [mailto:Hloupy.Honza@centrum.cz]
Sent: Fri 2008-01-25 15:16
To: gentoo-science@lists.gentoo.org
Subject: Re: [gentoo-science]  liblapack.so.3 not found
 
Alexandre Racine wrote:

 > ...
> lrwxrwxrwx 1 root root 36 Jan 25 10:10 /usr/lib/liblapack.so.3 -> 
> /usr/lib/lapack/atlas/liblapack.so.0.0.0
> 
> Starting the program again, I get this:
> 
> $ ./smartpca
> ./smartpca: error while loading shared libraries: liblapack.so.3: cannot 
> open shared object file: No such file or directory

   Are you sure it does exactly that?
   I cannot reproduce it. Whether I link /usr/lib/liblapack.so.3 to 
/usr/lib/liblapack.so.0 or directly to 
/usr/lib/lapack/atlas/liblapack.so.0.0.0 as you did, I get libblas.so.3, 
not liblapack.so.3 not found. After linking /usr/lib/libblas.so.3 to 
/usr/lib/libblas.so.0 I start smartpca without problem:

 > ./smartpca
./smartpca: error while loading shared libraries: liblapack.so.3: cannot 
open shared object file: No such file or directory
 > sudo ln -s /usr/lib/liblapack.so.0 /usr/lib/liblapack.so.3
 > ./smartpca
./smartpca: error while loading shared libraries: libblas.so.3: cannot 
open shared object file: No such file or directory
 > sudo ln -s /usr/lib/libblas.so.0 /usr/lib/libblas.so.3
 > ./smartpca
no parameters
## smartpca version: 7521

   You can avoid such ugly symbolic links, if you compile the sources. 
With the help of `pkg-config --libs lapack` I adapted Makefile.alt to 
the attached Makefile.gcc4 and compiled the sources:

 > make -f Makefile.gcc4 all

   For now I don't feel like to pay those extra ten to sixty minutes to 
write something like a first version of an ebuild, but I thing that it 
might be quite straitforward.
   With best regards
				Honza Machácek


[-- Attachment #2: winmail.dat --]
[-- Type: application/ms-tnef, Size: 3607 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [gentoo-science]  liblapack.so.3 not found
  2008-01-25 21:01   ` Alexandre Racine
@ 2008-01-25 21:26     ` Honza Macháček
  2008-01-28 16:08       ` Alexandre Racine
  0 siblings, 1 reply; 5+ messages in thread
From: Honza Macháček @ 2008-01-25 21:26 UTC (permalink / raw
  To: gentoo-science

Alexandre Racine wrote:

> I think I have found something. Doing exactly what I did on a 32bit
> machine works. But on my 64bit server, it does exactly the errors
> written below. Do you have a 32 or 64 machine? Oh and I don't know if
> the link can affect that...


   First I have tried my 32 bit notebook. The binaries are undoubtedly 
compiled for 32 bit architecture, so you will have hard time trying to 
run them on 64 bits. As you can verify by strace, on a 64 bit machine 
the EIGENSOFT binaries look for the lapack and blas libraries at 
/usr/lib32 -- and you have to have some version of blas and lapack 
compiled in 32 bit mode there.
   Easier than getting all the required 32 bit compatibility libraries 
is to compile the sources. Luckily I have 64 bit machine too, so I have 
verified that the compilation works there.
   Use my Makefile.gcc4. Firs delete all the precompiled 32 bit g77 
object files:
 > make -f Makefile.gcc4 clean
Then compile and link the sources:
 > make -f Makefile.gcc4 all
I got several warnings but no error, and the resulting binaries seem to 
work:
 > ./smartpca
no parameters
## smartpca version: 7521

   With best regards
				Honza Macháček
-- 
gentoo-science@lists.gentoo.org mailing list



^ permalink raw reply	[flat|nested] 5+ messages in thread

* RE: [gentoo-science]  liblapack.so.3 not found
  2008-01-25 21:26     ` Honza Macháček
@ 2008-01-28 16:08       ` Alexandre Racine
  0 siblings, 0 replies; 5+ messages in thread
From: Alexandre Racine @ 2008-01-28 16:08 UTC (permalink / raw
  To: gentoo-science

[-- Attachment #1: Type: text/plain, Size: 1655 bytes --]

I just changed the FF to FF=gfortran in the Makefile.gcc4 and now eigensoft works. Thanks!



Alexandre Racine
514-461-1300 poste 3304
alexandre.racine@mhicc.org



-----Original Message-----
From: Honza Machácek [mailto:Hloupy.Honza@centrum.cz]
Sent: Fri 2008-01-25 16:26
To: gentoo-science@lists.gentoo.org
Subject: Re: [gentoo-science]  liblapack.so.3 not found
 
Alexandre Racine wrote:

> I think I have found something. Doing exactly what I did on a 32bit
> machine works. But on my 64bit server, it does exactly the errors
> written below. Do you have a 32 or 64 machine? Oh and I don't know if
> the link can affect that...


   First I have tried my 32 bit notebook. The binaries are undoubtedly 
compiled for 32 bit architecture, so you will have hard time trying to 
run them on 64 bits. As you can verify by strace, on a 64 bit machine 
the EIGENSOFT binaries look for the lapack and blas libraries at 
/usr/lib32 -- and you have to have some version of blas and lapack 
compiled in 32 bit mode there.
   Easier than getting all the required 32 bit compatibility libraries 
is to compile the sources. Luckily I have 64 bit machine too, so I have 
verified that the compilation works there.
   Use my Makefile.gcc4. Firs delete all the precompiled 32 bit g77 
object files:
 > make -f Makefile.gcc4 clean
Then compile and link the sources:
 > make -f Makefile.gcc4 all
I got several warnings but no error, and the resulting binaries seem to 
work:
 > ./smartpca
no parameters
## smartpca version: 7521

   With best regards
				Honza Machácek
-- 
gentoo-science@lists.gentoo.org mailing list



[-- Attachment #2: winmail.dat --]
[-- Type: application/ms-tnef, Size: 3527 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2008-01-28 16:12 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-01-25 16:58 [gentoo-science] liblapack.so.3 not found Alexandre Racine
2008-01-25 20:16 ` Honza Macháček
2008-01-25 21:01   ` Alexandre Racine
2008-01-25 21:26     ` Honza Macháček
2008-01-28 16:08       ` Alexandre Racine

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox