Thanks, Skip. That would follow; this system is probably straight Fourth Edition, certainly an old ISO... I've never been 100% clear on the process for running updates; can I bring myself up to current from where I'm at now and not have to reload or build a fresh system? It's a VM and I can snapshot so I'm willing to give anything a try ... I'm looking at the directions in a (cached copy) of http://plan9.bell-labs.com/wiki/plan9/Staying_up_to_date/index.html... Is that still valid? What's the canonical procedure these days for updating a system? If that's roughly correct ... I'm running a single Plan 9 machine, combined CPU and fileserver ... I run that command as the bootes user on the system console? Thanks! Sean On Tue, Jan 26, 2016 at 5:05 PM, Skip Tavakkolian < skip.tavakkolian@gmail.com> wrote: > All the errors seem related to the old Rune size. I suspect you're running > an old system and it's likely to not have nsec and tsemacquire syscalls > either. > > If you believe the system is up-to-date, you can cross compile a simple Go > program using 1.5 or later targeting GOOS=plan9 GOARCH=386 from a Linux/OSX > or Windows box and see if it runs on your system. That might give you more > info. > > > > On Tue, Jan 26, 2016 at 1:44 PM Sean Caron wrote: > >> Hi all, >> >> I've been getting interested in programming in Go recently and it's my >> understanding that at some point in time, Plan 9 was a supported >> environment in which one could bootstrap and use Go? >> >> I've tried a few different versions; 1.2.2, 1.4.2, 1.5.2, just following >> the directions that I found on a blog somewhere, i.e: >> >> tar xf go 1.4.2.tar >> cd go-go1.4.2/src >> ./all.rc >> >> But it fails almost immediately trying to bootstrap Go: >> >> cpu% ./all.rc >> # Building C bootstrap tool. >> cmd/dist >> >> # Building compilers and Go bootstrap tool for host, plan9/386. >> lib9 >> cpp: /usr/scaron/go-go1.4.2/include/plan9/../../src/lib9/utf/utf.h:226 >> /usr/scaron/go-go1.4.2/include/plan9/../utf.h:1 >> /usr/scaron/go-go1.4.2/include/plan9/utf.h:5 >> /usr/scaron/go-go1.4.2/include/plan9/../fmt.h:21 >> /usr/scaron/go-go1.4.2/include/plan9/fmt.h:5 >> /usr/scaron/go-go1.4.2/include/plan9/libc.h:6 >> /usr/scaron/go-go1.4.2/src/lib9/flag.c:6 Unterminated string or char const >> >> I get a fair number of these errors for various header files, then some >> more worrisome output: >> >> /usr/scaron/go-go1.4.2/include/plan9/../../src/lib9/utf/utf.h:19[/usr/scaron/go-go1.4.2/src/lib9/fmt/dorfmt.c:152] >> external redeclaration of: Rune >> TYPEDEF UINT >> /usr/scaron/go-go1.4.2/include/plan9/../../src/lib9/utf/utf.h:19[/usr/scaron/go-go1.4.2/src/lib9/fmt/dorfmt.c:152] >> TYPEDEF USHORT >> /386/include/u.h:11[/usr/scaron/go-go1.4.2/src/lib9/fmt/dorfmt.c:21] >> /usr/scaron/go-go1.4.2/include/plan9/../../src/lib9/utf/utf.h:19[/usr/scaron/go-go1.4.2/src/lib9/flag.c:153] >> external redeclaration of: Rune >> TYPEDEF UINT >> /usr/scaron/go-go1.4.2/include/plan9/../../src/lib9/utf/utf.h:19[/usr/scaron/go-go1.4.2/src/lib9/flag.c:153] >> TYPEDEF USHORT >> /386/include/u.h:11[/usr/scaron/go-go1.4.2/src/lib9/flag.c:22] >> cpp: /usr/scaron/go-go1.4.2/include/plan9/../../src/lib9/utf/utf.h:227 >> /usr/scaron/go-go1.4.2/include/plan9/../utf.h:1 >> /usr/scaron/go-go1.4.2/include/plan9/utf.h:5 >> /usr/scaron/go-go1.4.2/include/plan9/libc.h:7 >> /usr/scaron/go-go1.4.2/src/lib9/fmt/charstod.c:20 Unterminated string or >> char const >> go tool dist: FAILED: /bin/8c -FTVwp -DPLAN9 -D__STDC__=1 >> -D__SIZE_TYPE__=ulong -I/usr/scaron/go-go1.4.2/include/plan9 >> -I/usr/scaron/go-go1.4.2/include/plan9/386 -DPLAN9PORT -I >> /usr/scaron/go-go1.4.2/src/lib9 -o $WORK/dorfmt.8 >> /usr/scaron/go-go1.4.2/src/lib9/fmt/dorfmt.c: >> '/usr/scaron/go-go1.4.2/pkg/obj/plan9_386/lib9.a' does not exist >> go tool dist: FAILED: /bin/8c -FTVwp -DPLAN9 -D__STDC__=1 >> -D__SIZE_TYPE__=ulong -I/usr/scaron/go-go1.4.2/include/plan9 >> -I/usr/scaron/go-go1.4.2/include/plan9/386 -DPLAN9PORT -I >> /usr/scaron/go-go1.4.2/src/lib9 -o $WORK/flag.8 >> /usr/scaron/go-go1.4.2/src/lib9/flag.c: >> '/usr/scaron/go-go1.4.2/pkg/obj/plan9_386/lib9.a' does not exist >> cpp: /usr/scaron/go-go1.4.2/include/plan9/../../src/lib9/utf/utf.h:227 >> /usr/scaron/go-go1.4.2/include/plan9/../utf.h:1 >> /usr/scaron/go-go1.4.2/include/plan9/utf.h:5 >> /usr/scaron/go-go1.4.2/include/plan9/libc.h:7 >> /usr/scaron/go-go1.4.2/src/lib9/fmt/dofmt.c:20 Unterminated string or char >> const >> /usr/scaron/go-go1.4.2/include/plan9/../../src/lib9/utf/utf.h:19[/usr/scaron/go-go1.4.2/src/lib9/fmt/charstod.c:152] >> external redeclaration of: Rune >> TYPEDEF UINT >> /usr/scaron/go-go1.4.2/include/plan9/../../src/lib9/utf/utf.h:19[/usr/scaron/go-go1.4.2/src/lib9/fmt/charstod.c:152] >> TYPEDEF USHORT >> /386/include/u.h:11[/usr/scaron/go-go1.4.2/src/lib9/fmt/charstod.c:21] >> /usr/scaron/go-go1.4.2/include/plan9/../../src/lib9/utf/utf.h:19[/usr/scaron/go-go1.4.2/src/lib9/fmt/dofmt.c:152] >> external redeclaration of: Rune >> TYPEDEF UINT >> /usr/scaron/go-go1.4.2/include/plan9/../../src/lib9/utf/utf.h:19[/usr/scaron/go-go1.4.2/src/lib9/fmt/dofmt.c:152] >> TYPEDEF USHORT >> /386/include/u.h:11[/usr/scaron/go-go1.4.2/src/lib9/fmt/dofmt.c:21] >> go tool dist: FAILED: /bin/8c -FTVwp -DPLAN9 -D__STDC__=1 >> -D__SIZE_TYPE__=ulong -I/usr/scaron/go-go1.4.2/include/plan9 >> -I/usr/scaron/go-go1.4.2/include/plan9/386 -DPLAN9PORT -I >> /usr/scaron/go-go1.4.2/src/lib9 -o $WORK/charstod.8 >> /usr/scaron/go-go1.4.2/src/lib9/fmt/charstod.c: >> '/usr/scaron/go-go1.4.2/pkg/obj/plan9_386/lib9.a' does not exist >> go tool dist: FAILED: /bin/8c -FTVwp -DPLAN9 -D__STDC__=1 >> -D__SIZE_TYPE__=ulong -I/usr/scaron/go-go1.4.2/include/plan9 >> -I/usr/scaron/go-go1.4.2/include/plan9/386 -DPLAN9PORT -I >> /usr/scaron/go-go1.4.2/src/lib9 -o $WORK/dofmt.8 >> /usr/scaron/go-go1.4.2/src/lib9/fmt/dofmt.c: >> '/usr/scaron/go-go1.4.2/pkg/obj/plan9_386/lib9.a' does not exist >> >> At that point the build fails and I drop back to the rc prompt. >> >> While the example I cite above is for version 1.4.2, I believe the >> failure mode is pretty much the same for both earlier and later versions >> that I've tried to build. >> >> Is my Plan 9 installation "too old"? I'm using pretty bog-standard Fourth >> Edition on this particular instance; 9atom doesn't seem to get along with >> VMware ESXi (at least, not last time I checked). >> >> Any help greatly appreciated! I'd love to be able to use Go within Plan 9. >> >> Thanks, >> >> Sean >> >> >>