我正在开发一个免费软件项目:https://github.com/ccr/ccr
在这个项目中,我正在构建一些共享对象库,它们实际上是HDF5的插件。
我不想在/ usr / local / lib中安装这些库。我想将它们安装在特殊的HDF5插件目录中。
这是我现在拥有的:
AM_CPPFLAGS = -I$(HDF5_ROOT)/include -I$(BZ2_ROOT)/include
plugindir = /usr/local/hdf5/lib/plugin
# The libh5bz2 library for plugin module.
# Build it as shared library.
lib_LTLIBRARIES = libh5bz2.la
libh5bz2_la_SOURCES = H5Zbzip2.c
LDFLAGS = -L$(BZ2_ROOT)/lib
如何将我的库安装在plugindir中?
前缀(lib_
)确定安装路径(libdir
)。您可以设置自己的前缀:
plugindir = ${prefix}/hdf5/lib/plugin
plugin_LTLIBRARIES = libh5bz2.la
旁注:请勿在您的Makefile中对完整路径进行硬编码。而是使用预定义的变量。例如代替使用类似/usr/local/hdf5/lib/plugin
${prefix}/hdf5/lib/plugin
的名称,以使用户可以轻松更改实际的安装路径。