【问题标题】:Different Python versions when launching from Terminal/C++ program从终端/C++ 程序启动时的不同 Python 版本
【发布时间】:2021-12-11 01:14:10
【问题描述】:

如果我在macOS 上从终端启动python --version,我将获得3.9 版本。 python3 也是如此。

但如果我从我的 C++ 程序启动这些(我使用 QProcess),我会得到 2.7 对应 python3.7 对应 python3

为什么会这样?

有什么方法可以启动与终端启动相同的 python 版本?

有没有办法找到机器上安装的最新python的路径(我需要支持macOS和Linux)。

Addition #1. 在另一台 macOS 机器上,Python 3.10 安装在 /Applications 文件夹中。 python3 --version 显示预期的 3.10 版本,但我的 C++ 程序甚至没有看到这个 python3,因此 macOS 显示其系统错误消息,建议用户安装其他组件(无法通过)。

【问题讨论】:

标签: shell terminal qprocess


【解决方案1】:

这是 macOS 的问题。从 Dock 启动的应用程序具有与 shell 不同的 PATH 环境变量。 这是一个关于如何解决这个问题的问题:Get bash $PATH from C++ program

【讨论】:

    猜你喜欢
    • 2020-07-05
    • 1970-01-01
    • 2019-03-12
    • 2015-03-12
    • 1970-01-01
    • 2011-04-26
    • 2019-07-02
    • 2021-10-06
    • 1970-01-01
    相关资源
    最近更新 更多