EPICS R3.14 Channel Access Reference Manual 原文地址:https://epics.anl.gov/base/R3-14/12-docs/CAref.html#Building.
必须的头文件(.h)
使用本文档描述的CA客户端库函数的应用程序将需要引入cadef.h头文件,如下所示:
#include "cadef.h"
此头文件位于路径“<EPICS base> / include /”中。 该路径还包括许多其他的头文件(用于特定操作系统和其他需要),因此应用程序还必须在其头文件搜索路径中指定“<EPICS base> / include / os / <arch>”。
必须的库文件
使用本文档中描述的通道访问客户端库函数(Channel Access Client Library functions)的应用程序需要链接EPICS CA客户端库文件(EPICS CA Client Library)以及EPICS命令库函数(EPICS Common Library)。 EPICS CA客户端库调用EPICS公共库。 下表显示了UNIX和Windows系统上这些库的名称。

上述库位于“<EPICS base> / lib / <architecture>”中。
编译器和系统特定的构建选项
如果您不使用EPICS构建环境(分层make文件),那么此节可能对您运行其中一个EPICS的编译文件(Makefile)并观察编译/链接行有所帮助。 这可能是捕获构建环境所需的最新系统和编译器特定选项的最简单方法。 我已经在下面列出了一些典型构建行的快照,但是恐怕这些信息也有可能过时了。
典型的Linux系统构建选项
/usr/bin/gcc -c -D_POSIX_C_SOURCE=199506L -D_POSIX_THREADS -D_XOPEN_SOURCE=500 -DOSITHREAD_USE_DEFAULT_STACK -D_X86_ -DUNIX -D_BSD_SOURCE -Dlinux -D_REENTRANT -ansi -O3 -Wall -I. -I.. -I../../../include/os/Linux -I../../../include ../acctst.c
/usr/bin/g++ -o acctst -L/home/user/epicsR3.14/epics/base/lib/linux-x86/ -Wl,-rpath,/mnt/bogart_home/hill/epicsR3.14/epics/base/lib/linux-x86 acctstMain.o acctst.o -lca -lCom
典型的Solaris构建选项
/opt/SUNWspro/bin/cc -c -D_POSIX_C_SOURCE=199506L -D_XOPEN_SOURCE=500 -DOSITHREAD_USE_DEFAULT_STACK -DUNIX -DSOLARIS=9 -mt -D__EXTENSIONS__ -Xc -v -xO4 -I. -I.. -I./../../../include/os/solaris -I./../../../include ../acctst.c
/opt/SUNWspro/bin/CC -o acctst -L/home/phoebus1/JHILL/epics/base/lib/solaris-sparc/ -mt -z ignore -z combreloc -z lazyload -R/home/disk1/user/epics/base/lib/solaris-sparc acctstMain.o acctst.o -lca -lCom
典型的Windows系统构建选项
cl -c /nologo /D__STDC__=0 /Ox /GL /W3 /w44355 /MD -I. -I.. -I..\\..\\..\\include\\os\\WIN32 -I..\\..\\..\\include ..\\acctst.c
link -nologo /LTCG /incremental:no /opt:ref /release /version:3.14 -out:acctst.exe acctstMain.obj acctst.obj d:/user/R3.14.clean/epics/base/lib/WIN32-x86/ca.lib d:/user/R3.14.clean/epics/base/lib/WIN32-x86/
典型的vxWorks构建选项
/usr/local/xcomp/ppc/bin/ccppc -c -D_POSIX_SOURCE -DCPU=PPC603 -DvxWorks -include /home/vx/tornado20/target/h/vxWorks.h -ansi -O3 -Wall -mcpu=603 -mstrict-align -fno-builtin -I. -I.. -I../../../include/os/vxWorks -I../../../include -I/home/vx/tornado20/target/h ../acctst.c
其他系统和编译器
感谢并接受您对其他平台的构建方法的贡献。