[Thread Prev][Thread Next][Index]
Re: [ferret_users] libcurl error
Hi Felipe, this is simple and is not. It depends on the rule, how your
system is managed.
First make sure you are running a 32-bit system. Otherwise your libcurl
is in /usr/lib64
The most simple way (NOT RECOMMENDED) ist to make a link
ln -fs /usr/lib/libcurl.so.4 /usr/lib/libcurl.so.3
I have tested this for SLES11. It seems to work.
However, you may run in difficulties with your rpms and system installation.
So it is better to make the link to some place outside the system search
path for libs, for example in your $HOME/lib
You have to make sure, that ferret finds the lib. Hence, you have to do
something like:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/your_home/lib
before starting ferret.
This may have some side effects for other binaries, because
LD_LIBRARY_PATH is still changed, when ferret is ready.
Other users cannot benefit from your installation work.
So you may write a wrapper script, that opens a new shell, exports the
modified LD_LIBRARY_PATH and calls ferret.
This can be organised in such a way, that all users benefit from the
improved skript. The following script works
in a heterogenic environment with Suse10 and 11, but with a common
software repository.
The missing lib is in /sw/compat_10_11/lib64. Please see also,
how other environment variables can be temporarly modified.
#!/bin/bash
# start Ferret on different machines
host=`hostname`
echo "starting Ferret on "$host
export FER_IOW=/sw/viz/ferret/ferret_iow
source /sw/viz/ferret/ferret_64_dynamic_6.62/ferret_paths_bash
[[ -d $FER_IOW/go ]] && export FER_GO="$FER_IOW/go "${FER_GO#.}
[[ -d $FER_IOW/ppl ]] && export FER_PALETTE="$FER_IOW/ppl "${FER_PALETTE#.}
[[ -d $FER_IOW ]] && export FER_DATA="$FER_IOW/dsets "${FER_DATA#.}
[[ -d $HOME/ferret/go ]] && export FER_GO=". $HOME/ferret/go "${FER_GO#.}
[[ -d $HOME/ferret/ppl ]] && export FER_PALETTE=". $HOME/ferret/ppl
"${FER_PALETTE#.}
[[ -d $HOME/ferret/data ]] && export FER_DATA=". $HOME/ferret/data
"${FER_DATA#.}
[[ -d $HOME/ferret/ext_func/libs ]] && export FER_EXTERNAL_FUNCTIONS=".
$HOME/ferret/ext_func/libs_linux "${FER_EXTERNAL_FUNCTIONS#.}
export FER_GO=". "${FER_GO#.}
export FER_PALETTE=". "${FER_PALETTE#.}
export FER_DATA=". "${FER_DATA#.}
export FER_EXTERNAL_FUNCTIONS=". "${FER_EXTERNAL_FUNCTIONS#.}
suse_version=`cat /etc/SuSE-brand | grep VERSION | cut -f3 -d" "`
if [ $suse_version == '11' ]
then
export LD_LIBRARY_PATH=/sw/compat_10_11/lib64:$LD_LIBRARY_PATH
fi
/sw/viz/ferret/ferret_64_dynamic_6.62/bin/ferret $*
Good luck,
Martin
Felipe Pimenta wrote:
Dear all,
I am getting the following error when I try to run ferret:
p01215@crow:~> ferret
/home/users/p01215/local/ferret/bin/ferret: error while loading shared
libraries: libcurl.so.3: cannot open shared object file: No such file
or directory
I've noticed the machine I am working don't have the libcurl.so.3 file.
Can I tell ferret to use the /usr/lib/libcurl.so.4? How?
Many Thanks,
Felipe
--
[Thread Prev][Thread Next][Index]
Contact Us
Dept of Commerce /
NOAA /
OAR /
PMEL /
TMAP
Privacy Policy | Disclaimer | Accessibility Statement