EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

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

Subject: Error in Linking a shared library
From: Muhammad Saleem <[email protected]>
To: [email protected], [email protected]
Date: Fri, 5 Dec 2014 09:54:52 +0500
Dear Dirk Zimoch,
I am writing device support for a digital output card from Adlink, PCI-7434. Adlink ships a shared library file "libpci_dask.so" that needs to be linked with every code we write for these DO cards. Here is the normal gcc command line which successfully compiles a code written for PCI-7434.

gcc -o 7434test -lpci_dask 7434test.o conio.o

I have written device support routines for this card and now I am trying to include it in IOC. However, It gives the following error, every time I type make.

====

make[3]: *** No rule to make target `../../../lib/linux-x86/lib-lpci_dask.a', needed by `PCI7434'.  Stop.


make[3]: Leaving directory `/home/muhammad/Device Support/DevSupPCI7434/PCI7434App/src/O.linux-x86'
make[2]: *** [install.linux-x86] Error 2
make[2]: Leaving directory `/home/muhammad/Device Support/DevSupPCI7434/PCI7434App/src'
make[1]: *** [src.install] Error 2
make[1]: Leaving directory `/home/muhammad/Device Support/DevSupPCI7434/PCI7434App'
make: *** [PCI7434App.install] Error 2

====
I have copied this file "libpci_dask.so"  in 'linux-x86' directory. However, it just keeps looking for static library with this name. My Make file within 'src' directory is here.

OP=../..

include $(TOP)/configure/CONFIG
#----------------------------------------
#  ADD MACRO DEFINITIONS AFTER THIS LINE
#=============================

#=============================
# Build the IOC application

PROD_IOC = PCI7434
# PCI7434.dbd will be created and installed
DBD += PCI7434.dbd

# PCI7434.dbd will be made up from these files:
PCI7434_DBD += base.dbd

# Include dbd files from all support applications:
PCI7434_DBD += devPCI7434.dbd

# Add all the support libraries needed by this IOC
PCI7434_CFLAGS := -Wall -Wstrict-prototypes

# Add all the support libraries needed by this IOC
PCI7434_LIBS += -lpci_dask

# PCI7434_registerRecordDeviceDriver.cpp derives from PCI7434.dbd
PCI7434_SRCS += PCI7434_registerRecordDeviceDriver.cpp
#PCI7434_SRCS += devBoPCI7434P3.c
PCI7434_SRCS += drvDoPCI7434P3.c
PCI7434_SRCS += PCI7434RegP3.c

# Build the main IOC entry point on workstation OSs.
PCI7434_SRCS_DEFAULT += PCI7434Main.cpp
PCI7434_SRCS_vxWorks += -nil-

# Add support from base/src/vxWorks if needed
#PCI7434_OBJS_vxWorks += $(EPICS_BASE_BIN)/vxComLibrary

# Finally link to the EPICS Base libraries
PCI7434_LIBS += $(EPICS_BASE_IOC_LIBS)

#===========================

include $(TOP)/configure/RULES

The line "PCI7434_LIBS += -lpci_dask" somehow fails to include it as a shared library. I also written the following lines in "CONFIG_SITE" file.

STATIC_BUILD=NO
SHARED_LIBRARIES=YES

as suggested in one identical problems. I shall appreciate if you can help in figuring out the problem.

with regards,
Saleem

Replies:
Re: Error in Linking a shared library Ralph Lange

Navigate by Date:
Prev: RE: connecting EPICS to a Beckhoff PLC [SEC=UNCLASSIFIED] LYNCH, Damien
Next: Re: Error in Linking a shared library Ralph Lange
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: connecting EPICS to a Beckhoff PLC [SEC=UNCLASSIFIED] Torsten Bögershausen
Next: Re: Error in Linking a shared library Ralph Lange
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 17 Dec 2015 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·