You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Makefile中基于当前工作目录设置条件链接库选项?

自动设置Makefile的LDLIBSOPTIONS路径

可以通过两种方式实现自动判断当前工作目录并配置对应路径,无需手动注释/取消注释:

方案1:使用Makefile内置函数(推荐)

利用Makefile的findstring内置函数检测路径,无需额外调用shell工具,执行效率更高:

# 获取当前工作目录
CURDIR := $(shell pwd)

# 根据目录匹配结果设置路径
ifeq ($(findstring /home/,$(CURDIR)),/home/)
LDLIBSOPTIONS=-L "/home/OpenXLSX/linux/lib"
else
LDLIBSOPTIONS=-L "/office/OpenXLSX/linux/lib"
endif

方案2:使用pwd + grep组合(贴合你的思路)

通过shell命令组合判断目录特征,完全匹配你提出的伪代码逻辑:

# 判断当前目录是否包含/home/,返回标记值
IS_HOME_DIR := $(shell pwd | grep -q "/home/" && echo "yes" || echo "no")

# 根据标记值设置对应路径
ifeq ($(IS_HOME_DIR),yes)
LDLIBSOPTIONS=-L "/home/OpenXLSX/linux/lib"
else
LDLIBSOPTIONS=-L "/office/OpenXLSX/linux/lib"
endif

内容的提问来源于stack exchange,提问作者One_Cable5781

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.11 23:42:07