Open ZLLentz opened 1 year ago
There is another semi-related failure in pcds-5.5.1-dev.
The static symbol pVersionCAC
which whatrecord uses to determine the binary version is not present in the conda-forge epics-base softIoc
executable, as it's instead part of the bundled shared library libca.so
:
(pcds-5.5.1-dev) $ gdb epics/lib/linux-x86_64/libca.so.4.13.8
(gdb) p pVersionCAC
$1 = "@(#) EPICS 7.0.5, CA Client Library"
The test suite makes too many PCDS-specific assumptions about the environment to be useful. Additionally, most facilities (outside of SLAC!) use dynamic linking for their EPICS binaries. The tool may need to be extended to better support dynamic linking - which may make it a bit too complicated:
softIoc
binary just to have it load shared libraries (i.e., break main; continue; p pVersionCAC
) even just to main
seems bad and a bit error-proneldd
(on Linux, at least) to match the libca
shared library and get info with gdb
from there (this also seems complicated and error-prone)I'd say for now:
softIoc
for our own purposes
Expected Behavior
Tests should have parity on the TravisCI and when run locally at LCLS.
Current Behavior
The gdb test fails when run on psbuild-rhel7, see https://github.com/pcdshub/pcds-envs/issues/253
Possible Solution
Idk, it might be a server configuration issue
Steps to Reproduce (for bugs)
Context
This adds some noise to the pcds-envs unit testing suite.
Your Environment
pcds-5.5.0