UNRESTRICTED | ILLIMITÉ
Ran into a problem when trying to cross-compile an EPICS application for the ARM architecture under a Linux x86_64 host. My build created both the x86 and x86_64 binary, but would not create the ARM. I eventually change the application makefile:
PROC_HOST = myApplication
to
PROC = myApplication
This caused ARM version to compile, but it failed due to missing libraries in the base, specifically asHost and dbStaticHost. Looking at the makefile for those library, I noticed that it had
LIBRARY_HOST = dbStaticHost
and
LIBRARY_HOST = asHost
These are the only two libraries from the EPICS base I found that define the target using the LIBRARY_HOST (macro?) instead of LIBRARY.
I changed both of these to LIBRARY, recompiled the EPICS based, then successfully recompiled the ARM version of my application.
Is there a reason why these two libraries are defined as LIBRARY_HOST instead of just LIBRARY?