Package Details: v8-r 10.6.102-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: 7
Popularity: 0.000189
First Submitted: 2019-09-22 11:01 (UTC)
Last Updated: 2022-08-05 15:37 (UTC)

Dependencies (4)

Required by (7)

Sources (5)

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

gnaggnoyil commented on 2022-07-08 17:22 (UTC)

@JanMarvin Thanks. Your reply sounds reasonable. I'll ask android-sdk-build-tools maintainer to see if there are any ideas about resolving this conflict.

JanMarvin commented on 2022-07-08 16:37 (UTC)

Hi @gnaggnoyil, had a quick look. The android package is a binary package that expects to live in /opt and is simply linked to /usr/bin. Imho that's incorrect, but you should be able to fix this. Either by keeping it in /opt or linking it to /usr/local/lib. If instead the question was if I do something to fix this for you, the answer is no.

gnaggnoyil commented on 2022-07-08 15:59 (UTC) (edited on 2022-07-08 17:23 (UTC) by gnaggnoyil)

This package has conflicting file usr/bin/d8 with the aur/android-sdk-build-tools package. Is there anyway to resolve this file conflict error?

JanMarvin commented on 2021-09-24 14:45 (UTC)

My repo for binary builds has moved to my server (github was no longer a feasible host, since the builds were increasing a lot lately).

chendaniely commented on 2021-01-11 15:03 (UTC) (edited on 2021-01-11 15:09 (UTC) by chendaniely)

@JanMarvin: You're right it's something to do with the system + mirrorlist. Didn't realize that could be the problem because I was running things with the -Syyuu flags. Shows I'm on ICU67 (instead of 68) and there really is something wonky going on with the (Manjaro) mirrors since I can't seem to even find + install "reflector" (edit: manjaro mirrorlist != arch mirrorlist).

I'm going to point this at a Manjaro problem for now and just plan to reinstall my system in plain arch (serves me right for being lazy and using a GUI installer).

JanMarvin commented on 2021-01-10 21:17 (UTC)

Well you should update icu prior to the v8-R update. It works for me and builds in the Arch docker on github, so I'd say it's definitely a problem on your end. Outdated pacman mirror and/or outdated system? Either way, you're of course free to use the static build as mentioned a few comments earlier.

chendaniely commented on 2021-01-10 20:29 (UTC) (edited on 2021-01-10 20:31 (UTC) by chendaniely)

Anyone else having issues updating this package? I'm getting a static assertion failed: v8 is required to build with ICU 68 and up error, but it's weird because I'm doing an update not a fresh install...

I just ended up removing v8-r (sudo pacman -Rnsc v8-r) and installing it using the "Linux: Static libv8" instructions (https://github.com/jeroen/V8).

snippit:

../src/objects/intl-objects.cc:52:28: error: static assertion failed: v8 is required to build with ICU 68 and up
   52 |     V8_MINIMUM_ICU_VERSION <= U_ICU_VERSION_MAJOR_NUM,
[1144/2058] CXX obj/v8_base_without_compiler/js-display-names.o
ninja: build stopped: subcommand failed.
==> ERROR: A failure occurred in build().
    Aborting...
error making: v8-r

full output:

 df -h
Filesystem      Size  Used Avail Use% Mounted on
dev             7.8G     0  7.8G   0% /dev
run             7.8G  1.7M  7.8G   1% /run
/dev/sda2       441G  303G  116G  73% /
tmpfs           7.8G   20M  7.8G   1% /dev/shm
tmpfs           4.0M     0  4.0M   0% /sys/fs/cgroup
tmpfs           7.8G   62M  7.8G   1% /tmp
/dev/sda1       300M  284K  300M   1% /boot/efi
tmpfs           1.6G  104K  1.6G   1% /run/user/1000


$ yay -Syu
[sudo] password for dchen: 
:: Synchronizing package databases...
 core is up to date
 extra is up to date
 community is up to date
 multilib is up to date
:: Starting full system upgrade...
 there is nothing to do
:: Searching databases for updates...
:: Searching AUR for updates...
 -> visual-studio-code-insiders-bin: local (1608555268-1) is newer than AUR (1608270140-1)
 -> Missing AUR Packages:  js60  mhwd-nvidia-340xx  xorg-fonts-alias
 -> Orphaned AUR Packages:  libdbusmenu-qt4  qjson
 -> Flagged Out Of Date AUR Packages:  visual-studio-code-insiders-bin
:: 1 Packages to upgrade.
1  aur/v8-r  8.8.294-1 -> 8.9.222-1
==> Packages to exclude: (eg: "1 2 3", "1-3", "^4" or repo name)
==> 
:: Checking for conflicts...
:: Checking for inner conflicts...
[Aur:1]  v8-r-8.9.222-1

  1 v8-r                                     (Installed) (Build Files Exist)
==> Packages to cleanBuild?
==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4)
==> 
:: Downloaded PKGBUILD (1/1): v8-r
  1 v8-r                                     (Installed) (Build Files Exist)
==> Diffs to show?
==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4)
==> 
:: (1/1) Parsing SRCINFO: v8-r
==> Making package: v8-r 8.9.222-1 (Sun 10 Jan 2021 12:51:05 PM EST)
==> Retrieving sources...
  -> Updating depot_tools git repo...
Fetching origin
remote: Counting objects: 3340, done
remote: Finding sources: 100% (544/544)
remote: Total 544 (delta 120), reused 531 (delta 120)
Receiving objects: 100% (544/544), 764.34 KiB | 7.80 MiB/s, done.
Resolving deltas: 100% (120/120), completed with 25 local objects.
From https://chromium.googlesource.com/chromium/tools/depot_tools
 * [new ref]             refs/changes/00/2616900/1    -> refs/changes/00/2616900/1

# REMOVED STUFF HERE
   67e12286d..c1aa4ecfc  master                       -> master
  -> Found v8.pc
  -> Found v8_libbase.pc
  -> Found v8_libplatform.pc
  -> Found d8
  -> Found nodiscard.patch
==> Validating source files with sha256sums...
    depot_tools ... Skipped
    v8.pc ... Passed
    v8_libbase.pc ... Passed
    v8_libplatform.pc ... Passed
    d8 ... Passed
    nodiscard.patch ... Passed
==> Making package: v8-r 8.9.222-1 (Sun 10 Jan 2021 12:51:09 PM EST)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Updating depot_tools git repo...
Fetching origin
  -> Found v8.pc
  -> Found v8_libbase.pc
  -> Found v8_libplatform.pc
  -> Found d8
  -> Found nodiscard.patch
==> Validating source files with sha256sums...
    depot_tools ... Skipped
    v8.pc ... Passed
    v8_libbase.pc ... Passed
    v8_libplatform.pc ... Passed
    d8 ... Passed
    nodiscard.patch ... Passed
==> Removing existing $srcdir/ directory...
==> Extracting sources...
  -> Creating working copy of depot_tools git repo...
Cloning into 'depot_tools'...
done.
==> Starting prepare()...
  -> Fetching V8 code
Running: gclient root
WARNING: Your metrics.cfg file was invalid or nonexistent. A new one will be created.
Running: gclient config --spec 'solutions = [
  {
    "name": "v8",
    "url": "https://chromium.googlesource.com/v8/v8.git",
    "deps_file": "DEPS",
    "managed": False,
    "custom_deps": {},
  },
]
'
Running: gclient sync --with_branch_heads

________ running 'git -c core.deltaBaseCacheLimit=2g clone --no-checkout --progress https://chromium.googlesource.com/v8/v8.git /home/dchen/.cache/yay/v8-r/src/_gclient_v8_hxsllf76' in '/home/dchen/.cache/yay/v8-r/src'
Cloning into '/home/dchen/.cache/yay/v8-r/src/_gclient_v8_hxsllf76'...
remote: Counting objects: 7660, done
remote: Total 810131 (delta 655506), reused 810131 (delta 655506)
Receiving objects: 100% (810131/810131), 773.56 MiB | 9.18 MiB/s, done.
Resolving deltas: 100% (655506/655506), done.

[0:03:20] Still working on:
[0:03:20]   v8

[0:03:30] Still working on:
[0:03:30]   v8
1>Syncing projects:   0% ( 0/ 2) 
[0:03:39] Still working on:
[0:03:39]   v8
Syncing projects: 100% (28/28), done.                                                
Running hooks:  19% ( 5/26) clang_format_linux
________ running 'download_from_google_storage --no_resume --platform=linux* --no_auth --bucket chromium-clang-format -s buildtools/linux64/clang-format.sha1' in '/home/dchen/.cache/yay/v8-r/src/v8'
0> Downloading buildtools/linux64/clang-format@1baf0089e895c989a311b6a38ed94d0e8be4c0a7...
Downloading 1 files took 6.442052 second(s)
Running hooks:  30% ( 8/26) wasm_spec_tests   
________ running 'download_from_google_storage --no_resume --no_auth -u --bucket v8-wasm-spec-tests -s test/wasm-spec-tests/tests.tar.gz.sha1' in '/home/dchen/.cache/yay/v8-r/src/v8'
0> Downloading test/wasm-spec-tests/tests.tar.gz@38edac624024750d4d35619df1bbdc7902f9cb7c...
0> Extracting 471 entries from test/wasm-spec-tests/tests.tar.gz to test/wasm-spec-tests/tests
Downloading 1 files took 5.856630 second(s)
Running hooks:  34% ( 9/26) wasm_js        
________ running 'download_from_google_storage --no_resume --no_auth -u --bucket v8-wasm-spec-tests -s test/wasm-js/tests.tar.gz.sha1' in '/home/dchen/.cache/yay/v8-r/src/v8'
0> Downloading test/wasm-js/tests.tar.gz@31c11a41026c56be3c6d6470755d476840ce0132...
0> Extracting 142 entries from test/wasm-js/tests.tar.gz to test/wasm-js/tests
Downloading 1 files took 5.419328 second(s)
Running hooks:  46% (12/26) sysroot_x86  
________ running 'vpython build/linux/sysroot_scripts/install-sysroot.py --arch=x86' in '/home/dchen/.cache/yay/v8-r/src/v8'
Installing Debian sid i386 root image: /home/dchen/.cache/yay/v8-r/src/v8/build/linux/debian_sid_i386-sysroot
Downloading https://commondatastorage.googleapis.com/chrome-linux-sysroot/toolchain/5a09b89bfdd9ff4c6b49f5f418124c325259c854/debian_sid_i386_sysroot.tar.xz
Hook 'vpython build/linux/sysroot_scripts/install-sysroot.py --arch=x86' took 13.36 secs
Running hooks:  50% (13/26) sysroot_x64
________ running 'vpython build/linux/sysroot_scripts/install-sysroot.py --arch=x64' in '/home/dchen/.cache/yay/v8-r/src/v8'
Installing Debian sid amd64 root image: /home/dchen/.cache/yay/v8-r/src/v8/build/linux/debian_sid_amd64-sysroot
Downloading https://commondatastorage.googleapis.com/chrome-linux-sysroot/toolchain/22f2db7711f7426a364617bb6d78686cce09a8f9/debian_sid_amd64_sysroot.tar.xz
Hook 'vpython build/linux/sysroot_scripts/install-sysroot.py --arch=x64' took 16.41 secs
Running hooks:  69% (18/26) clang               
________ running 'vpython tools/clang/scripts/update.py' in '/home/dchen/.cache/yay/v8-r/src/v8'
Downloading https://commondatastorage.googleapis.com/chromium-browser-clang/Linux_x64/clang-llvmorg-12-init-15676-g5c951623-1.tgz .......... Done.
Hook 'vpython tools/clang/scripts/update.py' took 10.03 secs
Running hooks: 100% (26/26), done.                        
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
  -> Reset repository
HEAD is now at e070505f5c Update V8 DEPS.
  -> Syncing, this can take a while...
Syncing projects: 100% (28/28), done.                                                
Running hooks: 100% (26/26), done.                        
Syncing projects: 100% (28/28), done.                                                
Running hooks: 100% (26/26), done.                        
  -> Using system libraries for ICU
  -> disable nodiscard with gcc
  -> Running GN...
Done. Made 164 targets from 90 files in 181ms
  -> Adding icu missing folders
==> Sources are ready.
==> Making package: v8-r 8.9.222-1 (Sun 10 Jan 2021 12:59:13 PM EST)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> WARNING: Using existing $srcdir/ tree
==> Removing existing $pkgdir/ directory...
==> Starting build()...
  -> Building, this will take a while...
ninja: Entering directory `x86.release'
[1139/2058] CXX obj/v8_base_without_compiler/intl-objects.o
FAILED: obj/v8_base_without_compiler/intl-objects.o 
g++ -MMD -MF obj/v8_base_without_compiler/intl-objects.o.d -DUSE_UDEV -DUSE_AURA=1 -DUSE_GLIB=1 -DUSE_NSS_CERTS=1 -DUSE_OZONE=1 -DUSE_X11=1 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D_FORTIFY_SOURCE=2 -DCOMPONENT_BUILD -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -DV8_TYPED_ARRAY_MAX_SIZE_IN_HEAP=64 -DENABLE_GDB_JIT_INTERFACE -DENABLE_MINOR_MC -DV8_INTL_SUPPORT -DENABLE_HANDLE_ZAPPING -DV8_ATOMIC_OBJECT_FIELD_WRITES -DV8_ATOMIC_MARKING_STATE -DV8_ENABLE_LAZY_SOURCE_POSITIONS -DV8_WIN64_UNWINDING_INFO -DV8_ENABLE_REGEXP_INTERPRETER_THREADED_DISPATCH -DV8_SNAPSHOT_COMPRESSION -DV8_COMPRESS_POINTERS -DV8_31BIT_SMIS_ON_64BIT_ARCH -DV8_DEPRECATION_WARNINGS -DV8_IMMINENT_DEPRECATION_WARNINGS -DV8_NO_ARGUMENTS_ADAPTOR -DCPPGC_CAGED_HEAP -DV8_TARGET_ARCH_X64 -DV8_HAVE_TARGET_OS -DV8_TARGET_OS_LINUX -DDISABLE_UNTRUSTED_CODE_MITIGATIONS -DBUILDING_V8_SHARED -DV8_COMPRESS_POINTERS -DV8_31BIT_SMIS_ON_64BIT_ARCH -DV8_DEPRECATION_WARNINGS -DV8_IMMINENT_DEPRECATION_WARNINGS -DV8_NO_ARGUMENTS_ADAPTOR -DCPPGC_CAGED_HEAP -DUSING_SYSTEM_ICU=1 -DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC -DUCHAR_TYPE=uint16_t -DU_IMPORT=U_EXPORT -DUSING_V8_BASE_SHARED -DUSING_V8_PLATFORM_SHARED -DV8_COMPRESS_POINTERS -DV8_31BIT_SMIS_ON_64BIT_ARCH -DV8_DEPRECATION_WARNINGS -DV8_IMMINENT_DEPRECATION_WARNINGS -DV8_NO_ARGUMENTS_ADAPTOR -DCPPGC_CAGED_HEAP -I.. -Igen -I.. -I../include -Igen -Igen/shim_headers/icui18n_shim -Igen/shim_headers/icuuc_shim -I../include -I../include -I../third_party/zlib -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -funwind-tables -fPIC -pipe -pthread -m64 -march=x86-64 -msse3 -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -Wall -Wno-unused-local-typedefs -Wno-maybe-uninitialized -Wno-deprecated-declarations -Wno-comments -Wno-packed-not-aligned -Wno-missing-field-initializers -Wno-unused-parameter -fno-omit-frame-pointer -g0 -fvisibility=hidden -Wno-strict-overflow -Wno-return-type -Wno-int-in-bool-context -O3 -fno-ident -fdata-sections -ffunction-sections -std=gnu++14 -Wno-narrowing -Wno-class-memaccess -fno-exceptions -fno-rtti -fvisibility-inlines-hidden -c ../src/objects/intl-objects.cc -o obj/v8_base_without_compiler/intl-objects.o
../src/objects/intl-objects.cc:52:28: error: static assertion failed: v8 is required to build with ICU 68 and up
   52 |     V8_MINIMUM_ICU_VERSION <= U_ICU_VERSION_MAJOR_NUM,
[1144/2058] CXX obj/v8_base_without_compiler/js-display-names.o
ninja: build stopped: subcommand failed.
==> ERROR: A failure occurred in build().
    Aborting...
error making: v8-r

izahn commented on 2020-12-31 13:15 (UTC)

Wow, somehow I missed https://github.com/JanMarvin/archpkgs. Thank you @JanMarvin, this is a great service to the community of Arch Linux useRs

JanMarvin commented on 2020-12-31 12:02 (UTC)

@izahn: That is correct. Recently, the V8 R-package added a new way to get a static V8 build. However - while I was involved creating the initial static V8 build that led to the option you just mentioned - this download is intended for x64 Linux distributions that do not provide a working V8 package (iirc at that time: openSUSE). Arch users, on the other hand, are fortunate to have a working and updated PKGBUILD as well as an option to obtain binaries (for those that do not want to build V8 once a week). Finally, I am investing a good portion of my time working with upstream to keep the R-package usable with latest V8. Ultimately, it is a decision left up to the user.

izahn commented on 2020-12-31 00:42 (UTC)

The V8 R package now offers the ability to install binary and no longer requires a system library. You just need to set an environment variable DOWNLOAD_STATIC_LIBV8=1 as documented https://github.com/jeroen/V8

JanMarvin commented on 2020-11-06 18:37 (UTC)

If you're interested in binary builds, but do not want to use my arch mirror at github, there are now binary builds at github built using .github/actions and docker.

levitsky commented on 2020-10-20 15:28 (UTC)

Ah, thank you @JanMarvin. I didn't realize they were different.

JanMarvin commented on 2020-10-20 13:31 (UTC)

This is because you have installed v8-r from my github and not from the AUR. As stated here when using the github version of my package, you need to install V8's github master.

I keep this version here usable with the CRAN release and propose fixes upstream to Jeroen before they break any work environment.

levitsky commented on 2020-10-20 13:22 (UTC)

Thank you @JanMarvin. I didn't find this in the manual. Running install.packages('V8') in R results in compilation errors, such as:

/usr/include/v8-internal.h:450:38: error: ‘remove_cv_t’ is not a member of ‘std’; did you mean ‘remove_cv’? and /usr/include/v8-internal.h:450:63: error: ‘::Perform’ has not been declared

JanMarvin commented on 2020-10-20 13:09 (UTC)

@levitsky please read the manual (https://github.com/jeroen/v8). To use the V8 package in R you need to have this package installed and afterwards build the V8 package in R.

levitsky commented on 2020-10-20 12:49 (UTC)

I'm having trouble getting it to work. I have built and installed the package but it doesn't install anything into /usr/lib/R? So doing library(V8) from R fails. However, this package conflicts with v8 package, so I can't have both. What am I missing?

leonardof commented on 2020-08-22 15:15 (UTC)

Exactly, I was running out of memory! Haven't bothered with swap in many years now, but it seems 8 GB RAM are modest by today's standards.

Thanks for the repo. At first, I wasn't able to compile the V8 package with it, but I noticed the glibc version in the error message, enabled [testing], and everything worked.

JanMarvin commented on 2020-08-22 12:53 (UTC)

@leonardof did you somehow run out of memory? That's my best guess from your output (you get english locales running export LANG=C). You could install the binary from my arch repo on github.

leonardof commented on 2020-08-22 12:26 (UTC)

Compilation fails for me despite binutils 2.34-5; not using any AUR helper. The output of build() will be on pastebin for a month.

JanMarvin commented on 2020-08-22 10:54 (UTC)

Be aware that currently building fails with an ld segfault. I assume that this is related to a binutils 2.35-1 update (see my bug report: https://bugs.archlinux.org/task/67671?project=1&string=binutils)

japhir commented on 2020-06-15 08:58 (UTC)

I did install the package with my AUR helper, yay, and simply added this line to my /etc/pacman.conf: IgnorePkg = v8-r I can comment this line when I want to update the package.

Just thought I'd share, might be useful for others!

tealeaf commented on 2020-06-07 11:30 (UTC)

@JanMarvin: Thank you! Much appreciated.

(I haven't checked, but I suspect that the

export CC=/usr/bin/clang
export CXX=/usr/bin/clang++

exports might also want to be in build() build as well to avoid potential problems in the same situation.)

JanMarvin commented on 2020-06-07 11:21 (UTC)

@tealaf Thanks for the report. A valid claim and I'll add the required lines for next weeks build.

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

@JanMarvin: Can I mention that this PKGBUILD fails under makepkg if you use the --noextract option, which runs build() but not prepare(). According to the makepkg man page:

This is handy if you want to go into $srcdir/ and manually patch or tweak code, then make a package out of the result.

As this is a supported, documented use of makepkg that fails with the current PKGBUILD, would you consider adding the two exports to build() as a legitimate bugfix?

For reference, the two exports required are:

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

in the build() function.

Thanks for considering.

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().

tealeaf commented on 2020-05-16 13:20 (UTC)

@JanMarvin: I know that AUR helpers aren't officially supported, but really, it's only adding a couple of lines that I've already provided. Couldn't you do it to make things that little bit easier?

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

Builds after the gcc10 and binutils update require a patch to build.

@tealeaf sorry, I'm not interested to fix a working PKGBUILD for $aurhelper. If it works with makepkg I'm fine.

tealeaf commented on 2020-05-02 21:35 (UTC)

@JanMarvin Is there any chance that we could have that minimal update to the current PKGBUILD in the interim, whilst waiting for the pull request to V8 to be merged, so that it builds in yay?

Thanks for all your work on this!

JanMarvin commented on 2020-05-01 14:15 (UTC)

I have prepared a build with python3 as there is only one file left to patch (https://github.com/JanMarvin/v8-R/tree/python3), the test part still requires python2. Once this (https://github.com/jeroen/V8/pull/88) or something similar is merged into the R package V8, I'll likely switch to the python3 branch.

tealeaf commented on 2020-04-30 21:23 (UTC)

I just reported this over at the yay github page. They told me that this is likely happening due to yay splitting out the prepare() and build() stages of the PKGBUILD, so the environment variables aren't being carried over.

I've edited the PKGBUILD to add:

export CC=/usr/bin/clang
export CXX=/usr/bin/clang++

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

at the start of the build() function, and it built successfully for me in yay.

JanMarvin commented on 2020-04-04 15:32 (UTC) (edited on 2020-04-04 15:32 (UTC) by JanMarvin)

It's because gcc_solink_wrapper.py from https://chromium.googlesource.com/chromium/src/build/ is not yet python 3 ready and yay does not seem to respect the PKGBUILD

nevrome commented on 2020-04-04 14:03 (UTC)

Thank you @dickoah and @JanMarvin.

yay -S v8-r failed with

==> Starting build()...
  -> Adding icu missing folders
  -> Building, this will take a while...
ninja: Entering directory `out.gn/Release'
[115/1664] 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 151, in <module>
    sys.exit(main())
  File "../../build/toolchain/gcc_solink_wrapper.py", line 134, in main
    result, toc = CollectTOC(args)
  File "../../build/toolchain/gcc_solink_wrapper.py", line 44, 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'
[132/1664] CXX obj/torque_base/torque-parser.o
ninja: build stopped: subcommand failed.
==> ERROR: A failure occurred in build().
    Aborting...
Error making: v8-r

but

cd /tmp + yay -G v8-r + cd v8-r + makepkg + yay -U v8-r-8.3.129-1-x86_64.pkg.tar.xz

worked fine.

Thanks for the help, but why is that so?

dickoah commented on 2019-12-08 20:21 (UTC) (edited on 2019-12-08 20:22 (UTC) by dickoah)

@nevrome You can build it locally, e.g using yay you can something like this

cd /tmp

yay -G v8-r

cd v8-r

makepkg

JanMarvin commented on 2019-12-04 22:13 (UTC)

Hi @nevrome, looks like something fails. I see similar errors when building in a python 3 environment. The warnings are expected and not harmful. Could you elaborate how you try to build?

nevrome commented on 2019-12-04 21:20 (UTC) (edited on 2019-12-04 21:20 (UTC) by nevrome)

Building fails for me with the following message. What's the problem here?

[52/1497] CXX obj/torque_base/torque-parser.o
warning: unknown warning option '-Wno-implicit-int-float-conversion'; did you mean '-Wno-implicit-float-conversion'? [-Wunknown-warning-option]
warning: unknown warning option '-Wno-xor-used-as-pow'; did you mean '-Wno-unused-macros'? [-Wunknown-warning-option]
warning: unknown warning option '-Wno-c99-designator'; did you mean '-Wno-gnu-designator'? [-Wunknown-warning-option]
warning: unknown warning option '-Wno-reorder-init-list'; did you mean '-Wno-empty-init-stmt'? [-Wunknown-warning-option]
warning: unknown warning option '-Wno-final-dtor-non-final-class'; did you mean '-Wno-abstract-final-class'? [-Wunknown-warning-option]
warning: unknown warning option '-Wno-sizeof-array-div'; did you mean '-Wno-sizeof-array-decay'? [-Wunknown-warning-option]
6 warnings generated.
ninja: build stopped: subcommand failed.
==> ERROR: A failure occurred in build().
    Aborting...
Error making: v8-r

JanMarvin commented on 2019-11-29 09:45 (UTC)

@Hendrikto thanks for the report, but ninja should be part of depot_tools and line 45 of the PKGBUILD should make ninja available for the PKGBUILD. The package is build with makepkg weekly on systems without installed ninja. If nothing changed in depot_tools maybe it's a bug with your AUR-helper?

Hendrikto commented on 2019-11-29 08:33 (UTC)

This package is missing a make dependency in ninja:

/home/hendrik/.cache/yay/v8-r/PKGBUILD: line 102: ninja: command not found

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