wasm-pack icon indicating copy to clipboard operation
wasm-pack copied to clipboard

build error: 'failed to build archive: wasm32.o: section too large'

Open baoyachi opened this issue 10 months ago • 1 comments

build log:

➜  rust-demo git:(master) wasm-pack build --target bundler                           
[INFO]: 🎯  Checking for the Wasm target...
[INFO]: 🌀  Compiling to Wasm...
   Compiling cc v1.0.90
   Compiling version_check v0.9.4
   Compiling libc v0.2.153
   Compiling cfg-if v1.0.0
   Compiling once_cell v1.19.0
   Compiling zerocopy v0.7.32
   Compiling chumsky v1.0.0-alpha.7
   Compiling allocator-api2 v0.2.16
   Compiling unicode-ident v1.0.12
   Compiling demo v0.1.0 (~/rust-demo)
   Compiling ahash v0.8.11
   Compiling psm v0.1.21
   Compiling stacker v0.1.15
   Compiling hashbrown v0.14.3
error: failed to build archive: 'wasm32.o': section too large

The following warnings were emitted during compilation:

warning: [email protected]: warning: /Library/Developer/CommandLineTools/usr/bin/ranlib: archive library: ~/rust-demo/target/wasm32-unknown-unknown/release/build/psm-e7819be911e6050d/out/libpsm_s.a the table of contents is empty (no object file members in the library define global symbols)

error: could not compile `psm` (lib) due to 1 previous error
warning: build failed, waiting for other jobs to finish...
Error: Compiling your crate to WebAssembly failed
Caused by: Compiling your crate to WebAssembly failed
Caused by: failed to execute `cargo build`: exited with exit status: 101
  full command: cd "~/rust-demo" && "cargo" "build" "--lib" "--release" "--target" "wasm32-unknown-unknown"
➜  rust-demo git:(master)

  • Cargo.toml file
[package]
name = "demo"
version = "0.1.0"
edition = "2021"

[lib]
crate-type = ["cdylib", "rlib"]

[dependencies]
chumsky = "1.0.0-alpha.6"

ref:https://github.com/zesterer/chumsky/issues/622

baoyachi avatar Apr 15 '24 06:04 baoyachi

I had a similar issue on a different project. Installing LLVM from brew and making sure brew's LLVM was called (by updating PATH) instead of using Xcode's worked for me.

~ % clang --version       
Apple clang version 15.0.0 (clang-1500.3.9.4)
Target: arm64-apple-darwin23.5.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

versus:

~ % export PATH=/opt/homebrew/Cellar/llvm/18.1.6/bin/:$PATH                             
~ % clang --version                                        
Homebrew clang version 18.1.6
Target: arm64-apple-darwin23.5.0
Thread model: posix
InstalledDir: /opt/homebrew/Cellar/llvm/18.1.6/bin

jccampagne avatar Jun 06 '24 18:06 jccampagne

I have encountered exact same error when compiling surrealdb

ActuallyHappening avatar Jul 03 '24 23:07 ActuallyHappening