-
Notifications
You must be signed in to change notification settings - Fork 15
Open
Labels
build systemRelated to the build and the Make rulesRelated to the build and the Make rules
Description
Describe the bug
Building an IOC against the OPC-UA module requires the presence of libxml2-dev module (probably the same with the ssl libs), although this should only be needed to build the OPC-UA module itself
To Reproduce
Steps to reproduce the behavior:
- Setup server without
libxml2-dev, but installed OPC-UA module - Try to build an IOC with OPC-UA support
- See build error
Expected behavior
It should build without libxml2-dev
Build Log
[...]
make -C O.linux-x86_64 -f ../Makefile TOP=../../.. \
T_A=linux-x86_64 install
make[3]: Entering directory '/home/ws/hi0724/iocs/magnets/magnetsApp/src/O.linux-x86_64'
/usr/bin/g++ -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -mtune=generic -m64 -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/gcc -I../../../include/os/Linux -I../../../include -I/opt/epics/modules/opcua-0.10.0/include -I/opt/epics/base-7.0.9/include/compiler/gcc -I/opt/epics/base-7.0.9/include/os/Linux -I/opt/epics/base-7.0.9/include -MM -MF magnetsMain.d ../magnetsMain.cpp
Creating dbd file magnets.dbd
perl -CSD /opt/epics/base-7.0.9/bin/linux-x86_64/dbdExpand.pl -I. -I.. -I../O.Common -I../../../dbd -I/opt/epics/modules/opcua-0.10.0/dbd -I/opt/epics/base-7.0.9/dbd -o magnets.dbd base.dbd opcua.dbd
perl -CSD /opt/epics/base-7.0.9/bin/linux-x86_64/registerRecordDeviceDriver.pl -I. -I.. -I../O.Common -I../../../dbd -I/opt/epics/modules/opcua-0.10.0/dbd -I/opt/epics/base-7.0.9/dbd -o magnets_registerRecordDeviceDriver.cpp \
../O.Common/magnets.dbd magnets_registerRecordDeviceDriver /home/ws/hi0724/iocs/magnets
/usr/bin/g++ -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -mtune=generic -m64 -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/gcc -I../../../include/os/Linux -I../../../include -I/opt/epics/modules/opcua-0.10.0/include -I/opt/epics/base-7.0.9/include/compiler/gcc -I/opt/epics/base-7.0.9/include/os/Linux -I/opt/epics/base-7.0.9/include -MM -MF magnets_registerRecordDeviceDriver.d magnets_registerRecordDeviceDriver.cpp
Installing created dbd file ../../../dbd/magnets.dbd
mkdir ../../../dbd
/usr/bin/g++ -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -mtune=generic -m64 -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/gcc -I../../../include/os/Linux -I../../../include -I/opt/epics/modules/opcua-0.10.0/include -I/opt/epics/base-7.0.9/include/compiler/gcc -I/opt/epics/base-7.0.9/include/os/Linux -I/opt/epics/base-7.0.9/include -c magnets_registerRecordDeviceDriver.cpp
/usr/bin/g++ -D_GNU_SOURCE -D_DEFAULT_SOURCE -D_X86_64_ -DUNIX -Dlinux -O3 -g -Wall -mtune=generic -m64 -I. -I../O.Common -I. -I. -I.. -I../../../include/compiler/gcc -I../../../include/os/Linux -I../../../include -I/opt/epics/modules/opcua-0.10.0/include -I/opt/epics/base-7.0.9/include/compiler/gcc -I/opt/epics/base-7.0.9/include/os/Linux -I/opt/epics/base-7.0.9/include -c ../magnetsMain.cpp
/usr/bin/g++ -o magnets -L/home/ws/hi0724/iocs/magnets/lib/linux-x86_64 -L/opt/epics/base-7.0.9/lib/linux-x86_64 -L/opt/epics/modules/opcua-0.10.0/lib/linux-x86_64 -Wl,-rpath,/home/ws/hi0724/iocs/magnets/lib/linux-x86_64 -Wl,-rpath,/opt/epics/base-7.0.9/lib/linux-x86_64 -Wl,-rpath,/opt/epics/modules/opcua-0.10.0/lib/linux-x86_64 -rdynamic -m64 magnets_registerRecordDeviceDriver.o magnetsMain.o -lopcua -ldbRecStd -ldbCore -lca -lCom -lcrypto -lxml2
/usr/bin/ld: cannot find -lxml2: No such file or directory
collect2: error: ld returned 1 exit status
make[3]: *** [/opt/epics/base-7.0.9/configure/RULES_BUILD:232: magnets] Error 1
make[3]: Leaving directory '/home/ws/hi0724/iocs/magnets/magnetsApp/src/O.linux-x86_64'
make[2]: *** [/opt/epics/base-7.0.9/configure/RULES_ARCHS:58: install.linux-x86_64] Error 2
make[2]: Leaving directory '/home/ws/hi0724/iocs/magnets/magnetsApp/src'
make[1]: *** [/opt/epics/base-7.0.9/configure/RULES_DIRS:85: src.install] Error 2
make[1]: Leaving directory '/home/ws/hi0724/iocs/magnets/magnetsApp'
make: *** [/opt/epics/base-7.0.9/configure/RULES_DIRS:85: magnetsApp.install] Error 2
Setup (please complete the following information if applicable):
- OPCUA Support: 0.10.0
- Platform: Ubuntu 24.04
- EPICS Base: 7.0.9
- Client library: open62541
Additional context
A "quick" work around is:
- Rename the
modules/opcua-0.10.0/cfgfolder tocfg.removedand then the IOC builds
Metadata
Metadata
Assignees
Labels
build systemRelated to the build and the Make rulesRelated to the build and the Make rules