neddie Posted November 6, 2008 Report Share Posted November 6, 2008 Is there anything special about Mandriva's implementation of ld_library_path? Is it handled differently by different distros? I'm trying to follow Sun's instructions for installing java3d, and there are basically two ways of doing it. Method 1 is to take the jars and copy them to jre/lib/ext/ and take the .so files and copy them to jre/lib/i386/ and this then works. But this isn't the recommended way. In the instructions they say you shouldn't do it this way, you should copy these files outside the jre and then reference them using system variables: Modify your CLASSPATH environment variable to include the full paths to j3dcore.jar, j3dutils.jar, and vecmath.jar. For example: export CLASSPATH=.:/myhome/j3d/lib/ext/j3dcore.jar:/myhome/j3d/lib/ext/j3dutils.jar:/myhome/j3d/lib/ext/vecmath.jar Modify your LD_LIBRARY_PATH environment variable to contain the full path to the lib/<ARCH> directory. For example, on 32-bit Linux: export LD_LIBRARY_PATH=/myhome/j3d/lib/i386 When I try this, using Sun's 1.6 jre from the repositories, it just doesn't work, so I'm wondering either it's not finding the classes (not likely) or it's not finding the shared objects using this library path. I thought maybe this was a Mandriva thing but I also tried it on Debian Etch also with Sun's jre 1.6 and that also failed to work. Copying the files inside the jre directory then works. Any ideas why? Is it just a simple gotcha? (By the way I used ~/j3d as my directory, and tried both relative paths (j3d) and absolute paths (/home/user/j3d) and checked for typos I also tried piling everything into the command line as java -cp list:of:jars -Djava.library.path=directory ... but that also didn't work) Link to comment Share on other sites More sharing options...
Steve Scrimpshire Posted November 12, 2008 Report Share Posted November 12, 2008 I'm not in Linux right now, but if I remember correctly, on Mandriva you would add that path to the /etc/ld.so.config file and then run ldconfig Link to comment Share on other sites More sharing options...
neddie Posted November 12, 2008 Author Report Share Posted November 12, 2008 Thanks, I'll have to try that later. But the disadvantage is that one would need root permissions for this, to set that up for the whole system. The recommended way (which doesn't work for me) just sets an environment variable so should work for anybody. In this example the path I want to add is inside my ~/ so it wouldn't make sense to include it in the path for the other users of the system who can't access this directory. Link to comment Share on other sites More sharing options...
Steve Scrimpshire Posted November 14, 2008 Report Share Posted November 14, 2008 shouldn't this be: Modify your LD_LIBRARY_PATH environment variable to contain the full path to the lib/<ARCH> directory. For example, on 32-bit Linux: export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/myhome/j3d/lib/i386 ? Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now