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 <2025> | 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 <2025> |
<== Date ==> | <== Thread ==> |
---|
Subject: | Moving source files to their own directory |
From: | Iain Marcuson via Tech-talk <tech-talk at aps.anl.gov> |
To: | "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov> |
Date: | Tue, 14 Jan 2025 19:41:29 +0000 |
I have been working on EPICS IOC for a QuadEM. I have been advised that with all the source files I should move them to their own directory for ease of building that driver selectively. I made a new directory and transferred what I think
are the relevant entries from the Makefile into the new directory. When I run `make`, my files appear to be compiled, but I fail on the linking step. The first warning from the linker is /usr/bin/ld: quadEMTestApp_registerRecordDeviceDriver.o: warning: relocation against `pvar_func_drvTetrAMMRegister' in read-only section `.text' The other messages appear to be about missing references to the other quadEM libraries: /usr/bin/ld: /home/iainm/src/epics/synAppsofficial/git/support/quadEM-R9-5/quadEMApp/src/O.linux-x86_64/quadEMTestApp_registerRecordDeviceDriver.cpp:576:(.text+0x2d2): undefined reference to `pvar_func_drvNSLS2_EMRegister' /usr/bin/ld: /home/iainm/src/epics/synAppsofficial/git/support/quadEM-R9-5/quadEMApp/src/O.linux-x86_64/quadEMTestApp_registerRecordDeviceDriver.cpp:577:(.text+0x2de): undefined reference to `pvar_func_drvNSLS_EMRegister' /usr/bin/ld: /home/iainm/src/epics/synAppsofficial/git/support/quadEM-R9-5/quadEMApp/src/O.linux-x86_64/quadEMTestApp_registerRecordDeviceDriver.cpp:578:(.text+0x2ea): undefined reference to `pvar_func_drvPCR4Register' /usr/bin/ld: /home/iainm/src/epics/synAppsofficial/git/support/quadEM-R9-5/quadEMApp/src/O.linux-x86_64/quadEMTestApp_registerRecordDeviceDriver.cpp:579:(.text+0x2f6): undefined reference to `pvar_func_drvTetrAMMRegister' I also have a find warning /usr/bin/ld: warning: creating DT_TEXTREL in a PIE At the end. What entries do I need in the Makefile to get my code linked in with the overall quadEM IOC? Thank you. This message has been scanned for malware by Forcepoint. www.forcepoint.com |