Opened 5 years ago

Last modified 14 months ago

#49039 new defect

go @1.4.2: fails to build with tracemode

Reported by: raimue (Rainer Müller) Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version: 2.3.3
Keywords: tracemode upstream Cc: neverpanic (Clemens Lang), ci42, larryv (Lawrence Velázquez), seanfarley (Sean Farley), ryandesign (Ryan Schmidt), kimuraw (kimura wataru), chrstphrchvz (Christopher Chavez)
Port: go asciinema docker docker-machine git-lfs go-tools godep mongo-tools peco

Description

go fails when DYLD_INSERT_LIBRARIES is set:

:info:build fatal error: runtime: bsdthread_register error (unset DYLD_INSERT_LIBRARIES)
:info:build runtime stack:
:info:build runtime.throw(0x3e9855)
:info:build     /opt/local/go/src/runtime/panic.go:491 +0xad fp=0x7fff5fbff750 sp=0x7fff5fbff720
:info:build runtime.goenvs()
:info:build     /opt/local/go/src/runtime/os_darwin.c:103 +0x60 fp=0x7fff5fbff768 sp=0x7fff5fbff750
:info:build runtime.schedinit()
:info:build     /opt/local/go/src/runtime/proc.c:141 +0x5f fp=0x7fff5fbff790 sp=0x7fff5fbff768
:info:build runtime.rt0_go(0x7fff5fbff7c0, 0x4, 0x7fff5fbff7c0, 0x0, 0x4, 0x7fff5fbff970, 0x7fff5fbff9ec, 0x7fff5fbff9f2, 0x7fff5fbff9f5, 0x0, ...)
:info:build     /opt/local/go/src/runtime/asm_amd64.s:95 +0x116 fp=0x7fff5fbff798 sp=0x7fff5fbff790
:info:build Command failed:  cd "/opt/local/var/macports/build/_Users_raimue_src_macports_trunk_dports_lang_go/go/work/go/src" && ./make.bash
:info:build Exit code: 2

There is probably nothing we can do about it, this ticket is just for tracking trace mode failures.

Upstream: https://github.com/golang/go/issues/8801

Attachments (1)

main.log (24.1 KB) - added by raimue (Rainer Müller) 5 years ago.

Download all attachments as: .zip

Change History (7)

Changed 5 years ago by raimue (Rainer Müller)

Attachment: main.log added

comment:1 Changed 5 years ago by neverpanic (Clemens Lang)

Resolution: wontfix
Status: newclosed

There's nothing we can do about this. At this point in Go's build system, it must be the first part of code to run after the loader to register a custom thread implementation. Enabling trace mode breaks this assumption.

Basically the only thing we could do here is provide a way for ports to selectively disable trace mode, either completely or for certain phases. Disabling it in Go's build phase would be enough.

comment:2 Changed 5 years ago by raimue (Rainer Müller)

Cc: ciserlohn@… larryv@… sean@… added
Keywords: upstream added
Port: asciinema docker docker-machine git-lfs go-tools godep mongo-tools peco added
Resolution: wontfix
Status: closedreopened

I think we should keep this report open to track this issue. It affects all ports using Go binaries in tracemode. Even if we cannot change the underlying issue in Go, this ticket documents the fact these ports are failing in tracemode.

comment:3 Changed 5 years ago by raimue (Rainer Müller)

Cc: ryandesign@… kimuraw@… added
Owner: changed from ciserlohn@… to macports-tickets@…
Status: reopenednew

comment:4 Changed 14 months ago by chrstphrchvz (Christopher Chavez)

godep is obsolete: [8b023ff9aa/macports-ports]. Does this ticket apply to its replacement, dep?

comment:5 Changed 14 months ago by chrstphrchvz (Christopher Chavez)

Cc: chrstphrchvz added

comment:6 Changed 14 months ago by neverpanic (Clemens Lang)

Pretty sure this applies to all ports written in Go, yes. There's little you can do from the perspective of a port right now, though.

Note: See TracTickets for help on using tickets.