Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

181
Vistas
GoLang: main not finding shared library used by module

I'm building a module in go, it looks something like this:

package eos

/*
#cgo LDFLAGS: -L${SRCDIR}/vendor/MyLibrary/1.14.2/Bin/Linux -lMY_SDK-Linux-Shipping
#cgo CFLAGS: -I ${SRCDIR}/vendor/MyLibrary/1.14.2/Include
#include "my_sdk.h"*/
import "C"

func useMyCFunc() void {
    C.myCFunc()
}

Then I have hello.go which is my main:

package main

import (
    "helloworld/eos"
)

func main() {
    eos.useMyCFunc()
}

The directory structure is as follows:

-helloworld/
|
- hello/
    |
    - hello.go
|
-eos/
    |
    - eos.go
    |
    - vendor/
        |
        - (all the required lib files)

These are the commands I run to build the program:

cd eos
go mod init helloworld/eos
cd ../hello
go mod init helloworld/hello
go mod edit -replace helloworld/eos=../eos
go mod tidy
go build .

None of these return any kind of error. However, when I run go run . from /hello, I get this error:

/tmp/go-build2142984290/b001/exe/hello: error while loading shared libraries: libMY_SDK-Linux-Shipping.so: cannot open shared object file: No such file or directory

This file does exist, and is located at helloworld/eos/vendor/MyLibrary/1.14.2/Bin/Linux/libMY_SDK-Linux-Shipping.so, as specified in the LDFLAGS of eos.go.

Why can hello.go not find this file?

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

On top of what @rocka2q mentioned about CGo, useMyCFunc() needs to be capitalized for it to be accessible to outside of the eos package.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda