UnitTest
V2EX  ›  问与答

Golang 新手求助: 请问如何处理.so 库的依赖?

  •  
  •   UnitTest · Jun 14, 2021 · 1657 views
    This topic created in 1830 days ago, the information mentioned may be changed or developed.

    想用 libvips 处理图片, github 上找到了一个 govips 的库, 需要本机先安装 libvips,

    我的理解是 govips 相当于是对 libvips 的一层封装, 之后我用 go build 打包生成的可执行文件并不包含 libvips 的内容,

    当我上传到服务器的时候, 服务器还要安装一次 libvips,

    请问这种情况有没有更好的处理方式?

    之前一直用 nodejs, nodejs 的 sharp 在 install 之后会把库也下载下来, 不需要本机安装 libvips, 感觉比 go 方便很多.

    3 replies    2021-06-15 16:54:54 +08:00
    Jirajine
        1
    Jirajine  
       Jun 14, 2021 via Android
    静态链接
    DCCooper
        2
    DCCooper  
       Jun 15, 2021 via iPhone
    楼上+1,静态编译

    $ go build -ldflags="-extldflags=-static"
    UnitTest
        3
    UnitTest  
    OP
       Jun 15, 2021
    @DCCooper 感谢回复, 之前不知道这个术语, 具体查了一下发现理论上是用这个参数的,
    但是好像 libvips 打包还是有很多问题, 一直报错提示 undefined reference , 网上搜了下好像 govips 不太容易打包.
    不行的话我还是系统里安装 libvips 吧.
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2602 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 07:44 · PVG 15:44 · LAX 00:44 · JFK 03:44
    ♥ Do have faith in what you're doing.