Package Details: v8-r 13.6.209-1

Git Clone URL: https://aur.archlinux.org/v8-r.git (read-only, click to copy)
Package Base: v8-r
Description: Google's open source JavaScript and WebAssembly engine
Upstream URL: https://v8.dev
Keywords: d8 javascript v8
Licenses: BSD
Conflicts: v8, v8-3.14, v8-6.7-static, v8-static-gyp, v8-static-gyp-5.4, v8.3.14-bin
Provides: v8
Submitter: JanMarvin
Maintainer: JanMarvin
Last Packager: JanMarvin
Votes: 10
Popularity: 0.042426
First Submitted: 2019-09-22 11:01 (UTC)
Last Updated: 2025-03-28 16:01 (UTC)

Pinned Comments

JanMarvin commented on 2019-09-22 11:16 (UTC) (edited on 2021-09-24 14:34 (UTC) by JanMarvin)

This package is required for the R-package V8 (https://github.com/jeroen/V8). It is frequently updated, though unless it is broken, users must not build all updates. Since V8 contains a large codebase and compilation takes a while, I recommend to build it in a directory and not with an AUR-helper.

[Edit:] For binary builds please see: https://garbuszus.de/archpkgs

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 7 Next › Last »

tealeaf commented on 2020-06-06 16:34 (UTC)

@HaoZeke: If you edit the PKBGUILD and add these two lines in the build() function it will compile and install there:

export PATH=${srcdir}/bin:pwd/depot_tools:"$PATH" export GYP_GENERATORS=ninja

khughitt commented on 2020-06-06 14:29 (UTC)

In case it helps anyone else, I tracked down the compilation issue I was having to having llvm8 installed instead of llvm (llvm8 is required by some packages in the AUR). Replacing the older version with the current stable release fixes the issue.

JanMarvin commented on 2020-06-06 12:26 (UTC)

@HaoZeke the package builds perfectly fine, but your AUR helper is broken and I have no intention to support its brokenness. You can build this package with Arch's very own makepkg and possibly even other AUR helpers or skip the hassle of building entirely and use the binary package provided in my github repo (https://janmarvin.github.io/archpkgs/).

TL;DR: Attempting to build the package in an unsupported manner will not work and will remain so.

HaoZeke commented on 2020-06-05 22:58 (UTC) (edited on 2020-06-05 22:58 (UTC) by HaoZeke)

Breaks for me at the moment. The full log is here.

 -> Adding icu missing folders
  -> Building, this will take a while...
ninja: Entering directory `out.gn/Release'
[138/1738] SOLINK ./libv8_libbase.so
FAILED: libv8_libbase.so libv8_libbase.so.TOC
python "../../build/toolchain/gcc_solink_wrapper.py" --readelf="readelf" --nm="nm" --sofile="./libv8_libbase.so" --tocfile="./libv8_libbase.so.TOC" --output="./libv8_libbase.so" -- ../../../../../../../../../usr/bin/clang++ -shared -Wl,-soname="libv8_libbase.so" -Wl,--fatal-warnings -fPIC -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,defs -Wl,--as-needed -fuse-ld=lld -Wl,--icf=all -Wl,--color-diagnostics -m64 -rdynamic -Wl,-rpath=\$ORIGIN -Wl,-O2 -Wl,--gc-sections -o "./libv8_libbase.so" @"./libv8_libbase.so.rsp"
Traceback (most recent call last):
  File "../../build/toolchain/gcc_solink_wrapper.py", line 153, in <module>
    sys.exit(main())
  File "../../build/toolchain/gcc_solink_wrapper.py", line 136, in main
    result, toc = CollectTOC(args)
  File "../../build/toolchain/gcc_solink_wrapper.py", line 46, in CollectTOC
    result, toc = CollectSONAME(args)
  File "../../build/toolchain/gcc_solink_wrapper.py", line 27, in CollectSONAME
    if 'SONAME' in line:
TypeError: a bytes-like object is required, not 'str'
[147/1738] CXX obj/src/inspector/inspector/Runtime.o
ninja: build stopped: subcommand failed.
==> ERROR: A failure occurred in build().
    Aborting...
Error making: v8-r

JanMarvin commented on 2020-05-19 18:45 (UTC)

@khughitt no clue, works for me, tested just a moment ago with an updated system. You might try this repo but this is the latest release of sunday and requires a patched V8

khughitt commented on 2020-05-19 18:09 (UTC)

Strange -- I'm getting a failure pretty early on in the build:

[41/1654] AR obj/build/config/sanitizers/liboptions_sources.a
FAILED: obj/build/config/sanitizers/liboptions_sources.a 
rm -f obj/build/config/sanitizers/liboptions_sources.a && "../../../../../../../../usr/bin/llvm-ar" -T -r -c -s -D obj/build/config/sanitizers/liboptions_sources.a @"obj/build/config/sanitizers/liboptions_sources.a.rsp"
../../../../../../../../usr/bin/llvm-ar: error while loading shared libraries: libffi.so.6: cannot open shared object file: No such file or directory
[73/1654] CXX obj/torque_base/implementation-visitor.o
[74/1654] CXX obj/torque_base/torque-parser.o
ninja: build stopped: subcommand failed.

System is up to date and libffi 3.3-3 is installed. Tried a clean build with the same result.

Any ideas what could be going on?

znmeb commented on 2020-05-16 22:19 (UTC) (edited on 2020-05-16 22:19 (UTC) by znmeb)

v8-r built successfully - 1 hour and 22 minutes on a 32 GB 4-core / 8-thread i7 running at 2.5 GHz. The R V8 package installed successfully as well.

I wonder if it's possible to make a "v8-r-bin" package that will work using a Debian .deb like AUR does with rstudio-desktop-bin.

znmeb commented on 2020-05-16 20:30 (UTC)

@JanMarvin What does the R package need to do? Do you have a GitHub issue link?

JanMarvin commented on 2020-05-16 19:15 (UTC)

@znmeb pushed the fix. No other changes. Still awaiting upstream changes in the R package.

znmeb commented on 2020-05-16 18:46 (UTC)

The makepkg is now failing. I have a complete log of the makepkg step but it's huge. Here are some of the errors:

$ grep -i error ~/makepkg.log                                          
../../src/base/template-utils.h:58:71: error: expected expression
../../src/base/template-utils.h:58:63: error: no member named 'ostream' in namespace 'std'
../../src/base/logging.h:159:10: error: no matching function for call to 'PrintCheckOperand'
../../test/unittests/base/template-utils-unittest.cc:89:1: error: static_assert failed due to requirement 'has_output_operator<int, void>::value' "int can be output"
../../test/unittests/base/template-utils-unittest.cc:90:1: error: static_assert failed due to requirement 'has_output_operator<void *, void>::value' "void* can be output"
../../test/unittests/base/template-utils-unittest.cc:91:1: error: static_assert failed due to requirement 'has_output_operator<unsigned long, void>::value' "int can be output"
../../test/unittests/base/template-utils-unittest.cc:101:1: error: static_assert failed due to requirement 'has_output_operator<v8::base::template_utils_unittest::TestClass2, void>::value' "non-const TestClass2 can be output"
../../test/unittests/base/template-utils-unittest.cc:103:1: error: static_assert failed due to requirement 'has_output_operator<const v8::base::template_utils_unittest::TestClass2, void>::value' "const TestClass2 can be output"
../../test/unittests/base/template-utils-unittest.cc:105:1: error: static_assert failed due to requirement 'has_output_operator<v8::base::template_utils_unittest::TestClass3, void>::value' "non-const TestClass3 can be output"
../../test/unittests/base/template-utils-unittest.cc:107:1: error: static_assert failed due to requirement 'has_output_operator<const v8::base::template_utils_unittest::TestClass3, void>::value' "const TestClass3 can be output"
==> ERROR: A failure occurred in build().