python - 如何在 Python 中创建 Makefile
问题描述
我以前从未为 Python 制作过 Makefile,我正在努力弄清楚。我在网上找到了一些示例代码并尝试将其应用于我的代码,但它不起作用。如果我想在命令行中运行程序,我会这样做:python cryptBreak.py encrypted.txt plain.txt
.
到目前为止,这是我为 Makefile 得到的:
PY=python2
MAIN=main
DIR=$(PWD)
.SUFFIXES: .py
FILES = \
cryptBreak.py encrypted.txt plain.txt
All:
echo " $(PY) $(DIR)/$(FILES) " \"'$$1'\" > cryptBreak
chmod 777 cryptBreak.py
解决方案
你还没有解释为什么你需要一个makefile。但是,如果您只想拥有一个生成文件来运行您列出的命令,您只需将命令放入配方中。不需要所有其他的东西。
all:
python cryptBreak.py encrypted.txt plain.txt
而已。现在,在您的 makefile 中,您似乎表明想要运行python2
,而不是python
. 如果您想这样做并创建一个变量来保存它,那么您可以使用:
PY := python2
all:
$(PY) cryptBreak.py encrypted.txt plain.txt
如果您需要您的 makefile 来做其他事情或有其他要求,如果您没有在问题中指定它们,我们将无法提供帮助。
推荐阅读
- dart - 列中的定位小部件导致卡片溢出
- python - 如果需要多个标准输入,python asyncio 会死锁
- php - 仅比较数组的值并获得差异
- laravel - Laravel Notification 重复错误,通过(数据库,电子邮件)发送多个通知
- android - 对话框中 Spinner 和 EditText 不为空时启用按钮
- android - ExecutionException:com.google.android.apps.gsa.sidekick.main.hn:无法完成刷新条目的计划请求。客户端错误代码:3
- python - 为什么在多进程中生成 UUID4 重复?
- java - WildFly 10 与 WebSphere MQ 9:onMessage MDB 部署错误
- javascript - 使用 async/await 来查找 cors 请求的值?
- javascript - React Application SSO 登录问题