webmachinelearning / webnn-native

🧠⚙️ Standalone native implementation of the Web Neural Network API
Apache License 2.0
50 stars 21 forks source link

Build error with C++17 upgrade in ChromeOS #243

Closed vbenni closed 2 years ago

vbenni commented 2 years ago

Error description ERROR at //build/toolchain/gcc_toolchain.gni:473:27: Unknown substitution pattern rspfile_content = "-Wl,--whole-archive {{inputs}} {{solibs}} -Wl,--no-whole-archive {{libs}} {{rlibs}}" ^------------------------------------------------------------------------------------ Found a {{ at offset 74 and did not find a known substitution following it. See //build/toolchain/gcc_toolchain.gni:739:3: whence it was called. gcc_toolchain(target_name) { ^--------------------------- See //build/toolchain/linux/BUILD.gn:10:1: whence it was called. clang_toolchain("clang_ppc64") { ^------------------------------- See //BUILD.gn:19:1: which caused the file to be included. group("all") { ^-------------

vbenni commented 2 years ago

Error log: error_log.txt

Steps to reproduce: steps_log.txt $ mkdir webnn-native $ cd webnn-native $ git clone -b main https://github.com/webmachinelearning/webnn-native.git . $ cp scripts/standalone.gclient .gclient $ gclient sync $ emerge-hatch webnn-native

ebuild file: webnn-native-9999.ebuild.txt

lisa0314 commented 2 years ago

@vbenni could you please compare the version of the clang and buildtools updated in DEP of webnn-native with the version of ChromeOS ? I guess the version of the buildtools or clang of your ChromeOS is behind the latest for c++17.

vbenni commented 2 years ago

@lisa0314 I got this when I checked the clang version in ChromeOS $ clang --version Chromium OS 13.0_pre433403_p20211019-r10 clang version 13.0.0 (/var/tmp/portage/sys-devel/llvm-13.0_pre433403_p20211019-r10/work/llvm-13.0_pre433403_p20211019/clang 0fe7531b75e54909a7cb7f7080634ab2053964ad) Target: x86_64-pc-linux-gnu Thread model: posix InstalledDir: /usr/bin

Is this 0fe7531b75e54909a7cb7f7080634ab2053964ad is the commit id for clang above mentioned ? If yes, than its different from what mentioned in DEP.

lisa0314 commented 2 years ago

The detailed information of the commit of clang of chromium tools for building C++ 17 is listed as below: commit 8b7330592cb85ba09505a6be7bacabd0ad6160a3 Author: Anthony Polito apolito@google.com Date: Thu Dec 23 00:09:29 2021 +0000

fix python3 incompatibility with strings vs bytes

Change-Id: I40a550ad7de8fa3a81103d41922b7c4476defae1
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3354244
Reviewed-by: Amy Huang <akhuang@google.com>
Commit-Queue: Anthony Polito <apolito@google.com>
Cr-Commit-Position: refs/heads/main@{#953699}
NOKEYCHECK=True
GitOrigin-RevId: 0e6d063f61937f9c6c8efd892d346415b3afade0

However, I can't find the commit with id 0fe7531b75e54909a7cb7f7080634ab2053964ad of chromium.

vbenni commented 2 years ago

Upgraded clang version to Clang 14 in ChromeOS. The issue is solved.