autotools - 使用非 Automake 外部库进行 distclean 中断
问题描述
我对 Automake 有以下问题。我的项目使用 Autoconf 以及自定义 makefile 和 makefile 模板。我已将项目部分转换为 Autotools,现在我正在使用一些 make 目标以确保一切按预期工作。
该项目包含需要首先构建的外部依赖项。这些是我通过SUBDIRS
主 Makefile.am 添加到项目中的非 Automake(plain make)库。有了这个,我可以成功地构建外部库,甚至将它们安装在正确的prefix
.
然而,问题在于,对于在单独的构建目录中配置的外部非 Automake 库,不会为它们创建任何相应的目录和 Makefile。因此,当我make distclean
在构建目录中运行时,无法找到库和中止的目录。
解决此问题的一种可能方法是configure
在构建目录中创建缺少的目录,并添加一个定义空distclean
目标的虚拟 Makefile。但是,这非常难看,如果可能的话我会避免它。有没有更成熟的方法来处理这种集成问题?
谢谢
解决方案
到目前为止,我能想到的最好方法是在配置时使用AC_CONFIG_LINKS
. 这样,make distclean
将运行distclean
外部库并最终删除构建目录中的链接。
推荐阅读
- php - 在 AWS EC2 中使用 Postfix+Mailtrap 和 Laravel/Lumen 发送邮件 - Ubuntu 18.04
- python - 从 ip camera (ffmpeg) 获取 RTSP 流
- python - 超出最大允许尺寸
- javascript - 无法捆绑 sass 和车把 - webpack 配置
- javascript - 将事件绑定到组件 - React、Redux
- swift - UILabel 在单词中间分裂(或如何获得正确的自动换行)
- c# - Unity3D为什么我的客户端不能调用cmd方法?
- java - 从文件中读取(不同形状的)值,用于计算特定区域
- java - org.springframework.security.core.userdetails.UserDetails 创建用户
- python - 从 for 循环中更新的字典中制作可滚动图