Experimental Physics and Industrial Control System
>
> Has anyone used the 'pvwave' EPICS extension, i.e. CaWave.so
> with PV-WAVE version 6.01?
>
> I have two problems.
> When I build 'CaWave.so', I get:
>
> **************************************************
> Undefined first referenced
> symbol in file
> _strerror (command line)
> ld: warning: Symbol referencing errors
> ****************************************************
>
Your problem is due to the library version on sun4.
When I built the ezcaIDL with the new default setting for EPICS R3.13.0
on sun4, I encountered the same problem. I have to modified the
Makefile.Unix in order to build the '.so' correctly. The _strerror
is defined in the ansi library.
You have to make the following changes for sun4
1) to append the '-lansi' in the USR_LDLIBS, and
2) insert the library path ' -L/usr/lang/SC1.0 -L/usr/lang/SC2.0.1patch '
in the ld line for both CaWave.so and CaIDL.so build rule.
For your reference, below is the Makefile.Unix extracted from my
private area, it should work fine for sun4 at least I tried with the
EPICS 3.13.0beta4 it worked fine.
Ben-chin
============
EPICS = ../../../..
include Target.include
include $(EPICS)/config/CONFIG_EXTENSIONS
DEPLIBS = $(INSTALL_LIB)/libLca.a \
$(EPICS_EXTENSIONS_LIB)/libLca.a \
$(EPICS_BASE_LIB)/libca.a \
$(EPICS_BASE_LIB)/libDb.a \
$(EPICS_BASE_LIB)/libCom.a
USR_INCLUDES = -I$(INSTALL_INCLUDE) -I$(EPICS_EXTENSIONS_INCLUDE)
USR_LDFLAGS = -L$(INSTALL_LIB) -L$(EPICS_EXTENSIONS_LIB)
USR_LDLIBS = -lLca -lca -lCom -lDb -lCom -lansi
ifeq ($(HOST_ARCH),solaris)
USR_INCLUDES = -Kpic -I$(INSTALL_INCLUDE) -I$(EPICS_EXTENSIONS_INCLUDE)
USR_LDFLAGS = -G -L$(INSTALL_LIB) -L$(EPICS_EXTENSIONS_LIB)
USR_LDLIBS = -lLca -lca -lCom -lDb -lCom
endif
UNIX_LDLIBS =
UNIX_OPT=NO
SRCS.c = ../CaWave.c
OBJS = CaWave.o
OBJS1 = CaIDL.o
PROD = CaWave.so CaIDL.so
SCRIPTS = CaWave.pro CaWidgets.pro idl_startup.pro setupidl \
catch1d.pro catch1d.init go1d \
catch1d_v2.pro catch1d_v2.init
DOCS = CaWave.doc catch1d_help.txt
include $(EPICS)/config/RULES.Unix
CaWave.so : $(OBJS) $(DEPLIBS)
ld -L/usr/lang/SC1.0 -L/usr/lang/SC2.0.1patch $(LDFLAGS) -o $@ $(OBJS1) $(LDLIBS)
CaIDL.so : $(OBJS1) $(DEPLIBS)
ld -L/usr/lang/SC1.0 -L/usr/lang/SC2.0.1patch $(LDFLAGS) -o $@ $(OBJS1) $(LDLIBS)
CaWave.o : $(SRCS.c)
$(COMPILE.c) -DPVWAVE $(SRCS.c)
CaIDL.o : $(SRCS.c)
$(COMPILE.c) -DIDL -o $@ $(SRCS.c)
- Replies:
- Re: CaWave Jeff Hill
- Navigate by Date:
- Prev:
CaWave Andy Foster
- Next:
Re: CaWave Jeff Hill
- Index:
1994
1995
<1996>
1997
1998
1999
2000
2001
2002
2003
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:
CaWave Andy Foster
- Next:
Re: CaWave Jeff Hill
- Index:
1994
1995
<1996>
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024