Open CASCADE, the 3D modelling kernel
3D modeling & numerical simulation

Search the Forums
See All Topics
 

RPM building problem (linking libs)

RPM building problem (linking libs)
Andrea 2008/10/01 08:25
hi, i'm trying to build opencascade rpm but i have the following problem on make install:

as you know libraries linking is done on "make install"

as you could know, rpms install all files in RPM_BUILD_ROOT, the problem is that:

configure i give --prefix/usr --libdir=/usr/lib(64)/OpenCASCADE (that 2 are the most important now) because when the rpm will be installed i whant that... but building rpms linking of libs fail.

only 1 lib (that on what i see have no dependencies from the others) succeded, all others libs looks to search needed libs to be linked in /usr/lib/OpenCASCADE but they are in $RPM_BUILD_ROOT/usr/lib/OpenCASCADE where $RPM_BUILD_ROOT on my pc is /home/anubis/src/tmp (i don't like use root to build)

does exist a workaround or a patch to fix that?

thanks in advance
Andrea 2008/10/01 08:26
i forgot, to install i use:

make install prefix=$RPM_BUILD_ROOT/usr
Andrea 2008/10/01 08:30
i cannot edit, but the problem looks to be the same of that one: http://www.opencascade.org/org/forum/thread_14193/
William Jones 2008/10/01 15:19
Check out http://www.opencascade.org/org/forum/thread_14284/ as it may be related
Andrea 2008/10/01 20:24
thanks for link i will try, but is not exactly related... infact:

mv: cannot stat `libTKMath.so.0.0.0': No such file or directory
libtool: install: error: relink `libTKMath.la' with the above command before installing it


as i told the problems looks to be the linking... libTKMath.la for example search for libTKernel.so in /usr/lib but it is installed in $RPM_BUILD_ROOT/usr/lib so it is not able to find it and then fail...

here an extract from make install

http://pastebin.com/m58ee8d2e

as you can see only the first lib succeded (depends from NO others libs)

thanks
Andrea
Denis Barbier 2008/10/01 20:47
Andrea,

DESTDIR was added for this exact purpose in autotools, one normally runs
make install DESTDIR=/tmp/build/path

Unfortunately ros/Makefile.am is broken, you can get here
http://git.debian.org/?p=debian-science/packages/opencascade.git;a=blob;f=debian/patches/destdir.patch;hb=HEAD
a patch I wrote for the Debian package (click on 'raw' to download raw text).
Andrea 2008/10/01 20:58
thanks, let me try.
Andrea 2008/10/03 10:26
Hi Denis, thanks for patch but still not works. it allow me to use %makeinstall macro instead of make prefix=/dir/i/whant install

but linking still fail... once i end this new building i'll post full output.

thereis no commands i can pass to libtool to tell it where libs really are?


thanks in advance
Andrea
Andrea 2008/10/03 11:00
here you can see some output:

http://pastebin.com/f6cb60225

as before the only lib that is able to install is that one:

anubis@HP-Linux:~/src/tmp/OpenCASCADE-6.3.0-build/opt/OpenCASCADE/lib> ls
libTKernel.la libTKernel.so libTKernel.so.0 libTKernel.so.0.0.0



btw. the destdir patch seems to miss something (make intall fail because is not able to "mkdir /opt/openCASCADE"
Denis Barbier 2008/10/03 11:38
In my original reply, I told you to patch ros/Makefile.am but forgot to mention that you have to regenerate autotools files.
OCC 6.3 ships an ancient libtool, a newer one is needed. To solve both issues, simply put
cd ros && autoreconf -f -i
somewhere in your .spec file after patching files and before running configure script.
Andrea 2008/10/03 12:46
thanks... let me try.
Andrea 2008/10/03 15:11
perfectly works! thanks
William Jones 2008/10/03 21:09
Like I said, look at http://www.opencascade.org/org/forum/thread_14284/
 
 
Latest news
  • Open CASCADE Technology 6.8.0 is available for download!
  • New features to enhance the development process
  • Open CASCADE Technology 6.7.1 is available for download!

  • © OPEN CASCADE 2000 - 2014  |  Search  |  Contacts   |  Site map