Travis CI在macOS上找不到python3

问题描述 投票:2回答:1

我有以下.travis.yml文件:

language: objective-c 

# macOS and Xcode Version
osx_image: xcode10

# Build dependencies
install:
  - brew install python3
  - ./fetchDependencies -v

到目前为止运行良好。但是,fetchDependencies bash脚本调用的其中一个构建现在在运行python3时需要cmake,并且在Travis中看到以下错误:

CMake Error at /usr/local/Cellar/cmake/3.11.4/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:137 (message):
  Could NOT find PythonInterp: Found unsuitable version "2.7.15", but
  required is at least "3" (found /usr/local/bin/python)

FWIW ...在Travis上执行brew install python3命令的结果是:

Warning: python 3.6.5_1 is already installed and up-to-date
To reinstall 3.6.5_1, run `brew reinstall python`

编辑:遵循@SiadArdroumli注释中链接中的建议,我将.travis.yml修改为以下内容,但得到相同的错误:

language: objective-c 

# macOS and Xcode Version
osx_image: xcode10

# Build dependencies
install:
  - brew install python3
  - pip3 install virtualenv
  - virtualenv -p python3 .
  - ./fetchDependencies -v

为什么cmake找不到python3 ...而我们该怎么办?

python python-3.x macos cmake travis-ci
1个回答
0
投票

我在寻找答案时遇到了您的问题。我找到了一个对我有用的临时解决方案。

/usr/local/bin/python实际上是别名文件

/usr/local/bin/下,您也会找到/usr/local/bin/python3,它也是一个别名文件。

我所做的是将/usr/local/bin/python重命名为/usr/local/bin/pythonx(临时名称)

并将/usr/local/bin/python3重命名为/usr/local/bin/python

在此切换之后,cmake将找到具有正确版本的python,其余的应该可用。

但是根据我的阅读,很多Apple应用程序都依赖Python 2才能正常运行,因此,在获得cmake命令后,您可能需要将它们切换回原始名称,以避免不可预见的副作用。 >

© www.soinside.com 2019 - 2024. All rights reserved.