Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  <20062007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  <20062007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017 
<== Date ==> <== Thread ==>

Subject: Help with 3.14 build system
From: Benjamin Franksen <benjamin.franksen@bessy.de>
To: tech-talk@aps.anl.gov
Date: Mon, 22 May 2006 11:02:16 +0200
Hi All,

The 3.14 build system is one again driving me nuts. The IOC tells me:

ld < TESTIOC1CSupport.munch
undefined symbol: _pvar_func_register_func_castFloat
ld error: error reading file (errno = 0x1c0001).

even though I have in my single-routine-c-file

...
#include <registryFunction.h>
#include <epicsExport.h>
static long castToFloat(struct subRecord *psub)
{
   long lval = psub->a;
   psub->val = *((float*)(&lval));
   return(0);
}
epicsRegisterFunction(castToFloat);

and I also find this "pvar_func_register_func_castFloat" stuff in my 
(generated) O.vxWorks-68040/TESTIOC1C_registerRecordDeviceDriver.cpp.

This is the command line for the linker call (output from make run):

/opt/vxworks/tornado202/host/x86-linux/bin/ld68k -r -o TESTIOC1CSupport  
-L../../lib/vxWorks-68040/ 
-L/opt/Epics/R3.14.8/base/3-14-8-2-0/lib/vxWorks-68040/ 
-L/opt/Epics/R3.14.8/support/alarm/3-0/lib/vxWorks-68040/ 
-L/opt/Epics/R3.14.8/support/bspDep/3-0/lib/vxWorks-68040/ 
-L/opt/Epics/R3.14.8/support/mcan/2-0/lib/vxWorks-68040/ 
-L/opt/Epics/R3.14.8/support/misc/2-0/lib/vxWorks-68040/ 
-L/opt/Epics/R3.14.8/support/soft/2-0/lib/vxWorks-68040/ 
-L/opt/Epics/R3.14.8/support/vxBootParams/2-0/lib/vxWorks-68040/ 
-L/opt/Epics/R3.14.8/support/vxStats/2-0/lib/vxWorks-68040/         
-L/opt/vxworks/tornado202/host/x86-linux/m68k-wrs-vxworks/lib
/opt/Epics/R3.14.8/base/3-14-8-2-0/bin/vxWorks-68040/vxComLibrary.o 
TESTIOC1C_registerRecordDeviceDriver.o    -lcastFloat -lhwLowcalRecord 
-lmCANSupport -lmCANCore -ltimestampRecord -ldevHwClient -lalm -ltimer 
-lCpuBoardInit -lautoSaveRestore -ldevVXStats -ldevVxBootParams 
-lrecIoc -lsoftDevIoc -liocsh -lmiscIoc -lrsrvIoc -ldbtoolsIoc -lasIoc 
-ldbIoc -lregistryIoc -ldbStaticIoc -lca -lCom

As you can see, castFloat library gets linked fine. Also the compiled 
TESTIOC1C_registerRecordDeviceDriver.o is linked into the binary. Why 
do I still get the undefined symbol error???

Any hint is greatly appreciated.

Ben
-- 
You've never looked into my eyes but don't you want to know
What the dark and the wild and the different know -- Melissa Etheridge

Replies:
Re: Help with 3.14 build system Benjamin Franksen

Navigate by Date:
Prev: Re: bug in break-point table conversion Benjamin Franksen
Next: Re: Help with 3.14 build system Benjamin Franksen
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  <20062007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017 
Navigate by Thread:
Prev: June Collaboration Meeting Update Andrew Johnson
Next: Re: Help with 3.14 build system Benjamin Franksen
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  <20062007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017 
ANJ, 02 Sep 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·