【问题标题】:makefile variable pass [duplicate]makefile变量传递[重复]
【发布时间】:2013-03-22 08:26:09
【问题描述】:

我已经为我的源代码编写了一个 makefile,并且依赖于 makfile 输入变量,我包含了一些可靠的源文件。

 ifeq($(var),mod1)
 src + = mod1.cpp 
 else ifeq ($(var),mod2)
 src + = mod2.cpp 
 else ifeq ($(var),mod3)
 src + = mod3.cpp 
 endif 

我使用 $make var=mod1 编译它。当我想包含单个变量时,这很好用。但我需要提供在 mod1,mod2,mod3 中包含任意变量组合的选项。

如 $make mod1 mod2 或 make mod3 mod1 等

如何在make文件中提供这些组合?

【问题讨论】:

    标签: c++ makefile


    【解决方案1】:

    您可以根据需要传递多个参数来制作文件。

    制作文件(makefile)

    all:
         echo $(NAME)
         echo $(AGE)
         echo $(TEL) 
    

    在控制台中

    make NAME=your_name AGE=your_AGE TEL=your_tel -f makefile
    

    【讨论】:

    • 我也有同样的想法并发布了几乎相同的答案,但删除了它,因为这不是 OP 想要的。 @indra 想避免使用var_name=var_value,而是直接使用var_value
    • @KirilKirov:OP 需要以随机顺序使用参数。所以按常识来说,没有描述符是无法使用的。
    • 这个解决方案可能会有所帮助,是否可以检查用户是否在 make 文件参数中提到了,,? .. 就像我只想检查 $make ENABLE_NAME ENABLE_AGE 等 ..
    猜你喜欢
    • 1970-01-01
    • 2020-01-18
    • 2011-03-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-11
    • 2020-07-14
    • 2019-02-13
    相关资源
    最近更新 更多