繁体   English   中英

如何让 SCons 在 Windows 10 命令行上工作?

[英]How do I get SCons to work on the Windows 10 command line?

一段时间以来,我一直在尝试让 SCons 在 Windows 10 cmd 上工作。 我通过 pip 安装它,所以我相信它在正确的目录中,因为当我使用py时 python 在 cmd 中工作。 当我尝试使用scons时,我收到消息

'scons' 不是内部或外部命令,也不是可运行的程序或批处理文件。

因此,我尝试编辑用户和系统路径变量以将 scons 包含在目录'C:\Users\dwayn\AppData\Local\Programs\Python38\Lib\site-packages\scons\'下,但我得到了相同的结果错误。

我应该编辑什么以使 scons 在命令行上运行?

注意:如果有任何影响,我的系统上确实安装了 Anaconda 3。

我也被困在这个问题上 - 在这里快速回答,因为围绕这个领域的文档非常糟糕:

  • 安装 python,包括pip并勾选“将 python 添加到 PATH”
  • 在命令行中运行pip install scons 这会安装 Scons,但它还不能从命令行使用
  • 如果你运行pip show scons它会告诉你 Scons 代码的实际位置(对我来说它是c:\users\username\appdata\roaming\python\python38\site-packages -但这不是你想要添加的你的路
  • Windows 版本的 Scons 通过 wrapper.exe 运行(历史上这是一个 .bat 文件,所以到处都有帖子说只是“找到 scons.bat”......这是不存在的)
  • 这个包装程序scons.exe位于 Python 安装的Scripts文件夹中 - 所以对于 Python 3.8 的通用安装,它会在这里: C:\Users\username\AppData\Roaming\Python\Python38\Scripts - 你应该在这里找到 scons 包装器
    • 这个Scripts文件夹可能位于不同的位置,具体取决于您安装 python 的方式以及您拥有的版本 - 如果您在那里找不到它,那么也可以尝试C:\Python27\ScriptsC:\Program Files (x86)\Python38-32\Scripts
  • 将此文件夹添加到您的 PATH 变量
  • 重新启动 cmd 以选择此更改,并运行where scons以检查它是否有效 - 这应该将文件路径返回到 scons.exe

您现在应该能够从命令行运行scons

您很可能需要添加:

C:\Users\dwayn\AppData\Local\Programs\Python38\Scripts

到你的道路。

在我的系统上,我在C:\Python38中安装了 Python 3.8。 在使用 exe 安装程序安装期间,我选中了将 Python 添加到系统路径的框。 然后我安装了 scons,它也进入了那个位置。 运行 scons 起初不起作用(因为它与以前的版本安装一样),我发现 Python 安装程序添加的路径需要翻转。 它需要是C:\Python38;C:\Python38\Scripts;%PATH% 原因是因为 scons.bat 在C:\Python38而 scons.py 在C:\Python38\Scripts 运行scons需要先找到scons.bat。

我的建议是确保你的系统环境路径中有这两条路径(无论它们在哪里),这样 scons.bat 的路径首先出现,并确保它们出现在其他 Python 安装的任何路径之前。

我通过下载https://scons.org/pages/download.html提供的 zip 文件将 scons 下载到我的 Windows 计算机上。 (在我的例子中,这个文件被命名为 scons-4.2.0.zip)。 下载并解压缩后,我的下载文件夹中有一个“socns-local-4.2.0”文件夹,其中包含 scons.bat 和 scons-4.2.0.bat。 (我没有在下载的文件夹中找到任何 .exe 文件;这可能是用户通过 Python 安装它时才会产生的。)

为了解决问题中显示的错误消息,我转到控制面板中的编辑系统环境变量(如先前答案中的建议)并添加了 scons-4.2.0 文件夹(在我的例子中,位于 C:\Users< my_username>\Downloads\scons-local-4.2.0) 到我的系统路径。 (没有必要为我的用户路径执行此操作。)

这样做之后,我不再收到问题中引用的错误消息。

根据您从包装器获取 SCons 的位置,可能不包括在内。 在那些情况下,通过python -m SCons命令运行它应该可以。

请注意,它区分大小写并且需要与安装文件夹中的名称相匹配,您可以使用以下命令显示该名称: python -m pip show scons

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM