Help with running Linux software LD_LIBRARY_PATH
Boris Samorodov
bsam at ipt.ru
Thu Apr 19 17:40:00 UTC 2007
On Thu, 19 Apr 2007 13:15:28 -0300 Henry Lenzi wrote:
> I'm trying to install a software package called LINGO for my
> operations research class. There's a Linux version (no BSD, though).
> http://www.lindo.com/downloads/downloadm.html
> I'm hoping I can get this to work with the Linux emulation layer
> (other stuff work already, like Maple 8).
> I am getting errors related to a shell script a LD_LIBRARY_PATH
> There are libraries that need to be loaded in /opt/lingo9
> > ls
> LINGO.CNF libcxa.so liblindo.so libmosek.so.3.2 lingovars.sh
> libcxa.so.3 liblindo.so.3.0 libunwind.so.5
> libconsub3.so libcxa.so.5 libmosek.so lingo9
> I unpacked it under /opt.
> There's a bash shell script you're supposed to run:
> ##############################
> #! /bin/sh
> LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$HOME/opt/lingo9/bin/linux32
> export LD_LIBRARY_PATH
> LINGO_LICENSE_FILE="$HOME/opt/lingo9/license/lndlng90.lic"
> export LINGO_LICENSE_FILE
> ###############################
> My first question is if the shell script "translation" to tcsh is correct:
Why should you convert the script to tcsh? IMHO the best way is to
convert it to sh.
> ###############################
> #!/bin/tcsh
> setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:/opt/lingo9/bin/linux32
^^^^^^^^^^^^^^^ [1]
recursive declaration?
> setenv LINGO_LICENSE_FILE "/opt/ling9/license/lndlng90.lic"
> ###############################
> When I try to execute it, I get the error below (BTW, set to 755).
> > ls -l bsdlingolic.sh
> -rwxr-xr-x 1 root 2527 143 19 Abr 13:00 bsdlingolic.sh
> > ./bsdlingolic.sh
> LD_LIBRARY_PATH: Undefined variable.
Yep, it's not defined at the time [1] occures. Actually, defining
LD_LIBRARY_PATH almost always is a Bad Thing.
> What suggestions do you have regarding this issue?
1. Create a port (local?) for the software. Don't forget to brand
executables (only!).
2. Install it to PREFIX=/usr/local (i.e. libraries to /usr/local/lib
etc), linuxulator will make the right thing to find needed
libraries.
3. Delete the definition of LD_LIBRARY_PATH.
4. Enjoy you work. ;-)
WBR
--
Boris Samorodov (bsam)
Research Engineer, http://www.ipt.ru Telephone & Internet SP
FreeBSD committer, http://www.FreeBSD.org The Power To Serve
More information about the freebsd-questions
mailing list