Experimental Physics and
| |||||||||||||||
|
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 ==== 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
| ||||||||||||||
ANJ, 17 Dec 2015 |
·
Home
·
News
·
About
·
Base
·
Modules
·
Extensions
·
Distributions
·
Download
·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing · |