Stupid ld error

I keep having these errors while a "make install" process in OpenCascade. I am really stuck and can not identify the problem...

http://www.sudrap.org/paste/text/18367/

Denis Barbier's picture

Your truncated log does not show the error which prevents some libraries from being installed, so we can hardly help you. Put the whole log (make+make install) available somewhere on the web, for instance generated by the script command:

$ script build.log
$ export LC_ALL=C
$ make clean
$ make
$ make install
$ exit

kunguz's picture

The whole build process is attached to this message as in order given in your reply. Note that I am trying to make a build source of OpenCASCADE 6.5.1 under Pardus Linux, source files including the patches that I applied are available under:

https://svn.pardus.org.tr/pardus/playground/kaan.aksit/2011/opencascade/

Build located that I have prepared to do ./configure, make and make install are located under:

https://svn.pardus.org.tr/pardus/playground/kaan.aksit/2011/opencascade/...

kunguz's picture

The whole build process is available in below address as in order given in your reply.

http://dl.dropbox.com/u/8850020/pisi.log

Note that I am trying to make a build source of OpenCASCADE 6.5.1 under Pardus Linux, source files including the patches that I applied are available under:

https://svn.pardus.org.tr/pardus/playground/kaan.aksit/2011/opencascade/

Build located that I have prepared to do ./configure, make and make install are located under:

https://svn.pardus.org.tr/pardus/playground/kaan.aksit/2011/opencascade/...

Denis Barbier's picture

Thanks, these informations are very useful.

Have a look at line 66767 of your pisi.log, when installing TKMath; at the end, it states that this library depends upon ../TKernel/libTKernel.la. But on the next line, this dependency is rewritten as "-L/usr/lib -lTKernel" whereas it should be "-L/var/pisi/OpenCASCADE-6.5.1-1/install/usr/lib -L/usr/lib -lTKernel" since libraries are installed under /var/pisi/OpenCASCADE-6.5.1-1/install/usr/lib in your log.

Why does it fail on TKBRep and not on previous ones? I guess that you have already OCC libraries installed in /usr/lib; some of them can be loaded, but TKGeomBase cannot, maybe its API has changed and symbols are undefined. If you remove installed OCC libraries, you should see that TKMath does not install.

Unfortunately your log is still not verbose enough, commands are not displayed and so I cannot try to reproduce your problem.

kunguz's picture

Thank you very much for your answer. Yes, some of them are inside /usr/lib thats why it builds without an error. Now the problem is much more clear to me. But I am curious to know how to change

"-L/usr/lib -lTKernel"

into

"-L/var/pisi/OpenCASCADE-6.5.1-1/install/usr/lib -L/usr/lib -lTKernel"

if I run this before make install process will it be fine or do I need to change some settings inside the configure:

libtool --finish /var/pisi/OpenCASCADE-6.5.1-1/install/usr/lib

Denis Barbier's picture

Looks like a libtool issue. Try to regenerate Autotools files:

$ cd ros && autoreconf -fi

Of course you may want to adapt your patches to patch configure.in instead of configure.

kunguz's picture

unfortunately autoreconf -fi returned the same result. How do I edit this line manually :(