EPICS-synApps / support

APS BCDA synApps module: support
http://epics-synapps.github.io/support/
Other
3 stars 12 forks source link

Cannot build synApps 6.2 with StreamDevice 2.8.16 in Ubuntu 20.04.1 LTS #21

Open prjemian opened 3 years ago

prjemian commented 3 years ago

The current default install (assemble_synApps.sh 6.2) for StreamDevice is release 2.8.16: https://github.com/EPICS-synApps/support/blob/7a851ed2412bd7849cd671846d5dee3f96f71982/assemble_synApps.sh#L80

This fails to build in Ubuntu 20.04.1 LTS as described:

/usr/bin/g++  -D_GNU_SOURCE -D_DEFAULT_SOURCE           -D_X86_64_  -DUNIX  -Dlinux    -DUSE_TYPED_RSET   -O3   -Wall      -mtune=generic      -m64  -I. -I../O.Common -I. -I. -I.. -I../../include/compiler/gcc -I../../include/os/Linux -I../../include      -I/opt/synApps/support/asyn-R4-41/include   -I/opt/synApps/support/calc-R3-7-4/include -I/opt/base/include/compiler/gcc -I/opt/base/include/os/Linux -I/opt/base/include   -I/opt/synApps/support/sscan-R2-11-4/include   -I/opt/synApps/support/StreamDevice-2-8-16/include        -MM -MF streamApp_registerRecordDeviceDriver.d  streamApp_registerRecordDeviceDriver.cpp
Installing created dbd file ../../dbd/streamApp.dbd
/usr/bin/g++  -D_GNU_SOURCE -D_DEFAULT_SOURCE           -D_X86_64_  -DUNIX  -Dlinux    -DUSE_TYPED_RSET   -O3   -Wall      -mtune=generic      -m64  -I. -I../O.Common -I. -I. -I.. -I../../include/compiler/gcc -I../../include/os/Linux -I../../include      -I/opt/synApps/support/asyn-R4-41/include   -I/opt/synApps/support/calc-R3-7-4/include -I/opt/base/include/compiler/gcc -I/opt/base/include/os/Linux -I/opt/base/include   -I/opt/synApps/support/sscan-R2-11-4/include   -I/opt/synApps/support/StreamDevice-2-8-16/include        -c streamApp_registerRecordDeviceDriver.cpp
/usr/bin/g++  -D_GNU_SOURCE -D_DEFAULT_SOURCE           -D_X86_64_  -DUNIX  -Dlinux    -DUSE_TYPED_RSET   -O3   -Wall      -mtune=generic      -m64  -I. -I../O.Common -I. -I. -I.. -I../../include/compiler/gcc -I../../include/os/Linux -I../../include      -I/opt/synApps/support/asyn-R4-41/include   -I/opt/synApps/support/calc-R3-7-4/include -I/opt/base/include/compiler/gcc -I/opt/base/include/os/Linux -I/opt/base/include   -I/opt/synApps/support/sscan-R2-11-4/include   -I/opt/synApps/support/StreamDevice-2-8-16/include        -c ../streamAppMain.cc
make[3]: *** No rule to make target '../../lib/linux-x86_64/libseq.a', needed by 'streamApp'.  Stop.
make[3]: Leaving directory '/opt/synApps/support/StreamDevice-2-8-16/streamApp/O.linux-x86_64'
make[2]: *** [/opt/base/configure/RULES_ARCHS:58: install.linux-x86_64] Error 2
make[2]: Leaving directory '/opt/synApps/support/StreamDevice-2-8-16/streamApp'
make[1]: *** [/opt/base/configure/RULES_DIRS:85: streamApp.install] Error 2
make[1]: Leaving directory '/opt/synApps/support/StreamDevice-2-8-16'
make: *** [/opt/base/configure/RULES_DIRS:85: /opt/synApps/support/StreamDevice-2-8-16.install] Error 2
prjemian commented 3 years ago

Tested various StreamDevice releases. Found that 2.8.14 was the latest release that would build with no errors.

prjemian commented 3 years ago

Note StreamDevice releases: https://github.com/paulscherrerinstitute/StreamDevice/releases

keenanlang commented 3 years ago

I am on Ubuntu 20.04.1 LTS at home, ran assemble_synApps.sh and StreamDevice built successfully on release 2-8-16.

StreamDevice doesn't have SNCSEQ defined in its RELEASE file, so the makefile shouldn't be including sequencer in its build unless SNCSEQ is defined by default in the environment or unless Calc was changed to build with sequencer. If Calc is being built with sequencer, then you have to add a SNCSEQ definition into StreamDevice's RELEASE.