ng icon indicating copy to clipboard operation
ng copied to clipboard

ng/eval: creating plugins may fail for system-wide Go installs

Open sbinet opened this issue 7 years ago • 1 comments

on my ArchLinux box running Go-1.9.2 installed system-wide with the package manager, I get:

[22:57 binet@zoidberg ng]$ go test -v ./...
ok  	neugram.io/ng	1.868s
Returning Eval: []reflect.Value{reflect.Value{typ:(*reflect.rtype)(0x901b20), ptr:(unsafe.Pointer)(0xc420018698), flag:0x82}}
Returning Eval: []reflect.Value{reflect.Value{typ:(*reflect.rtype)(0x901b20), ptr:(unsafe.Pointer)(0xc4200187c0), flag:0x82}}
Returning Eval: []reflect.Value{reflect.Value{typ:(*reflect.rtype)(0x901b20), ptr:(unsafe.Pointer)(0xc420018908), flag:0x82}}
Returning Eval: []reflect.Value{reflect.Value{typ:(*reflect.rtype)(0x901be0), ptr:(unsafe.Pointer)(0xc420018ad0), flag:0x86}}
Returning Eval: []reflect.Value{reflect.Value{typ:(*reflect.rtype)(0x901b20), ptr:(unsafe.Pointer)(0xc420018ce8), flag:0x82}}
Returning Eval: []reflect.Value{reflect.Value{typ:(*reflect.rtype)(0x901b20), ptr:(unsafe.Pointer)(0xc420018ed8), flag:0x82}}
--- FAIL: TestPrograms (4.75s)
	eval_test.go:209: testdata/array1.ng:neugram panic: plugin: building wrapper failed for Go package "md5": exit status 1
		go install runtime/internal/sys: mkdir /usr/lib/go/pkg/linux_amd64_dynlink: permission denied
	eval_test.go:209: testdata/http1.ng:neugram panic: plugin: building wrapper failed for Go package "http": exit status 1
		go install runtime/internal/sys: mkdir /usr/lib/go/pkg/linux_amd64_dynlink: permission denied
	eval_test.go:209: testdata/import4.ng:neugram panic: plugin: building wrapper failed for Go package "ioutil": exit status 1
		go install runtime/internal/sys: mkdir /usr/lib/go/pkg/linux_amd64_dynlink: permission denied
	eval_test.go:209: testdata/import5.ng:neugram panic: plugin: building wrapper failed for Go package "md5": exit status 1
		go install runtime/internal/sys: mkdir /usr/lib/go/pkg/linux_amd64_dynlink: permission denied
	eval_test.go:209: testdata/import6.ng:neugram panic: plugin: building wrapper failed for Go package "frame": exit status 1
		go install runtime/internal/sys: mkdir /usr/lib/go/pkg/linux_amd64_dynlink: permission denied
FAIL
FAIL	neugram.io/ng/eval	4.761s

we should probably devise a way to get around this limitation.

sbinet avatar Nov 01 '17 22:11 sbinet

I wrote a comment, and GitHub ate it. :-(

We can fix this, but slow down builds, by removing -i. We can also fix this with -pkgdir, but we have to pick pkgdir.

Either way, this should be made irrelevant by Go 1.10.

crawshaw avatar Nov 01 '17 23:11 crawshaw