pkg / term

Package term manages POSIX terminals.
BSD 2-Clause "Simplified" License
392 stars 64 forks source link

undefined: open_pty_master Ptsname grantpt unlockpt #27

Open CodyGuo opened 6 years ago

CodyGuo commented 6 years ago

github.com/pkg/term/termios

..............\pkg\term\termios\pty.go:20:14: undefined: open_pty_master ..............\pkg\term\termios\pty.go:25:16: undefined: Ptsname ..............\pkg\term\termios\pty.go:30:8: undefined: grantpt ..............\pkg\term\termios\pty.go:35:8: undefined: unlockpt

davecheney commented 6 years ago

Hi. You’ve given me no information about how I can help you solve your problem.

Which version of Go? Which operating system? What commands did you type, show all of them, what happened when you typed them, show as much as you can.

On 5 Feb 2018, at 18:48, CodyGuo notifications@github.com wrote:

github.com/pkg/term/termios

..............\pkg\term\termios\pty.go:20:14: undefined: open_pty_master ..............\pkg\term\termios\pty.go:25:16: undefined: Ptsname ..............\pkg\term\termios\pty.go:30:8: undefined: grantpt ..............\pkg\term\termios\pty.go:35:8: undefined: unlockpt

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or mute the thread.

gdamore commented 5 years ago

This is seen when cross building for Solaris, or when building on Windows. I'll be following up with some fixes.

CodyGuo commented 5 years ago

thanks

xyproto commented 3 years ago

I get these issues when building with GOOS=openbsd using go version go1.15.5 linux/amd64 on Arch Linux:

# github.com/pkg/term/termios
vendor/github.com/pkg/term/termios/pty.go:22:14: undefined: open_pty_master
vendor/github.com/pkg/term/termios/pty.go:27:16: undefined: Ptsname
vendor/github.com/pkg/term/termios/pty.go:32:8: undefined: grantpt
vendor/github.com/pkg/term/termios/pty.go:37:8: undefined: unlockpt

The results are the same for:

davecheney commented 3 years ago

I tried to add some CI around this and from what I can tell, because the openbsd bindings use CGO it is difficult to cross compile them. I think this is the same problem that solaris faces.

kylhuk commented 3 years ago

Experienced the same issue now. I transpiled a C file with c4go, which uses your package. Using Windows 10 (20H2) AMD64, Go 1.15.2, building with Goland 2020.3.

Attaching the go-file I'm trying to run. main.zip

davecheney commented 3 years ago

Thanks for the detail. I don’t know how to fix this as cross compiling cgo code is fraught with difficulty

gdamore commented 3 years ago

Sorry I never followed up -- I think at some point I assumed @davecheney wasn't interested in contributions to this package, as of the two PRs I submitted to it, one took over a year to get merged (with no feedback in the interim) and the other is still outstanding (though it now had conflicts). I can try to resurrect my work (I wound up going a totally different to not depend on this package) if there is interest, but I don't want to invest the time to put together a fix if its just going to bitrot indefinitely.

davecheney commented 3 years ago

@gdamore i sent you an invite to this repo so I won’t be a blocker any more