0

go_library変数をブーストラップするために、srcsを a に埋め込んでいembed.FSます。これを整理するのに時間がかかりました ( bazel go_embed_data "could not embedded"を参照)。

私が抱えている新しい問題は、実行時に SIGSEGV を受け取っていることです。unexpected fault address 0x0

bazel BUILD と go コードは以下のとおりです

go_library(
    name = "my_lib",
    srcs = ["main.go"],
    embedsrcs = glob(["static/**/*"]),
    importpath = "github.com/myorg/myrepo",
    visibility = ["//visibility:private"],
    deps = ["//cmd"],
)

go_binary(
    name = "my_linux_amd64",
    cgo = True,
    embed = [":my_lib"],
    gc_goopts = [
        "-dynlink",
    ],
    goarch = "amd64",
    goos = "linux",
    linkmode = "pie",
    visibility = ["//visibility:public"],
)

package main

import (
    "embed"
)

//go:embed static/*
var staticFS embed.FS // fault address

これを解決する方法がわかりません。

4

1 に答える 1