tbodt/v8py

Broken installation on ARM (Raspberry Pi)

peter254 opened this issue · 2 comments

Hey,
thanks for this great library. I've gotten it to compile/install on Mac - but only after installing greenstack. Now I am trying the same thing on my Raspberry Pi (OS: Raspian, based on Debian 9) - I get an error (logs below), but here I cannot install greenstack (using pip), because the architecture is not supported (Logs Below)

v8py installation Log:

Installing collected packages: v8py, soupsieve, beautifulsoup4, urllib3, certifi, chardet, idna, requests
  Running setup.py install for v8py ... error
    ERROR: Complete output from command /home/pi/Downloads/venv-linux/bin/python3.7 -u -c 'import setuptools, tokenize;__file__='"'"'/tmp/pip-install-o_iqmrc2/v8py/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-ornttv7l/install-record.txt --single-version-externally-managed --compile --install-headers /home/pi/Downloads/venv-linux/include/site/python3.7/v8py:
    ERROR: running install
    running build
    running build_py
    creating build
    creating build/lib.linux-armv7l-3.7
    creating build/lib.linux-armv7l-3.7/v8py
    copying v8py/debug.py -> build/lib.linux-armv7l-3.7/v8py
    copying v8py/__init__.py -> build/lib.linux-armv7l-3.7/v8py
    copying v8py/devtools.py -> build/lib.linux-armv7l-3.7/v8py
    running build_ext
    running build_v8
    libv8_libplatform.a not found
    installing depot tools
    git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
    Klone nach 'depot_tools' ...
    downloading v8
    fetch --force v8
    WARNING: Your metrics.cfg file was invalid or nonexistent. A new one will be created.
    
    ________ running 'git -c core.deltaBaseCacheLimit=512m clone --no-checkout --progress https://chromium.googlesource.com/v8/v8.git /tmp/pip-install-o_iqmrc2/v8py/_gclient_v8_T9yMVW' in '/tmp/pip-install-o_iqmrc2/v8py'
    Cloning into '/tmp/pip-install-o_iqmrc2/v8py/_gclient_v8_T9yMVW'...
    remote: Sending approximately 847.15 MiB ...
    remote: Counting objects: 8057, done     
    remote: Finding sources: 100% (397/397)           
    remote: Total 682707 (delta 544377), reused 682541 (delta 544377)  
    Receiving objects: 100% (682707/682707), 846.19 MiB | 6.94 MiB/s, done.
    Resolving deltas: 100% (544377/544377), done.
    ________ running '/usr/bin/python2 v8/third_party/depot_tools/update_depot_tools_toggle.py --disable' in '/tmp/pip-install-o_iqmrc2/v8py'
    ________ running '/usr/bin/python2 v8/build/landmines.py --landmine-scripts v8/tools/get_landmines.py' in '/tmp/pip-install-o_iqmrc2/v8py'
    ________ running 'download_from_google_storage --no_resume --platform=linux* --no_auth --bucket chromium-clang-format -s v8/buildtools/linux64/clang-format.sha1' in '/tmp/pip-install-o_iqmrc2/v8py'
    0> Downloading v8/buildtools/linux64/clang-format...
    Downloading 1 files took 34.170085 second(s)
    Hook 'download_from_google_storage --no_resume '--platform=linux*' --no_auth --bucket chromium-clang-format -s v8/buildtools/linux64/clang-format.sha1' took 34.57 secs
    ________ running 'download_from_google_storage --no_resume --no_auth -u --bucket v8-wasm-spec-tests -s v8/test/wasm-spec-tests/tests.tar.gz.sha1' in '/tmp/pip-install-o_iqmrc2/v8py'
    0> Downloading v8/test/wasm-spec-tests/tests.tar.gz...
    0> Extracting 74 entries from v8/test/wasm-spec-tests/tests.tar.gz to v8/test/wasm-spec-tests/tests
    Downloading 1 files took 29.959118 second(s)
    Hook 'download_from_google_storage --no_resume --no_auth -u --bucket v8-wasm-spec-tests -s v8/test/wasm-spec-tests/tests.tar.gz.sha1' took 30.19 secs
    ________ running '/usr/bin/python2 v8/build/linux/sysroot_scripts/install-sysroot.py --arch=arm' in '/tmp/pip-install-o_iqmrc2/v8py'
    Installing Debian sid arm root image: /tmp/pip-install-o_iqmrc2/v8py/v8/build/linux/debian_sid_arm-sysroot
    Downloading https://commondatastorage.googleapis.com/chrome-linux-sysroot/toolchain/ef5c4f84bcafb7a3796d36bb1db7826317dde51c/debian_sid_arm_sysroot.tar.xz
    Hook '/usr/bin/python2 v8/build/linux/sysroot_scripts/install-sysroot.py --arch=arm' took 41.15 secs
    ________ running '/usr/bin/python2 v8/third_party/binutils/download.py' in '/tmp/pip-install-o_iqmrc2/v8py'
    ________ running '/usr/bin/python2 v8/tools/clang/scripts/update.py' in '/tmp/pip-install-o_iqmrc2/v8py'
    Downloading https://commondatastorage.googleapis.com/chromium-browser-clang/Linux_x64/clang-363790-d874c057-3.tgz .......... Done.
    Hook '/usr/bin/python2 v8/tools/clang/scripts/update.py' took 18.70 secs
    ________ running '/usr/bin/python2 v8/build/util/lastchange.py -o v8/build/util/LASTCHANGE' in '/tmp/pip-install-o_iqmrc2/v8py'
    Running: gclient config --spec 'solutions = [
      {
        "url": "https://chromium.googlesource.com/v8/v8.git",
        "managed": False,
        "name": "v8",
        "deps_file": "DEPS",
        "custom_deps": {},
      },
    ]
    '
    Running: gclient sync --with_branch_heads
    Running: git submodule foreach 'git config -f $toplevel/.git/config submodule.$name.ignore all'
    Running: git config --add remote.origin.fetch '+refs/tags/*:refs/tags/*'
    Running: git config diff.ignoreSubmodules all
    git checkout -f branch-heads/5.9
    Vorherige Position von HEAD war 24886f2d1c... [arm64,x64] Deduplicate entries in constant pools on arm64 and x64
    HEAD ist jetzt bei 5e1937396e... Version 5.9.211.43
    gclient sync
    
    WARNING: 'v8/third_party/googletest/src' is no longer part of this client.
    It is recommended that you manually remove it or use 'gclient sync -D' next time.
    
    WARNING: 'v8/third_party/perfetto' is no longer part of this client.
    It is recommended that you manually remove it or use 'gclient sync -D' next time.
    
    WARNING: 'v8/third_party/protobuf' is no longer part of this client.
    It is recommended that you manually remove it or use 'gclient sync -D' next time.
    
    WARNING: 'v8/buildtools/third_party/libunwind/trunk' is no longer part of this client.
    It is recommended that you manually remove it or use 'gclient sync -D' next time.
    
    WARNING: 'v8/third_party/depot_tools' is no longer part of this client.
    It is recommended that you manually remove it or use 'gclient sync -D' next time.
    
    WARNING: 'v8/test/wasm-js/data' is no longer part of this client.
    It is recommended that you manually remove it or use 'gclient sync -D' next time.
    ________ running '/usr/bin/python2 v8/gypfiles/landmines.py' in '/tmp/pip-install-o_iqmrc2/v8py'
    Clobbering due to:
    --- old_landmines	Sun Jun 23 14:09:02 2019
    +++ new_landmines	Sun Jun 23 14:13:27 2019
    @@ -18,18 +17,0 @@
    -Clobber to possibly resolve build failure on Misc V8 Linux gcc.
    -Builders switching from make to ninja will clobber on this.
    -Need to clobber everything due to an IDL change in r154579 (blink)
    -Need to clobber everything due to gen file moves in r175513 (Blink)
    -Clobber to get rid of obselete test plugin after r248358
    -Clobber to rebuild GN files for V8
    -Clobber to get rid of stale generated mojom.h files
    -Need to clobber everything due to build_nexe change in nacl r13424
    -[chromium-dev] PSA: clobber build needed for IDR_INSPECTOR_* compil...
    -blink_resources.grd changed: crbug.com/400860
    -ninja dependency cycle: crbug.com/408192
    -Clobber to fix missing NaCl gyp dependencies (crbug.com/427427).
    -Another clobber for missing NaCl gyp deps (crbug.com/427427).
    -Clobber to fix GN not picking up increased ID range (crbug.com/444902)
    -Remove NaCl toolchains from the output dir (crbug.com/456902)
    -CLobber all to fix GN breakage (crbug.com/736215)
    -The Great Blink mv for source files (crbug.com/768828)
    -Clobber to workaround buggy .ninja_deps cycle (crbug.com/934404)
    ________ running 'download_from_google_storage --no_resume --platform=win32 --no_auth --bucket chromium-clang-format -s v8/buildtools/win/clang-format.exe.sha1' in '/tmp/pip-install-o_iqmrc2/v8py'
    The current platform doesn't match "win32", skipping.
    ________ running 'download_from_google_storage --no_resume --platform=darwin --no_auth --bucket chromium-clang-format -s v8/buildtools/mac/clang-format.sha1' in '/tmp/pip-install-o_iqmrc2/v8py'
    The current platform doesn't match "darwin", skipping.
    ________ running 'download_from_google_storage --no_resume --platform=linux* --no_auth --bucket chromium-clang-format -s v8/buildtools/linux64/clang-format.sha1' in '/tmp/pip-install-o_iqmrc2/v8py'
    0> Downloading v8/buildtools/linux64/clang-format...
    Downloading 1 files took 33.690543 second(s)
    Hook 'download_from_google_storage --no_resume '--platform=linux*' --no_auth --bucket chromium-clang-format -s v8/buildtools/linux64/clang-format.sha1' took 33.99 secs
    ________ running '/usr/bin/python2 v8/tools/gcmole/download_gcmole_tools.py' in '/tmp/pip-install-o_iqmrc2/v8py'
    Skipping gcmole download as gcmole is not set in gyp flags.
    ________ running '/usr/bin/python2 v8/tools/jsfunfuzz/download_jsfunfuzz.py' in '/tmp/pip-install-o_iqmrc2/v8py'
    Skipping jsfunfuzz download as jsfunfuzz is not set in gyp flags.
    ________ running 'download_from_google_storage --no_resume --platform=win32 --no_auth --bucket chromium-luci -d v8/tools/luci-go/win64' in '/tmp/pip-install-o_iqmrc2/v8py'
    The current platform doesn't match "win32", skipping.
    ________ running 'download_from_google_storage --no_resume --platform=darwin --no_auth --bucket chromium-luci -d v8/tools/luci-go/mac64' in '/tmp/pip-install-o_iqmrc2/v8py'
    The current platform doesn't match "darwin", skipping.
    ________ running 'download_from_google_storage --no_resume --platform=linux* --no_auth --bucket chromium-luci -d v8/tools/luci-go/linux64' in '/tmp/pip-install-o_iqmrc2/v8py'
    0> Downloading v8/tools/luci-go/linux64/isolate...
    Downloading 1 files took 31.834481 second(s)
    Hook 'download_from_google_storage --no_resume '--platform=linux*' --no_auth --bucket chromium-luci -d v8/tools/luci-go/linux64' took 32.05 secs
    ________ running 'download_from_google_storage --no_resume --platform=win32 --no_auth --bucket chromium-gn -s v8/buildtools/win/gn.exe.sha1' in '/tmp/pip-install-o_iqmrc2/v8py'
    The current platform doesn't match "win32", skipping.
    ________ running 'download_from_google_storage --no_resume --platform=darwin --no_auth --bucket chromium-gn -s v8/buildtools/mac/gn.sha1' in '/tmp/pip-install-o_iqmrc2/v8py'
    The current platform doesn't match "darwin", skipping.
    ________ running 'download_from_google_storage --no_resume --platform=linux* --no_auth --bucket chromium-gn -s v8/buildtools/linux64/gn.sha1' in '/tmp/pip-install-o_iqmrc2/v8py'
    0> Downloading v8/buildtools/linux64/gn...
    Downloading 1 files took 29.849139 second(s)
    Hook 'download_from_google_storage --no_resume '--platform=linux*' --no_auth --bucket chromium-gn -s v8/buildtools/linux64/gn.sha1' took 30.21 secs
    ________ running 'download_from_google_storage --no_resume --no_auth -u --bucket v8-wasm-fuzzer -s v8/test/fuzzer/wasm.tar.gz.sha1' in '/tmp/pip-install-o_iqmrc2/v8py'
    0> Downloading v8/test/fuzzer/wasm.tar.gz...
    0> Extracting 646 entries from v8/test/fuzzer/wasm.tar.gz to v8/test/fuzzer/wasm
    Downloading 1 files took 30.142409 second(s)
    Hook 'download_from_google_storage --no_resume --no_auth -u --bucket v8-wasm-fuzzer -s v8/test/fuzzer/wasm.tar.gz.sha1' took 30.40 secs
    ________ running 'download_from_google_storage --no_resume --no_auth -u --bucket v8-wasm-asmjs-fuzzer -s v8/test/fuzzer/wasm_asmjs.tar.gz.sha1' in '/tmp/pip-install-o_iqmrc2/v8py'
    0> Downloading v8/test/fuzzer/wasm_asmjs.tar.gz...
    0> Extracting 172 entries from v8/test/fuzzer/wasm_asmjs.tar.gz to v8/test/fuzzer/wasm_asmjs
    Downloading 1 files took 29.541725 second(s)
    Hook 'download_from_google_storage --no_resume --no_auth -u --bucket v8-wasm-asmjs-fuzzer -s v8/test/fuzzer/wasm_asmjs.tar.gz.sha1' took 29.80 secs
    ________ running 'download_from_google_storage --no_resume --no_auth -u --bucket chromium-v8-closure-compiler -s v8/src/inspector/build/closure-compiler.tar.gz.sha1' in '/tmp/pip-install-o_iqmrc2/v8py'
    0> Downloading v8/src/inspector/build/closure-compiler.tar.gz...
    0> Extracting 4 entries from v8/src/inspector/build/closure-compiler.tar.gz to v8/src/inspector/build/closure-compiler
    Downloading 1 files took 31.286627 second(s)
    Hook 'download_from_google_storage --no_resume --no_auth -u --bucket chromium-v8-closure-compiler -s v8/src/inspector/build/closure-compiler.tar.gz.sha1' took 31.50 secs
    ________ running '/usr/bin/python2 v8/build/linux/sysroot_scripts/install-sysroot.py --running-as-hook' in '/tmp/pip-install-o_iqmrc2/v8py'
    Installing Debian Jessie arm root image: /tmp/pip-install-o_iqmrc2/v8py/v8/build/linux/debian_jessie_arm-sysroot
    Downloading https://commondatastorage.googleapis.com/chrome-linux-sysroot/toolchain/d3d82f7c4e34a753953581a48e62ef577b334529/debian_jessie_arm_sysroot.tgz
    Hook '/usr/bin/python2 v8/build/linux/sysroot_scripts/install-sysroot.py --running-as-hook' took 16.96 secs
    ________ running '/usr/bin/python2 v8/third_party/instrumented_libraries/scripts/download_binaries.py' in '/tmp/pip-install-o_iqmrc2/v8py'
    ________ running '/usr/bin/python2 v8/build/vs_toolchain.py update' in '/tmp/pip-install-o_iqmrc2/v8py'
    ________ running '/usr/bin/python2 v8/third_party/binutils/download.py' in '/tmp/pip-install-o_iqmrc2/v8py'
    ________ running '/usr/bin/python2 v8/gypfiles/download_gold_plugin.py' in '/tmp/pip-install-o_iqmrc2/v8py'
    Skipping gold plugin download for non-cfi build.
    ________ running '/usr/bin/python2 v8/tools/clang/scripts/update.py --if-needed' in '/tmp/pip-install-o_iqmrc2/v8py'
    Updating Clang to 298539-1...
    Downloading prebuilt clang
    Downloading https://commondatastorage.googleapis.com/chromium-browser-clang/Linux_x64/clang-298539-1.tgz .......... Done.
    Creating directory /tmp/pip-install-o_iqmrc2/v8py/v8/third_party/llvm-build/Release+Asserts
    clang 298539-1 unpacked
    Hook '/usr/bin/python2 v8/tools/clang/scripts/update.py --if-needed' took 26.44 secs
    ________ running '/usr/bin/python2 v8/gypfiles/gyp_v8 --running-as-hook' in '/tmp/pip-install-o_iqmrc2/v8py'
    GYP is now disabled by default in runhooks.
    
    If you really want to run this, either run
    `python gypfiles/gyp_v8` explicitly by hand
    or set the environment variable GYP_CHROMIUM_NO_ACTION=0.
    make GYPFLAGS="-Dv8_use_external_startup_data=0 -Dv8_enable_i18n_support=0 -Dv8_enable_inspector=1 -Dwerror='' " CFLAGS=-fPIC CXXFLAGS=-fPIC native -j4
    PYTHONPATH="/tmp/pip-install-o_iqmrc2/v8py/v8/tools/generate_shim_headers:/tmp/pip-install-o_iqmrc2/v8py/v8/gypfiles::/tmp/pip-install-o_iqmrc2/v8py/v8/tools/gyp/pylib:" \
    GYP_GENERATORS=make \
    tools/gyp/gyp --generator-output="out" gypfiles/all.gyp \
                  -Igypfiles/standalone.gypi --depth=. -S.native -Dv8_use_external_startup_data=0 -Dv8_enable_i18n_support=0 -Dv8_enable_inspector=1 -Dwerror=''
    make[1]: Verzeichnis „/tmp/pip-install-o_iqmrc2/v8py/v8/out“ wird betreten
      ACTION Generating inspector protocol sources from protocol json definition /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj/gen/src/js_protocol.stamp
      TOUCH src_inspector_inspector_gyp_protocol_generated_sources_target_protocol_generated_sources.intermediate
      ACTION src_inspector_inspector_gyp_inspector_debugger_script_target_convert_js_to_cpp_char_array /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj/gen/src/inspector/debugger-script.h
      ACTION src_inspector_inspector_gyp_inspector_injected_script_target_convert_js_to_cpp_char_array /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj/gen/src/inspector/injected-script-source.h
      ACTION Generating inspector protocol sources from protocol json src_inspector_inspector_gyp_protocol_generated_sources_target_protocol_generated_sources.intermediate
      ACTION src_v8_gyp_js2c_target_js2c /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj/gen/libraries.cc
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/v8_libbase/src/base/bits.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/v8_libbase/src/base/cpu.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/v8_libbase/src/base/division-by-constant.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/v8_libbase/src/base/debug/stack_trace.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/v8_libbase/src/base/file-utils.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/v8_libbase/src/base/functional.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/v8_libbase/src/base/ieee754.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/v8_libbase/src/base/logging.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/v8_libbase/src/base/once.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/v8_libbase/src/base/platform/time.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/v8_libbase/src/base/platform/condition-variable.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/v8_libbase/src/base/platform/mutex.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/v8_libbase/src/base/platform/semaphore.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/v8_libbase/src/base/sys-info.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/v8_libbase/src/base/utils/random-number-generator.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/v8_libbase/src/base/debug/stack_trace_posix.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/v8_libbase/src/base/platform/platform-linux.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/v8_libbase/src/base/platform/platform-posix.o
      ACTION src_v8_gyp_js2c_target_js2c_bin /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj/gen/libraries.bin
      ACTION src_v8_gyp_js2c_target_js2c_extras /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj/gen/extras-libraries.cc
      ACTION src_v8_gyp_js2c_target_js2c_extras_bin /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj/gen/libraries-extras.bin
      ACTION src_v8_gyp_js2c_target_js2c_experimental_extras /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj/gen/experimental-extras-libraries.cc
      ACTION src_v8_gyp_js2c_target_js2c_experimental_extras_bin /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj/gen/libraries-experimental-extras.bin
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/v8_libplatform/src/libplatform/default-platform.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/v8_libplatform/src/libplatform/task-queue.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/v8_libplatform/src/libplatform/tracing/trace-buffer.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/v8_libplatform/src/libplatform/tracing/trace-config.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/v8_libplatform/src/libplatform/tracing/trace-object.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/v8_libplatform/src/libplatform/tracing/trace-writer.o
    In file included from /usr/include/c++/6/queue:62:0,
                     from .././src/libplatform/default-platform.h:11,
                     from ../src/libplatform/default-platform.cc:5:
    /usr/include/c++/6/bits/stl_heap.h: In function ‘void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<std::pair<double, v8::Task*>*, std::vector<std::pair<double, v8::Task*> > >; _Distance = int; _Tp = std::pair<double, v8::Task*>; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<std::greater<std::pair<double, v8::Task*> > >]’:
    /usr/include/c++/6/bits/stl_heap.h:209:5: note: parameter passing for argument of type ‘__gnu_cxx::__normal_iterator<std::pair<double, v8::Task*>*, std::vector<std::pair<double, v8::Task*> > >’ will change in GCC 7.1
         __adjust_heap(_RandomAccessIterator __first, _Distance __holeIndex,
         ^~~~~~~~~~~~~
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/v8_libplatform/src/libplatform/tracing/tracing-controller.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/v8_libplatform/src/libplatform/worker-thread.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/v8_libsampler/src/libsampler/sampler.o
      ACTION src_d8_gyp_d8_js2c_target_d8_js2c /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj/gen/d8-js.cc
      ACTION test_cctest_cctest_gyp_resources_target_js2c /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj/gen/resources.cc
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/json_fuzzer_lib/test/fuzzer/json.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/parser_fuzzer_lib/test/fuzzer/parser.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/regexp_fuzzer_lib/test/fuzzer/regexp.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_fuzzer_lib/test/fuzzer/wasm.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_fuzzer_lib/test/common/wasm/wasm-module-runner.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_asmjs_fuzzer_lib/test/fuzzer/wasm-asmjs.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_asmjs_fuzzer_lib/test/common/wasm/wasm-module-runner.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_call_fuzzer_lib/test/fuzzer/wasm-call.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_call_fuzzer_lib/test/common/wasm/wasm-module-runner.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_code_fuzzer_lib/test/fuzzer/wasm-code.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_code_fuzzer_lib/test/common/wasm/wasm-module-runner.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_compile_fuzzer_lib/test/fuzzer/wasm-compile.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_compile_fuzzer_lib/test/common/wasm/wasm-module-runner.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_data_section_fuzzer_lib/test/fuzzer/wasm-data-section.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_data_section_fuzzer_lib/test/common/wasm/wasm-module-runner.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_data_section_fuzzer_lib/test/fuzzer/wasm-section-fuzzers.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_function_sigs_section_fuzzer_lib/test/fuzzer/wasm-function-sigs-section.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_function_sigs_section_fuzzer_lib/test/common/wasm/wasm-module-runner.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_function_sigs_section_fuzzer_lib/test/fuzzer/wasm-section-fuzzers.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_globals_section_fuzzer_lib/test/fuzzer/wasm-globals-section.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_globals_section_fuzzer_lib/test/common/wasm/wasm-module-runner.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_globals_section_fuzzer_lib/test/fuzzer/wasm-section-fuzzers.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_imports_section_fuzzer_lib/test/fuzzer/wasm-imports-section.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_imports_section_fuzzer_lib/test/common/wasm/wasm-module-runner.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_imports_section_fuzzer_lib/test/fuzzer/wasm-section-fuzzers.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_memory_section_fuzzer_lib/test/fuzzer/wasm-memory-section.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_memory_section_fuzzer_lib/test/common/wasm/wasm-module-runner.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_memory_section_fuzzer_lib/test/fuzzer/wasm-section-fuzzers.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_names_section_fuzzer_lib/test/fuzzer/wasm-names-section.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_names_section_fuzzer_lib/test/common/wasm/wasm-module-runner.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_names_section_fuzzer_lib/test/fuzzer/wasm-section-fuzzers.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_types_section_fuzzer_lib/test/fuzzer/wasm-types-section.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_types_section_fuzzer_lib/test/common/wasm/wasm-module-runner.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/wasm_types_section_fuzzer_lib/test/fuzzer/wasm-section-fuzzers.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/gmock/testing/gmock/src/gmock-cardinalities.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/gmock/testing/gmock/src/gmock-internal-utils.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/gmock/testing/gmock/src/gmock-matchers.o
    In file included from ../testing/gtest/include/gtest/internal/gtest-linked_ptr.h:74:0,
                     from ../testing/gmock/include/gmock/internal/gmock-port.h:53,
                     from ../testing/gmock/include/gmock/internal/gmock-generated-internal-utils.h:44,
                     from ../testing/gmock/include/gmock/internal/gmock-internal-utils.h:45,
                     from ../testing/gmock/src/gmock-internal-utils.cc:38:
    ../testing/gtest/include/gtest/internal/gtest-port.h:1977:80: warning: missing initializer for member ‘testing::internal::MutexBase::owner_’ [-Wmissing-field-initializers]
          ::testing::internal::MutexBase mutex = { PTHREAD_MUTEX_INITIALIZER, false }
                                                                                    ^
    ../testing/gmock/src/gmock-internal-utils.cc:106:8: note: in expansion of macro ‘GTEST_DEFINE_STATIC_MUTEX_’
     static GTEST_DEFINE_STATIC_MUTEX_(g_log_mutex);
            ^~~~~~~~~~~~~~~~~~~~~~~~~~
    cc1plus: warning: unrecognized command line option ‘-Wno-logical-op-parentheses’
    cc1plus: warning: unrecognized command line option ‘-Wno-deprecated-register’
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/gmock/testing/gmock/src/gmock-spec-builders.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/gmock/testing/gmock/src/gmock.o
    In file included from ../testing/gtest/include/gtest/internal/gtest-linked_ptr.h:74:0,
                     from ../testing/gmock/include/gmock/internal/gmock-port.h:53,
                     from ../testing/gmock/include/gmock/internal/gmock-generated-internal-utils.h:44,
                     from ../testing/gmock/include/gmock/internal/gmock-internal-utils.h:45,
                     from ../testing/gmock/include/gmock/gmock-actions.h:46,
                     from ../testing/gmock/include/gmock/gmock-spec-builders.h:73,
                     from ../testing/gmock/src/gmock-spec-builders.cc:37:
    ../testing/gtest/include/gtest/internal/gtest-port.h:1977:80: warning: missing initializer for member ‘testing::internal::MutexBase::owner_’ [-Wmissing-field-initializers]
          ::testing::internal::MutexBase mutex = { PTHREAD_MUTEX_INITIALIZER, false }
                                                                                    ^
    ../testing/gmock/src/gmock-spec-builders.cc:56:12: note: in expansion of macro ‘GTEST_DEFINE_STATIC_MUTEX_’
     GTEST_API_ GTEST_DEFINE_STATIC_MUTEX_(g_gmock_mutex);
                ^~~~~~~~~~~~~~~~~~~~~~~~~~
      TOUCH /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/testing/gtest_prod.stamp
      TOUCH /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.host/testing/gtest_prod.stamp
      TOUCH /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/src/inspector/protocol_compatibility.stamp
      TOUCH /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/src/inspector/inspector_injected_script.stamp
      TOUCH /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/src/inspector/inspector_debugger_script.stamp
      AR(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/src/libv8_libbase.a
      TOUCH /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/src/js2c.stamp
      AR(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/src/libv8_libplatform.a
      AR(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/src/libv8_libsampler.a
      TOUCH /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/src/d8_js2c.stamp
      TOUCH /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/test/cctest/resources.stamp
      AR(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/test/fuzzer/libjson_fuzzer_lib.a
      AR(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/test/fuzzer/libparser_fuzzer_lib.a
      AR(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/test/fuzzer/libregexp_fuzzer_lib.a
      AR(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/test/fuzzer/libwasm_fuzzer_lib.a
      AR(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/test/fuzzer/libwasm_asmjs_fuzzer_lib.a
      AR(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/test/fuzzer/libwasm_call_fuzzer_lib.a
      AR(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/test/fuzzer/libwasm_code_fuzzer_lib.a
      AR(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/test/fuzzer/libwasm_compile_fuzzer_lib.a
      AR(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/test/fuzzer/libwasm_data_section_fuzzer_lib.a
      AR(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/test/fuzzer/libwasm_function_sigs_section_fuzzer_lib.a
      AR(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/test/fuzzer/libwasm_globals_section_fuzzer_lib.a
      AR(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/test/fuzzer/libwasm_imports_section_fuzzer_lib.a
      AR(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/test/fuzzer/libwasm_memory_section_fuzzer_lib.a
      AR(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/test/fuzzer/libwasm_names_section_fuzzer_lib.a
      AR(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/test/fuzzer/libwasm_types_section_fuzzer_lib.a
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/gtest/testing/gtest/src/gtest-death-test.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/gtest/testing/gtest/src/gtest-filepath.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/gtest/testing/gtest/src/gtest-port.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/gtest/testing/gtest/src/gtest-printers.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/gtest/testing/gtest/src/gtest-test-part.o
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/gtest/testing/gtest/src/gtest-typed-test.o
    cc1plus: warning: unrecognized command line option ‘-Wno-logical-op-parentheses’
    cc1plus: warning: unrecognized command line option ‘-Wno-deprecated-register’
      CXX(target) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.target/gtest/testing/gtest/src/gtest.o
      CXX(host) /tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.host/gtest/testing/gtest/src/gtest-death-test.o
    /tmp/pip-install-o_iqmrc2/v8py/v8/third_party/llvm-build/Release+Asserts/bin/clang++: 1: /tmp/pip-install-o_iqmrc2/v8py/v8/third_party/llvm-build/Release+Asserts/bin/clang++: ELF: not found
    /tmp/pip-install-o_iqmrc2/v8py/v8/third_party/llvm-build/Release+Asserts/bin/clang++: 2: /tmp/pip-install-o_iqmrc2/v8py/v8/third_party/llvm-build/Release+Asserts/bin/clang++: Syntax error: word unexpected (expecting ")")
    testing/gtest.host.native.mk:175: die Regel für Ziel „/tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.host/gtest/testing/gtest/src/gtest-death-test.o“ scheiterte
    make[1]: *** [/tmp/pip-install-o_iqmrc2/v8py/v8/out/native/obj.host/gtest/testing/gtest/src/gtest-death-test.o] Fehler 2
    make[1]: *** Es wird auf noch nicht beendete Prozesse gewartet...
    In file included from ../testing/gtest/include/gtest/internal/gtest-internal.h:40:0,
                     from ../testing/gtest/include/gtest/gtest.h:58,
                     from ../testing/gtest/src/gtest.cc:34:
    ../testing/gtest/include/gtest/internal/gtest-port.h:1977:80: warning: missing initializer for member ‘testing::internal::MutexBase::owner_’ [-Wmissing-field-initializers]
          ::testing::internal::MutexBase mutex = { PTHREAD_MUTEX_INITIALIZER, false }
                                                                                    ^
    ../testing/gtest/src/gtest.cc:384:12: note: in expansion of macro ‘GTEST_DEFINE_STATIC_MUTEX_’
     GTEST_API_ GTEST_DEFINE_STATIC_MUTEX_(g_linked_ptr_mutex);
                ^~~~~~~~~~~~~~~~~~~~~~~~~~
    cc1plus: warning: unrecognized command line option ‘-Wno-logical-op-parentheses’
    cc1plus: warning: unrecognized command line option ‘-Wno-deprecated-register’
    rm src_inspector_inspector_gyp_protocol_generated_sources_target_protocol_generated_sources.intermediate
    make[1]: Verzeichnis „/tmp/pip-install-o_iqmrc2/v8py/v8/out“ wird verlassen
    Makefile:326: die Regel für Ziel „native“ scheiterte
    make: *** [native] Fehler 2
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-install-o_iqmrc2/v8py/setup.py", line 149, in <module>
        'build_v8': BuildV8Command,
      File "/home/pi/Downloads/venv-linux/lib/python3.7/site-packages/setuptools/__init__.py", line 145, in setup
        return distutils.core.setup(**attrs)
      File "/usr/local/lib/python3.7/distutils/core.py", line 148, in setup
        dist.run_commands()
      File "/usr/local/lib/python3.7/distutils/dist.py", line 966, in run_commands
        self.run_command(cmd)
      File "/usr/local/lib/python3.7/distutils/dist.py", line 985, in run_command
        cmd_obj.run()
      File "/home/pi/Downloads/venv-linux/lib/python3.7/site-packages/setuptools/command/install.py", line 61, in run
        return orig.install.run(self)
      File "/usr/local/lib/python3.7/distutils/command/install.py", line 545, in run
        self.run_command('build')
      File "/usr/local/lib/python3.7/distutils/cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "/usr/local/lib/python3.7/distutils/dist.py", line 985, in run_command
        cmd_obj.run()
      File "/usr/local/lib/python3.7/distutils/command/build.py", line 135, in run
        self.run_command(cmd_name)
      File "/usr/local/lib/python3.7/distutils/cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "/usr/local/lib/python3.7/distutils/dist.py", line 985, in run_command
        cmd_obj.run()
      File "/usr/local/lib/python3.7/distutils/command/build_ext.py", line 340, in run
        self.build_extensions()
      File "/usr/local/lib/python3.7/distutils/command/build_ext.py", line 449, in build_extensions
        self._build_extensions_serial()
      File "/usr/local/lib/python3.7/distutils/command/build_ext.py", line 474, in _build_extensions_serial
        self.build_extension(ext)
      File "/tmp/pip-install-o_iqmrc2/v8py/setup.py", line 110, in build_extension
        self.run_command('build_v8')
      File "/usr/local/lib/python3.7/distutils/cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "/usr/local/lib/python3.7/distutils/dist.py", line 985, in run_command
        cmd_obj.run()
      File "/tmp/pip-install-o_iqmrc2/v8py/setup.py", line 106, in run
        run('make GYPFLAGS="{}" CFLAGS=-fPIC CXXFLAGS=-fPIC {} -j{}'.format(gypflags, MODE, multiprocessing.cpu_count()))
      File "/tmp/pip-install-o_iqmrc2/v8py/setup.py", line 52, in run
        check_call(command, shell=True, env=COMMAND_ENV)
      File "/usr/local/lib/python3.7/subprocess.py", line 347, in check_call
        raise CalledProcessError(retcode, cmd)
    subprocess.CalledProcessError: Command 'make GYPFLAGS="-Dv8_use_external_startup_data=0 -Dv8_enable_i18n_support=0 -Dv8_enable_inspector=1 -Dwerror='' " CFLAGS=-fPIC CXXFLAGS=-fPIC native -j4' returned non-zero exit status 2.
    ----------------------------------------
ERROR: Command "/home/pi/Downloads/venv-linux/bin/python3.7 -u -c 'import setuptools, tokenize;__file__='"'"'/tmp/pip-install-o_iqmrc2/v8py/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-ornttv7l/install-record.txt --single-version-externally-managed --compile --install-headers /home/pi/Downloads/venv-linux/include/site/python3.7/v8py" failed with error code 1 in /tmp/pip-install-o_iqmrc2/v8py/

greenstack installation log:

Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Collecting greenstack
  Using cached https://files.pythonhosted.org/packages/b4/5a/510d6dd497101406b77dd62b618522e3a5233a6521947672c8161b631d0c/greenstack-0.6.tar.gz
Installing collected packages: greenstack
  Running setup.py install for greenstack ... error
    ERROR: Complete output from command /home/pi/Downloads/venv-linux/bin/python3.7 -u -c 'import setuptools, tokenize;__file__='"'"'/tmp/pip-install-r7bp5o2v/greenstack/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-l5hif2ob/install-record.txt --single-version-externally-managed --compile --install-headers /home/pi/Downloads/venv-linux/include/site/python3.7/greenstack:
    ERROR: running install
    running build
    running build_ext
    building 'greenstack' extension
    creating build
    creating build/temp.linux-armv7l-3.7
    creating build/temp.linux-armv7l-3.7/libcoro
    gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -fPIC -I/home/pi/Downloads/venv-linux/include -I/usr/local/include/python3.7m -c greenstack.c -o build/temp.linux-armv7l-3.7/greenstack.o
    In file included from greenstack.h:11:0,
                     from greenstack.c:7:
    libcoro/coro.h:315:4: error: #error unknown or unsupported architecture
     #  error unknown or unsupported architecture
        ^~~~~
    In file included from greenstack.c:7:0:
    greenstack.h:33:15: error: field ‘context’ has incomplete type
      coro_context context;
                   ^~~~~~~
    greenstack.c: In function ‘g_realswitchstack’:
    greenstack.c:252:19: error: ‘PyThreadState {aka struct _ts}’ has no member named ‘exc_type’; did you mean ‘curexc_type’?
      exc_type = tstate->exc_type;
                       ^~
    greenstack.c:253:20: error: ‘PyThreadState {aka struct _ts}’ has no member named ‘exc_value’; did you mean ‘curexc_value’?
      exc_value = tstate->exc_value;
                        ^~
    greenstack.c:254:24: error: ‘PyThreadState {aka struct _ts}’ has no member named ‘exc_traceback’; did you mean ‘curexc_traceback’?
      exc_traceback = tstate->exc_traceback;
                            ^~
    greenstack.c:260:2: warning: implicit declaration of function ‘coro_transfer’ [-Wimplicit-function-declaration]
      coro_transfer(&current->context, &ts_target->context);
      ^~~~~~~~~~~~~
    greenstack.c:266:8: error: ‘PyThreadState {aka struct _ts}’ has no member named ‘exc_type’; did you mean ‘curexc_type’?
      tstate->exc_type = exc_type;
            ^~
    greenstack.c:267:8: error: ‘PyThreadState {aka struct _ts}’ has no member named ‘exc_value’; did you mean ‘curexc_value’?
      tstate->exc_value = exc_value;
            ^~
    greenstack.c:268:8: error: ‘PyThreadState {aka struct _ts}’ has no member named ‘exc_traceback’; did you mean ‘curexc_traceback’?
      tstate->exc_traceback = exc_traceback;
            ^~
    greenstack.c: In function ‘g_trampoline’:
    greenstack.c:501:8: error: ‘PyThreadState {aka struct _ts}’ has no member named ‘exc_type’; did you mean ‘curexc_type’?
      tstate->exc_type = NULL;
            ^~
    greenstack.c:502:8: error: ‘PyThreadState {aka struct _ts}’ has no member named ‘exc_value’; did you mean ‘curexc_value’?
      tstate->exc_value = NULL;
            ^~
    greenstack.c:503:8: error: ‘PyThreadState {aka struct _ts}’ has no member named ‘exc_traceback’; did you mean ‘curexc_traceback’?
      tstate->exc_traceback = NULL;
            ^~
    error: command 'gcc' failed with exit status 1
    ----------------------------------------
ERROR: Command "/home/pi/Downloads/venv-linux/bin/python3.7 -u -c 'import setuptools, tokenize;__file__='"'"'/tmp/pip-install-r7bp5o2v/greenstack/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-l5hif2ob/install-record.txt --single-version-externally-managed --compile --install-headers /home/pi/Downloads/venv-linux/include/site/python3.7/greenstack" failed with error code 1 in /tmp/pip-install-r7bp5o2v/greenstack/

You can try my prebuilt fork:
pip install -i https://cdn.anthillplatform.org/python v8py

@desertkun Thank you, but I have looked at your binaries and they are for x86 only - not for ARM