emersion / go-autostart

A Go library to run a command after login
MIT License
159 stars 30 forks source link

Problem with cross compilation for Windows #22

Open es1o opened 2 years ago

es1o commented 2 years ago

Hello. I'm trying to compile code for windows from MacOS and Linux and I've got an error:

app.Enable undefined (type *autostart.App has no field or method Enable)

My code:

     if runtime.GOOS == "windows" {
        exe, _ := os.Executable()
        app := &autostart.App{
            Name:        "test",
            DisplayName: "test",
            Exec:        []string{exe},
        }
        app.Enable()
    }
obuchmann commented 1 year ago

Any News on that? I'm getting the same error

kamushadenes commented 1 year ago

Make sure to have CGO_ENABLED=1

arkan commented 1 year ago

I'm on mac and I needed to do the following in order to compile the code for Windows

$> brew install mingw-w64
$> GOARCH=amd64 GOOS=windows CGO_ENABLED=1 CC=x86_64-w64-mingw32-gcc CXX=x86_64-w64-mingw32-g++ go build cmd/main.go

And voila!