rogchap / v8go

Execute JavaScript from Go
https://rogchap.com/v8go
BSD 3-Clause "New" or "Revised" License
3.21k stars 221 forks source link

Master breaks docker builds #368

Open kevburnsjr opened 1 year ago

kevburnsjr commented 1 year ago

The latest commit to master upgrades to C++ 17 which requires gcc11, which is not included in the latest official dockerhub golang containers (gcc10).

FROM golang:1.20 as builder
WORKDIR /
COPY go.* .
RUN go mod download
COPY . .
RUN go build -ldflags="-s -w -extldflags \"-static\"" -tags="netgo" -o binaryname /

This used to work but now produces the following error:

#12 13.18 /usr/bin/ld: /go/pkg/mod/rogchap.com/v8go@v0.8.1-0.20230130145145-02e1763d0176/deps/linux_x86_64/libv8.a(pgo.o): in function `v8::internal::wasm::DeserializeTypeFeedback(v8::internal::wasm::Decoder&, v8::internal::wasm::WasmModule*)':
#12 13.18 pgo.cc:(.text._ZN2v88internal4wasm23DeserializeTypeFeedbackERNS1_7DecoderEPNS1_10WasmModuleE+0x868): undefined reference to `std::__throw_bad_array_new_length()'

We're reverting to v0.8.0 since we haven't identified any features in 10.9.x that would justify the added operational complexity.

Would it be more prudent to wait until the official golang containers support gcc11 before requiring it?