相关疑难解决方法(0)

将参数传递给"make run"

我使用Makefiles.

我有一个目标run,它运行构建目标.简化后,它看起来如下:

prog: ....
  ...

run: prog
  ./prog
Run Code Online (Sandbox Code Playgroud)

坐下来.我知道这是巧妙的,但不需要起立鼓掌.

现在,我的问题是 - 有没有办法传递参数?以便

make run asdf --> ./prog asdf
make run the dog kicked the cat --> ./prog the dog kicked the cat
Run Code Online (Sandbox Code Playgroud)

谢谢!

makefile

328
推荐指数
10
解决办法
19万
查看次数

在规则执行时定义make变量

在我的GNUmakefile中,我希望有一个使用临时目录的规则.例如:

out.tar: TMP := $(shell mktemp -d)
        echo hi $(TMP)/hi.txt
        tar -C $(TMP) cf $@ .
        rm -rf $(TMP)
Run Code Online (Sandbox Code Playgroud)

如上所述,上述规则在解析规则时创建临时目录.这意味着,即使我没有直接创建.tar,也会创建许多临时目录.我想避免我的/ tmp被未使用的临时目录弄乱.

是否有办法使该变量仅在触发规则时定义,而不是在定义时定义?

我的主要想法是将mktemp和tar转储到shell脚本中,但这看起来有点难看.

makefile gnu-make

186
推荐指数
4
解决办法
14万
查看次数

如何使用echo o print在NDK-build Android.mk文件中打印var来调试编译?

我正在尝试使用ndk-build编译库时打印一些额外的信息.

例如:

LOCAL_PATH := $(call my-dir)
all:;echo $(LOCAL_PATH)
echo: $(LOCAL_PATH)
print:echo "i'm not working"
Run Code Online (Sandbox Code Playgroud)

当我做ndk-build时,只需编译所有Android.mk,但我没有得到控制台回声.我已经阅读了GNU make info(ndk-build只是一个很小的GNU make),有些帖子说echo必须使用$(VAR)才能工作,但它不适用于我的情况.

有些想法?

debugging makefile android-ndk

64
推荐指数
3
解决办法
5万
查看次数

使文件回显显示"$ PATH"字符串

我试图强制make文件显示下一个字符串:

"Please execute next commands:
setenv PATH /usr/local/greenhills/mips5/linux86:$PATH"
Run Code Online (Sandbox Code Playgroud)

问题在于"$PATH".命令

@echo "setenv PATH /usr/local/greenhills/mips5/linux86:$PATH"
Run Code Online (Sandbox Code Playgroud)

导致结果

"setenv PATH /usr/local/greenhills/mips5/linux86:ATH"
Run Code Online (Sandbox Code Playgroud)

转义字符,引号的任何组合都"$(shell echo "没有得到所需的结果......

有什么建议?

makefile

45
推荐指数
2
解决办法
17万
查看次数

gnu make:列出特定运行中所有变量(或"宏")的值

如何在运行make时列出Makefile中所有变量(也称为宏)的当前值?

例如,如果这是在Makefile中:

CUR-DIR := $(shell /bin/pwd)
LOG-DIR := $(CUR-DIR)/make-logs
Run Code Online (Sandbox Code Playgroud)

然后我想告诉我:

CUR-DIR = /home/johv/src/test
LOG-DIR = /home/johv/src/test/make-logs
Run Code Online (Sandbox Code Playgroud)

makefile gnu-make

38
推荐指数
4
解决办法
3万
查看次数

标签 统计

makefile ×5

gnu-make ×2

android-ndk ×1

debugging ×1