+
96
-

golang如何生成c语言可以调用的动态库.so和静态库.a?

go

请问golang如何生成c语言可以调用的动态库.so和静态库.a?

网友回复

+
16
-

我们先看看golang的buildmode命令解释

go help buildmode
The 'go build' and 'go install' commands take a -buildmode argument which
indicates which kind of object file is to be built. Currently supported values
are:

    -buildmode=archive
        Build the listed non-main packages into .a files. Packages named
        main are ignored.

    -buildmode=c-archive
        Build the listed main package, plus all packages it imports,
        into a C archive file. The only callable symbols will be those
        functions exported using a cgo //export comment. Requires
        exactly one main package to be listed.

    -buildmode=c-shared
        Build the listed main package, plus all packages it imports,
        into a C shared library. The only callable symbols will
        be those functions exported using a cgo //export comment.
        Requires e...

点击查看剩余70%

我知道答案,我要回答