Golang을 WebAssembly(Wasm)로 컴파일
GOOS=js GOARCH=wasm go build 명령을 사용하여 Go 코드를 Wasm으로 컴파일할 때 - o main.wasm, Wasmtime 또는 Wasm3을 실행하는 동안 오류가 발생할 수 있습니다.
오류 및 해결 방법
이 오류는 go::debug 가져오기가 정의되지 않았음을 나타냅니다. Go 컴파일러에서 생성된 main.wasm 파일은 wasm_exec.js shim과 함께 사용하기 위한 것입니다. 이 문제를 해결하려면 다음 명령과 함께 Node.js를 사용하세요.
<code class="sh">node wasm_exec.js main.wasm</code>
이 오류는 Wasm3을 사용할 때 발생합니다. 대신 다음 명령을 사용하여 WASI(WebAssembly System Interface)를 지원하는 Tinygo로 컴파일해 보세요.
<code class="sh">tinygo build -target=wasi -o main.wasm main.go</code>
Go는 브라우저 외부에서 Wasm에 대한 최첨단 지원을 제공합니다. 이를 활용하려면 다음 단계를 사용하여 소스에서 Go를 컴파일하세요.
<code class="sh">go install golang.org/dl/gotip@latest gotip download</code>
<code class="sh">GOOS=wasip1 GOARCH=wasm gotip build -o main.wasm</code>
이 접근 방식을 사용하면 추가 수정 없이 Wasmtime으로 프로그램을 실행할 수 있습니다.
위 내용은 WebAssembly(Wasm)로 이동하여 컴파일할 때 오류를 해결하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!