Soy bastante nuevo en el uso de Go y me di cuenta de que cuando construí el proyecto Go lo cloné desde GitHub a través de:
$ go build
El ejecutable está compilado, pero cuando lo ejecuto:
$ mediamtx --version
me sale v0.0.0
Busqué en Google el problema y descubrí que podía configurar el parámetro Idflags para configurar la versión en la compilación, así que intenté:
go build -ldflags="-X 'github.com/bluenviron/mediamtx/internal/core.Version=v1.5.0'"
Desafortunadamente, terminé con exactamente el mismo problema ybanderas de identificaciónParece no hacer nada, sin errores, el ejecutable aún se compila. He probado a borrar y empezar de nuevo desde unclon de gity ejecutando el comando consudo, no he logrado que funcione y no estoy seguro de qué estoy haciendo mal. Esto es lo que estoy tratando deir a construirconbanderas de identificación:
Este es el contenido de mi main.go que obtuve mi ruta para que GitHub lo incluya en mibanderas de identificacióndirectiva
// main executable.
package main
import (
"os"
"github.com/bluenviron/mediamtx/internal/core"
)
func main() {
s, ok := core.New(os.Args[1:])
if !ok {
os.Exit(1)
}
s.Wait()
}
Respuesta1
La respuesta es que el parámetro "versión" en Idflags distingue entre mayúsculas y minúsculas. Estaba usando una "Versión" V mayúscula cuando debería haber estado usando una "versión" v minúscula.
go build -ldflags="-X 'github.com/bluenviron/mediamtx/internal/core.version=v1.5.0'"
es el comando CLI correcto
Su mejor referencia para solucionar este problema es consultar su archivo core.go para encontrar la declaración de la variable de versión:
~/mediamtx/internal/core/ [main] vi core.go
En mi caso la variable versión se definió como:
var version = "v0.0.0"
El problema ahora está resuelto y:
mediamtx --version
Ahora produce:
v1.5.0