Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 88405 - Subversion's javahl binding fails to link to libstdc++ on amd64
Summary: Subversion's javahl binding fails to link to libstdc++ on amd64
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: Paul de Vrieze (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-04-08 14:03 UTC by Daniel Ceregatti
Modified: 2007-08-13 22:38 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Daniel Ceregatti 2005-04-08 14:03:48 UTC
Applications that use subversion's java binding will fail with an UnsatisfiedLinkError exception when the java code in the svn-javahl.jar tries to Loadlibrary() libsvnjavahl-1.so on amd64.

This is due to a compilation problem encountered during make javahl and libstdc++. During the compilation, the make process outputs:

*** Warning: linker path does not have real file for library -lstdc++.
*** I have the capability to make that library automatically link in when
*** you link to this library.  But I can only do this if you have a
*** shared version of the library, which you do not appear to have
*** because I did check the linker path looking for a file starting
*** with libstdc++ and none of the candidates passed a file format test
*** using a file magic. Last file checked: libstdc++.so.5.0.6
*** The inter-library dependencies that have been dropped here will be
*** automatically added whenever a program is linked with this library
*** or is declared to -dlopen it. 

Changing the LT_CXX_LIBADD variable in the Makefile from:

LT_CXX_LIBADD = -lstdc++

to:

LT_CXX_LIBADD = -L/usr/lib/libstdc++-v3/ -lstdc++

Fixed the problem for me.

I've had several other people using gentoo amd64 test this using a small java test program (http://sh.nu/libtest.java) and they all reported the same thing.

It seems that the solution should be to find out why configure isn't adding that to the Makefile.

Reproducible: Always
Steps to Reproduce:
1. FEATURES=keepwork emerge subversion
2. cd $PORTAGE_TMPDIR/subversion-1.1.4/work/subversion-1.1.4
3. make check-javahl

Actual Results:  
All tests fail.

Expected Results:  
All tests should not fail.
Comment 1 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2007-08-13 22:09:04 UTC
(In reply to comment #0)
> Steps to Reproduce:
> 1. FEATURES=keepwork emerge subversion
> 2. cd $PORTAGE_TMPDIR/subversion-1.1.4/work/subversion-1.1.4
> 3. make check-javahl
> 
> Actual Results:  
> All tests fail.
> 
> Expected Results:  
> All tests should not fail.

In Subversion 1.5_pre26059 only 3 tests failed. 41 tests were succesful.

Can you still reproduce this bug?
Comment 2 Daniel Ceregatti 2007-08-13 22:38:01 UTC
This happened so long ago, I don't even remember why I opened this bug. But:

daniel@dano ~ $ uname -a
Linux dano 2.6.22.1 #3 SMP PREEMPT Thu Aug 2 20:53:24 PDT 2007 x86_64 Intel(R) Core(TM)2 CPU 6600 @ 2.40GHz GenuineIntel GNU/Linux

daniel@dano ~ $ eix subversion | grep "Installed versions"
     Installed versions:  1.4.4-r3(05:17:22 PM 07/18/2007)(apache2 -bash-completion berkdb -elibc_FreeBSD -emacs java nls -nowebdav perl python ruby)

daniel@dano ~ $ wget http://sh.nu/libtest.java 
--15:33:25--  http://sh.nu/libtest.java
           => `libtest.java'
Resolving sh.nu... 216.239.132.100
Connecting to sh.nu|216.239.132.100|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 837 [text/plain]

100%[=========================================================================================================================>] 837           --.--K/s             

15:33:25 (106.87 MB/s) - `libtest.java' saved [837/837]

daniel@dano ~ $ javac libtest.java 

daniel@dano ~ $ LD_LIBRARY_PATH=/usr/lib java libtest
Trying svnjavahl-1      Success!

I'd say it's fixed.

Daniel