EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  <20022003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  <20022003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: Building 3.13Extensions with 3.14 base Problem.
From: Andrew Johnson <[email protected]>
To: Edwin du <[email protected]>
Cc: [email protected]
Date: Thu, 05 Dec 2002 14:42:14 -0600
Edwin du wrote:

I was tring to build EPICS R3.13 extensions with R3.14.0beta2 base, host structure linux-x86, target structure i386-rtems. Base and cross-complier has been built successfully. Compiling CA monitor, dct313, Jdct, MEDM is successful, and I have got those binary files in my $(EPICS_EXTENSIONS)/bin/linux-x86/ But libraries seems not been connected correctly, and I got the following prompts:

[root@tu032244 linux-x86]# ./camonitor
../camonitor: error while loading shared libraries: libca.so: cannot open shared
object file: No such file or directory
[root@tu032244 linux-x86]# ./medm
../medm: error while loading shared libraries: libca.so: cannot open shared object
file: No such file or directory
[root@tu032244 linux-x86]# ./jdct java.lang.ExceptionInInitializerError: [exception was
java.lang.UnsatisfiedLinkError: libdbStatic: not found]
at jdct.JdctMenu.<init>(JdctMenu.java:28)
at jdct.JdctFrame.<init>(JdctFrame.java:43)
at jdct.Jdct.main(Jdct.java:19)
java.lang.UnsatisfiedLinkError: libdbStatic: not found
at java.lang.Throwable.fillInStackTrace(Throwable.java:native)
at java.lang.Throwable.<init>(Throwable.java:38)
at java.lang.Error.<init>(Error.java:21)
at java.lang.LinkageError.<init>(LinkageError.java:21)
at java.lang.UnsatisfiedLinkError.<init>(UnsatisfiedLinkError.java:21)
at java.lang.Runtime.loadLibrary(Runtime.java:150)
at java.lang.System.loadLibrary(System.java:143)
at dbStatic.DbBase.<clinit>(DbBase.java:71)
at jdct.JdctMenu.<init>(JdctMenu.java:28)
at jdct.JdctFrame.<init>(JdctFrame.java:43)
at jdct.Jdct.main(Jdct.java:19)
I have those files in my extensions/lib/linux-x86/ directory:
libANLwidgets.a libca.a libcaObject2.a libca.so libdbStatic.a libdbStatic.so
libPrintUtils.a


Is there any instructions for me? Thanks a lot.

The easy answer is to set your LD_LIBRARY_PATH environment variable to a ':' separated list of the directories containing those .so files, for example if your epics base and extensions are found in /home/epics (line split for clarity):


export LD_LIBRARY_PATH=/home/epics/base/lib/linux-x86:\
	/home/epics/extensions/lib/linux-x86

Personally I think that on Linux at least we should be embedding the paths to the shared libraries into those binaries that use them. I have this working, and will see if I can persuade Janet to accept it for R3.14.1

- Andrew
--
"Life is what happens while you're busy making other plans." - John Lennon


References:
Building 3.13Extensions with 3.14 base Problem. Edwin du

Navigate by Date:
Prev: Re: libezca and EPICS-3.14 Till Straumann
Next: Re: libezca and EPICS-3.14 Till Straumann
Index: 1994  1995  1996  1997  1998  1999  2000  2001  <20022003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Building 3.13Extensions with 3.14 base Problem. Edwin du
Next: Re: Building 3.13Extensions with 3.14 base Problem. Andrew Johnson
Index: 1994  1995  1996  1997  1998  1999  2000  2001  <20022003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 10 Aug 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·