Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

M1 macOS 11 pip3 install gftools ERROR: Failed building wheel for skia-pathops #415

Closed
eliheuer opened this issue Sep 20, 2021 · 21 comments · Fixed by fonttools/skia-pathops#49

Comments

@eliheuer
Copy link
Contributor

In a Python3 v3.9.7 venv on macOS 11.6, pip3 install gftools gives me the following error:

Building wheels for collected packages: skia-pathops
  Building wheel for skia-pathops (PEP 517) ... error
  ERROR: Command errored out with exit status 1:
   command: /Users/eli/Py/venvs/python3-venv-google-fonts/bin/python3.9 /Users/eli/Py/venvs/python3-venv-google-fonts/lib/python3.9/site-packages/pip/_vendor/pep517/in_process/_in_process.py build_wheel /var/folders/ht/8b6qb9pj7csc3pn8bgwwx3j80000gn/T/tmp4tvbvn5n
       cwd: /private/var/folders/ht/8b6qb9pj7csc3pn8bgwwx3j80000gn/T/pip-install-cjfqiauh/skia-pathops_3d621440abbc4b908cd5741974c46ed7
  Complete output (84 lines):
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.macosx-11-arm64-3.9
  creating build/lib.macosx-11-arm64-3.9/pathops
  copying src/python/pathops/_version.py -> build/lib.macosx-11-arm64-3.9/pathops
  copying src/python/pathops/__init__.py -> build/lib.macosx-11-arm64-3.9/pathops
  copying src/python/pathops/operations.py -> build/lib.macosx-11-arm64-3.9/pathops
  running build_ext
  building 'pathops._pathops' extension
  creating build/temp.macosx-11-arm64-3.9
  creating build/temp.macosx-11-arm64-3.9/src
  creating build/temp.macosx-11-arm64-3.9/src/python
  creating build/temp.macosx-11-arm64-3.9/src/python/pathops
  clang -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX11.sdk -Isrc/cpp/skia-builder/skia -Isrc/cpp/skia-builder/skia/src -I/opt/homebrew/include -I/opt/homebrew/opt/[email protected]/include -I/opt/homebrew/opt/sqlite/include -I/Users/eli/Py/venvs/python3-venv-google-fonts/include -I/opt/homebrew/Cellar/[email protected]/3.9.7/Frameworks/Python.framework/Versions/3.9/include/python3.9 -c src/python/pathops/_pathops.cpp -o build/temp.macosx-11-arm64-3.9/src/python/pathops/_pathops.o -std=c++14 -stdlib=libc++ -mmacosx-version-min=10.9
  building 'skia' library
  New python executable in /private/var/folders/ht/8b6qb9pj7csc3pn8bgwwx3j80000gn/T/pip-install-cjfqiauh/skia-pathops_3d621440abbc4b908cd5741974c46ed7/build/temp.macosx-11-arm64-3.9/src/cpp/skia-builder/skia/venv2/bin/python
  ERROR: The executable /private/var/folders/ht/8b6qb9pj7csc3pn8bgwwx3j80000gn/T/pip-install-cjfqiauh/skia-pathops_3d621440abbc4b908cd5741974c46ed7/build/temp.macosx-11-arm64-3.9/src/cpp/skia-builder/skia/venv2/bin/python is not functioning
  ERROR: It thinks sys.prefix is '/private/var/folders/ht/8b6qb9pj7csc3pn8bgwwx3j80000gn/T/pip-install-cjfqiauh/skia-pathops_3d621440abbc4b908cd5741974c46ed7' (should be u'/private/var/folders/ht/8b6qb9pj7csc3pn8bgwwx3j80000gn/T/pip-install-cjfqiauh/skia-pathops_3d621440abbc4b908cd5741974c46ed7/build/temp.macosx-11-arm64-3.9/src/cpp/skia-builder/skia/venv2')
  ERROR: virtualenv is not compatible with this system or executable
  Downloading https://files.pythonhosted.org/packages/59/38/55dd25a965990bd93f77eb765b189e72cf581ce1c2de651cb7b1dea74ed1/virtualenv-16.2.0.tar.gz
  Done.
  failed to create virtualenv
  Traceback (most recent call last):
    File "/Users/eli/Py/venvs/python3-venv-google-fonts/lib/python3.9/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 349, in <module>
      main()
    File "/Users/eli/Py/venvs/python3-venv-google-fonts/lib/python3.9/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 331, in main
      json_out['return_val'] = hook(**hook_input['kwargs'])
    File "/Users/eli/Py/venvs/python3-venv-google-fonts/lib/python3.9/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 248, in build_wheel
      return _build_backend().build_wheel(wheel_directory, config_settings,
    File "/private/var/folders/ht/8b6qb9pj7csc3pn8bgwwx3j80000gn/T/pip-build-env-lsiv4ckc/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 221, in build_wheel
      return self._build_with_temp_dir(['bdist_wheel'], '.whl',
    File "/private/var/folders/ht/8b6qb9pj7csc3pn8bgwwx3j80000gn/T/pip-build-env-lsiv4ckc/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 207, in _build_with_temp_dir
      self.run_setup()
    File "/private/var/folders/ht/8b6qb9pj7csc3pn8bgwwx3j80000gn/T/pip-build-env-lsiv4ckc/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 258, in run_setup
      super(_BuildMetaLegacyBackend,
    File "/private/var/folders/ht/8b6qb9pj7csc3pn8bgwwx3j80000gn/T/pip-build-env-lsiv4ckc/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 150, in run_setup
      exec(compile(code, __file__, 'exec'), locals())
    File "setup.py", line 367, in <module>
      setup(**setup_params)
    File "/private/var/folders/ht/8b6qb9pj7csc3pn8bgwwx3j80000gn/T/pip-build-env-lsiv4ckc/overlay/lib/python3.9/site-packages/setuptools/__init__.py", line 153, in setup
      return distutils.core.setup(**attrs)
    File "/opt/homebrew/Cellar/[email protected]/3.9.7/Frameworks/Python.framework/Versions/3.9/lib/python3.9/distutils/core.py", line 148, in setup
      dist.run_commands()
    File "/opt/homebrew/Cellar/[email protected]/3.9.7/Frameworks/Python.framework/Versions/3.9/lib/python3.9/distutils/dist.py", line 966, in run_commands
      self.run_command(cmd)
    File "/opt/homebrew/Cellar/[email protected]/3.9.7/Frameworks/Python.framework/Versions/3.9/lib/python3.9/distutils/dist.py", line 985, in run_command
      cmd_obj.run()
    File "/private/var/folders/ht/8b6qb9pj7csc3pn8bgwwx3j80000gn/T/pip-build-env-lsiv4ckc/overlay/lib/python3.9/site-packages/wheel/bdist_wheel.py", line 299, in run
      self.run_command('build')
    File "/opt/homebrew/Cellar/[email protected]/3.9.7/Frameworks/Python.framework/Versions/3.9/lib/python3.9/distutils/cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "/opt/homebrew/Cellar/[email protected]/3.9.7/Frameworks/Python.framework/Versions/3.9/lib/python3.9/distutils/dist.py", line 985, in run_command
      cmd_obj.run()
    File "/opt/homebrew/Cellar/[email protected]/3.9.7/Frameworks/Python.framework/Versions/3.9/lib/python3.9/distutils/command/build.py", line 135, in run
      self.run_command(cmd_name)
    File "/opt/homebrew/Cellar/[email protected]/3.9.7/Frameworks/Python.framework/Versions/3.9/lib/python3.9/distutils/cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "/opt/homebrew/Cellar/[email protected]/3.9.7/Frameworks/Python.framework/Versions/3.9/lib/python3.9/distutils/dist.py", line 985, in run_command
      cmd_obj.run()
    File "setup.py", line 216, in run
      build_ext.run(self)
    File "/private/var/folders/ht/8b6qb9pj7csc3pn8bgwwx3j80000gn/T/pip-build-env-lsiv4ckc/overlay/lib/python3.9/site-packages/setuptools/command/build_ext.py", line 79, in run
      _build_ext.run(self)
    File "/private/var/folders/ht/8b6qb9pj7csc3pn8bgwwx3j80000gn/T/pip-build-env-lsiv4ckc/overlay/lib/python3.9/site-packages/Cython/Distutils/old_build_ext.py", line 186, in run
      _build_ext.build_ext.run(self)
    File "/opt/homebrew/Cellar/[email protected]/3.9.7/Frameworks/Python.framework/Versions/3.9/lib/python3.9/distutils/command/build_ext.py", line 340, in run
      self.build_extensions()
    File "/private/var/folders/ht/8b6qb9pj7csc3pn8bgwwx3j80000gn/T/pip-build-env-lsiv4ckc/overlay/lib/python3.9/site-packages/Cython/Distutils/old_build_ext.py", line 195, in build_extensions
      _build_ext.build_ext.build_extensions(self)
    File "/opt/homebrew/Cellar/[email protected]/3.9.7/Frameworks/Python.framework/Versions/3.9/lib/python3.9/distutils/command/build_ext.py", line 449, in build_extensions
      self._build_extensions_serial()
    File "/opt/homebrew/Cellar/[email protected]/3.9.7/Frameworks/Python.framework/Versions/3.9/lib/python3.9/distutils/command/build_ext.py", line 474, in _build_extensions_serial
      self.build_extension(ext)
    File "setup.py", line 194, in build_extension
      libraries=self.get_libraries(ext),
    File "setup.py", line 210, in get_libraries
      library_dir = self._library_builders[library](self.build_temp)
    File "setup.py", line 269, in build_skia
      subprocess.run(build_cmd, check=True, env=env)
    File "/opt/homebrew/Cellar/[email protected]/3.9.7/Frameworks/Python.framework/Versions/3.9/lib/python3.9/subprocess.py", line 528, in run
      raise CalledProcessError(retcode, process.args,
  subprocess.CalledProcessError: Command '['python2', 'src/cpp/skia-builder/build_skia.py', 'build/temp.macosx-11-arm64-3.9/src/cpp/skia-builder/skia']' returned non-zero exit status 1.
  ----------------------------------------
  ERROR: Failed building wheel for skia-pathops
Failed to build skia-pathops
ERROR: Could not build wheels for skia-pathops which use PEP 517 and cannot be installed directly
@eliheuer
Copy link
Contributor Author

On an Intel mac running macOS 11 pip3 install gftools works as expected for me and installs skia-pathops v0.6.0.post3.

@eliheuer eliheuer changed the title macOS 11.6 pip3 install gftools ERROR: Failed building wheel for skia-pathops M1 macOS 11 pip3 install gftools ERROR: Failed building wheel for skia-pathops Sep 20, 2021
@anthrotype
Copy link
Member

anthrotype commented Sep 20, 2021

there are no precompiled wheels for skia-pathops for the arm64 platform used by M1 macs yet, so it's trying to build from source (we should add them at some point, just haven't found the time to update the CI workflow yet).
The error seems to be related to virtualenv (see lines with "ERROR" in the traceback that you copy/pasted above). Building skia from source currently requires python2.7, however creating a virtualenv on python2.7 on M1 macs is currently not supported
pypa/virtualenv#2024

The build_skia.py script (https://github.com/fonttools/skia-builder/blob/master/build_skia.py) uses virtualenv to being able to temporarily install ninja using pip, without modifying the system environment.

One way to fix this when building libskia for M1 is to not use virtualenv but instead ensure ninja is preinstalled and available on PATH. I filed an issue at fonttools/skia-builder#1

@eliheuer if you want to try building skia-pathops from source manually, you can try these steps (untested because I don't have M1 machine available to try these out).

# make sure you have a `python2` executable required for building skia from source (not sure if you get that automaticaly on M1 macs or not.. I think you can also get it with `brew install python@2`)
$ python2 --version

# clone skia-pathops repo locally (and recursively, including submodules) and move to the cloned repo folder
$ git clone --recursive https://github.com/fonttools/skia-pathops
$ cd skia-pathops

# install ninja globally (e.g. using brew)
$ brew install ninja

# build libskia without creating a virtualenv (using globally installed ninja); at the end of this, if all goes well, you should find the new static library file "libskia.a" in a subfolder named "build/libskia"  
$ python2 src/cpp/skia-builder/build_skia.py --no-virtualenv build/libskia

# build skia-pathops wheel without rebuilding libskia from source, but linking it to the previously compiled one
$ BUILD_SKIA_FROM_SOURCE=0 SKIA_LIBRARY_DIR=build/libskia pip wheel -v --use-feature=in-tree-build -w dist .

# check you built the wheel
$ ls dist/skia_pathops-*.whl

# pip install from the local wheel file
$ pip install dist/skia_pathops-*.whl

@m4rc1e
Copy link
Collaborator

m4rc1e commented Sep 20, 2021

Building skia from source currently requires python2.7

I'm assuming this is because some dependencies are 2.7 only?

@anthrotype
Copy link
Member

yes, the gn build tool used by skia is python2 only (at least the last time I checked, not sure if they have now made it py2.py3 compatible)

@anthrotype
Copy link
Member

https://bugs.chromium.org/p/skia/issues/detail?id=9079 looks like it should now work with either py2 or py3, I'm gonna try and confirm that's the case

@anthrotype
Copy link
Member

I'm working on this branch on skia-pathops repository to update internal skia to chrome/m95 which also includes some fixes for building skia with py3.
It seems to build successfully when I use python3.9 on my intel Mac.
Can you please try to pip install from directly from that branch, but using an M1 mac and see if it also manages to build and install?

pip install -v git+https://github.com/fonttools/skia-pathops.git@chrome/m95-py3#egg=skia-pathops

@eliheuer
Copy link
Contributor Author

eliheuer commented Sep 21, 2021

Thank you for the detailed help @anthrotype!

I tried the above command on a M1 macOS 11.6 machine and got the following error:

$ pip install -v git+https://github.com/fonttools/skia-pathops.git@chrome/m95-py3#egg=skia-pathops
Using pip 21.2.4 from /Users/eli/Py/venvs/python3-venv-google-fonts/lib/python3.9/site-packages/pip (python 3.9)
Collecting skia-pathops
  Cloning https://github.com/fonttools/skia-pathops.git (to revision chrome/m95-py3) to /private/var/folders/ht/8b6qb9pj7csc3pn8bgwwx3j80000gn/T/pip-install-642dwyyf/skia-pathops_94e494234e5a4b839e63e5383439cc6e
  Running command git clone -q https://github.com/fonttools/skia-pathops.git /private/var/folders/ht/8b6qb9pj7csc3pn8bgwwx3j80000gn/T/pip-install-642dwyyf/skia-pathops_94e494234e5a4b839e63e5383439cc6e
  Running command git show-ref chrome/m95-py3
  8f8e6ecffb67ba693a075233b666bd91876e9adc refs/remotes/origin/chrome/m95-py3
  Running command git symbolic-ref -q HEAD
  refs/heads/master
  Running command git checkout -b chrome/m95-py3 --track origin/chrome/m95-py3
  Switched to a new branch 'chrome/m95-py3'
  Branch 'chrome/m95-py3' set up to track remote branch 'chrome/m95-py3' from 'origin'.
  Resolved https://github.com/fonttools/skia-pathops.git to commit 8f8e6ecffb67ba693a075233b666bd91876e9adc
  Running command git submodule update --init --recursive -q
  From https://github.com/fonttools/skia-builder
   * branch            9488b82670ca155563aa5af46effbfd8f2edabce -> FETCH_HEAD
  error: RPC failed; curl 56 LibreSSL SSL_read: SSL_ERROR_SYSCALL, errno 54
  fatal: the remote end hung up unexpectedly
  fatal: early EOF
  fatal: index-pack failed
  fatal: clone of 'https://github.com/fonttools/skia' into submodule path '/private/var/folders/ht/8b6qb9pj7csc3pn8bgwwx3j80000gn/T/pip-install-642dwyyf/skia-pathops_94e494234e5a4b839e63e5383439cc6e/src/cpp/skia-builder/skia' failed
  Failed to clone 'skia'. Retry scheduled
  error: RPC failed; curl 56 LibreSSL SSL_read: SSL_ERROR_SYSCALL, errno 54
  fatal: the remote end hung up unexpectedly
  fatal: early EOF
  fatal: index-pack failed
  fatal: clone of 'https://github.com/fonttools/skia' into submodule path '/private/var/folders/ht/8b6qb9pj7csc3pn8bgwwx3j80000gn/T/pip-install-642dwyyf/skia-pathops_94e494234e5a4b839e63e5383439cc6e/src/cpp/skia-builder/skia' failed
  Failed to clone 'skia' a second time, aborting
  Failed to recurse into submodule path 'src/cpp/skia-builder'
WARNING: Discarding git+https://github.com/fonttools/skia-pathops.git@chrome/m95-py3#egg=skia-pathops. Command errored out with exit status 1: git submodule update --init --recursive -q Check the logs for full command output.
ERROR: Could not find a version that satisfies the requirement skia-pathops (unavailable) (from versions: 0.1.0.dev0, 0.1.0.dev1, 0.1.0, 0.1.1, 0.1.2, 0.1.3, 0.1.4, 0.1.5, 0.2.0.post2, 0.2.1, 0.3.0, 0.4.0, 0.4.1, 0.4.2, 0.5.0, 0.5.1, 0.5.1.post1, 0.5.2b2, 0.6.0, 0.6.0.post1, 0.6.0.post2, 0.6.0.post3)
ERROR: No matching distribution found for skia-pathops (unavailable)

@eliheuer
Copy link
Contributor Author

I'm trying to follow the directions in this post as well, but git clone --recursive https://github.com/fonttools/skia-pathops is taking a long time and keeps timing out. Will report back if I have any success with this.

@anthrotype
Copy link
Member

hm, cloning skia (recursively) may take a while, but it should complete. That looks like a network error to me. If you like I can try to send you a zip file containing the source distribution as created by python setup.py sdist, which you can then use with pip wheel or pip install to build/install from.

@eliheuer
Copy link
Contributor Author

eliheuer commented Sep 30, 2021

git clone --recursive https://github.com/fonttools/skia-pathops takes a long time on my internet connection, I'm still getting this:

error: RPC failed; curl 56 LibreSSL SSL_read: SSL_ERROR_SYSCALL, errno 54
fatal: the remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed
fatal: clone of 'https://github.com/fonttools/skia' into submodule path '/Users/eli/Py/repos/skia-pathops/src/cpp/skia-builder/skia' failed

@simoncozens
Copy link
Contributor

simoncozens commented Sep 30, 2021

So, standard troubleshooting advice. Step one, get more information:

  • Try running with --progress
  • Try running with -v

Step two, change the parameters and see which makes a difference:

  • Does it still happen without the --recursive option?
  • Does it still happen with --depth 1 --shallow-submodules?
  • Does it still happen on a different network?
  • Does it still happen on a different machine on the same network?
  • Does it still happen on a different operating system (Linux virtual machine on the same computer)?
  • Does it still happen with wired instead of wireless, or vice versa?

@anthrotype
Copy link
Member

anthrotype commented Sep 30, 2021

I'm having some mild success attempting to build a universal wheel for skia-pathops by cross-compiling for arm64 from my intel x86_64 machine, but I'd like to know if what I have so far works on an actual M1 machine.

@eliheuer can you please try to pip install from the attached wheel and let me know if you can import pathops, or try to build a font with fontmake --overlaps-backend "pathops" (to override the default booleanOperations)

Thanks!

skia_pathops-0.6.0.post4.dev6+gbc5aa20-cp39-cp39-macosx_10_9_universal2.whl.zip

EDIT: you need to use Python 3.9 for the above wheel to work

@anthrotype
Copy link
Member

@eliheuer another thing I'd like you to try for me is if you could download the source distribution package below and try to build a wheel from it with the following command:

$ pip wheel -v --use-feature=in-tree-build -w dist skia-pathops-0.6.0.post4.dev8+gcaeaeb1.zip

If the build completes, you should see a new wheel file in the dist/ subfolder. Can you tell me what's the filename of the new wheel? And are you able to then install from it and import it?

The file is big (around 60MB) so I can't upload it to Github, I put it in my Google Drive at this link:

https://drive.google.com/file/d/1wbxRFBhjdPHLWa6AyhPK94MdO1xnEBWB/view?usp=sharing

Thanks!

@eliheuer
Copy link
Contributor Author

eliheuer commented Oct 1, 2021

@anthrotype Thank you! I just tried the wheel from this post and it seems to have worked:

(test-venv)
MINI-M1 🌎 ~/Temp/skia-test
11379 ◯ : pip3 install skia_pathops-0.6.0.post4.dev6+gbc5aa20-cp39-cp39-macosx_10_9_universal2.whl                                   [~]
Processing ./skia_pathops-0.6.0.post4.dev6+gbc5aa20-cp39-cp39-macosx_10_9_universal2.whl
Installing collected packages: skia-pathops
Successfully installed skia-pathops-0.6.0.post4.dev6+gbc5aa20

(test-venv)
MINI-M1 🌎 ~/Temp/skia-test
11380 ◯ : python3                                                                                                                    [~]
Python 3.9.7 (default, Sep  3 2021, 04:31:11)
[Clang 12.0.5 (clang-1205.0.22.9)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import pathops
>>> dir(pathops)
['ArcSize', 'Direction', 'FillType', 'LineCap', 'LineJoin', 'OpBuilder', 'OpenPathError', 'Path', 'PathOp', 'PathOpsError', 'PathPen', 'PathVerb', 'UnsupportedVerbError', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__path__', '__spec__', '__version__', '_pathops', '_version', 'bits2float', 'decompose_quadratic_segment', 'difference', 'float2bits', 'intersection', 'op', 'operations', 'simplify', 'union', 'xor']
>>>

The fontmake flag also worked for me:

fontmake -u font.ufo -o ttf --overlaps-backend "pathops"

@anthrotype
Copy link
Member

I have just released skia-pathops v0.7.0 which should finally work with M1 Macs. Please pip install --upgrade skia-pathops, test and and let me know if it's working!

@eliheuer
Copy link
Contributor Author

eliheuer commented Oct 1, 2021

Thank you @anthrotype ! This is huge, it looks like all the GF CLI tools work on M1 now!

I was able to install gftools after pip install --upgrade skia-pathops

@eliheuer
Copy link
Contributor Author

eliheuer commented Oct 4, 2021

Hello @anthrotype, one last thing, I forgot to respond to this request.

$ pip wheel -v --use-feature=in-tree-build -w dist skia-pathops-0.6.0.post4.dev8+gcaeaeb1.zip

Worked for me and produced a wheel in the dist/ directory called:

skia_pathops-0.6.0.post4.dev8+gcaeaeb1-cp39-cp39-macosx_11_0_arm64.whl

I was able to import this in a venv: import pathops

Thanks again for all your help with this!

@Clssrie
Copy link

Clssrie commented Mar 30, 2022

gives me the following error:
hello,
python2 src/cpp/skia-builder/build_skia.py --no-virtualenv build/libskia
gives me the following error:
image

@simoncozens
Copy link
Contributor

That's a Skia build issue. If you look where it says urllib2.URLError: <urlopen error [Error 60] Operation timed out>, that tells you that the program was trying to open a URL (to download a dependency - notice the command at the end is git-sync-deps) but the web server it was trying to get the dependency from did not respond in time. That's probably just a temporary error - try again?

@Clssrie
Copy link

Clssrie commented Mar 30, 2022

hello,I tried 6 times and it always came out like this。

That's a Skia build issue. If you look where it says urllib2.URLError: <urlopen error [Error 60] Operation timed out>, that tells you that the program was trying to open a URL (to download a dependency - notice the command at the end is git-sync-deps) but the web server it was trying to get the dependency from did not respond in time. That's probably just a temporary error - try again?

@graphicore
Copy link
Contributor

graphicore commented Mar 30, 2022

@Clssrie have you tried a python version >= 3.6, python2 is not supported according to https://pypi.org/project/skia-pathops/0.7.0

python2 src/cpp/skia-builder/build_skia.py --no-virtualenv build/libskia

Sorry, just saw:

yes, the gn build tool used by skia is python2 only (at least the last time I checked, not sure if they have now made it py2.py3 compatible)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
6 participants