[Debian-med-packaging] cmake issue in libsbml: Cannot generate java documentation, please specify the Java_JAVADOC_JAR.

Andreas Tille andreas at fam-tille.de
Thu Dec 17 16:26:49 UTC 2015


Hi Kevin,

On Thu, Dec 17, 2015 at 10:44:40PM +1100, Kevin Murray wrote:
> 
> I have pushed a possible fix to the branch 'daube/possible-cmake-fix'. I am not
> sure of the overall effects, the build is taking ages on my laptop, but it seems
> to have fixed the immediate error.

Thanks a lot for this first and very helpful step.  Following this
strategy I was even able to work around another issue with Java bindings
which was also solved by setting a variable accordingly.

Finally after 1-2 hours of building I went into

...
make[4]: Entering directory '/build/libsbml-5.12.0+dfsg/build'
[100%] Generate Java-API Documentation
/usr/bin/javac: error while loading shared libraries: libjli.so: cannot open shared object file: No such file or directory
docs/CMakeFiles/api_docs_java.dir/build.make:61: recipe for target '../docs/formatted/java-api/index.html' failed
make[4]: *** [../docs/formatted/java-api/index.html] Error 127
make[4]: Leaving directory '/build/libsbml-5.12.0+dfsg/build'
CMakeFiles/Makefile2:1123: recipe for target 'docs/CMakeFiles/api_docs_java.dir/all' failed
make[3]: *** [docs/CMakeFiles/api_docs_java.dir/all] Error 2
make[3]: Leaving directory '/build/libsbml-5.12.0+dfsg/build'
...


When I trow the error message above in a web search it comes up with the
log of bug #548729 which says:


	This is most likely a lack of /proc.  Some ld.so features require
	/proc/self/exe.
	
	$ readelf -d /usr/bin/java  | grep ORIGIN
	 0x000000000000000f (RPATH)              Library rpath: [$ORIGIN/../lib/amd64/jli:$ORIGIN/../jre/lib/amd64/jli]
	 0x000000006ffffffb (FLAGS_1)            Flags: ORIGIN
	
	AFAIK, a mounted /proc is close to mandatory these days.  The error
	message could be nicer, but this is a libc bug.


If I try inside the pbuilder chroot:

1|root at wr-linux01:/ # mount                                                                                                                                                                                      
mount: failed to read mtab: No such file or directory
2|root at wr-linux01:/ # readelf -d /usr/bin/java  | grep ORIGIN
 0x000000000000000f (RPATH)              Library rpath: [$ORIGIN/../lib/amd64/jli:/usr/local/jre/lib/amd64/jli:$ORIGIN/../lib/amd64:/usr/local/lib/amd64:$ORIGIN/../jre/lib/amd64:/usr/local/jre/lib/amd64]


I can confirm that /proc is not mounted.  Any idea how to approach this
to finally build libsbml successfully (at least passing the step to
Generate Java-API Documentation?

Kind regards

       Andreas.

-- 
http://fam-tille.de



More information about the Debian-med-packaging mailing list