Ho fatto una pulizia di primavera nel mio codice suddividendolo in più pacchetti Go, principalmente per aiutare la riusabilità (ogni "blocco predefinito" nel proprio pacchetto)."overflow stack nosplit" durante la costruzione del progetto Go?
Dopo aver corretto gli errori di importazione, ho scoperto che il mio programma improvvisamente non verrà generato. L'esecuzione di "go build" restituisce un errore nosplit stack.
robot main.init: nosplit overflow dello stack
120 guaranteed after split check in main.init 112 on entry to robot/web.init 104 on entry to robot/controller.init 96 on entry to robot/slam.init 88 on entry to robot/slam/hector.init 80 on entry to hectormapping/map/mapimages.init 72 on entry to hectormapping/map/maprep.init 64 on entry to hectormapping/map/mapproccontainer.init 56 on entry to hectormapping/scanmatcher.init 48 on entry to hectormapping/map/gridmap/occbase.init 40 on entry to hectormapping/map/gridmap/base.init 32 on entry to hectormapping/map/gridmap.init 24 on entry to github.com/skelterjohn/go%2ematrix.init 16 on entry to math.init 8 on entry to math.init┬À1 0 on entry to runtime.panicindex -8 on entry to runtime.morestack00
runtime.main: nosplit overflow dello stack
120 guaranteed after split check in runtime.main 128 after runtime.main uses -8 120 on entry to main.init 112 on entry to robot/web.init 104 on entry to robot/controller.init 96 on entry to robot/slam.init 88 on entry to robot/slam/hector.init 80 on entry to hectormapping/map/mapimages.init 72 on entry to hectormapping/map/maprep.init 64 on entry to hectormapping/map/mapproccontainer.init 56 on entry to hectormapping/scanmatcher.init 48 on entry to hectormapping/map/gridmap/occbase.init 40 on entry to hectormapping/map/gridmap/base.init 32 on entry to hectormapping/map/gridmap.init 24 on entry to github.com/skelterjohn/go%2ematrix.init 16 on entry to math.init 8 on entry to math.init┬À1 0 on entry to runtime.panicindex -8 on entry to runtime.morestack00
Qualcuno sa di cosa si tratta? Non riesco a trovare molta documentazione su cosa potrebbe causarlo, tranne che per alcuni casi questo è a bug that supposedly is fixed.
Parte del codice è stato suddiviso in una nuova cartella nella cartella "src", in modo che la struttura del file è ora:
src/robot/main.go (main() lives here)
src/robot/(...) (application-specific packages)
src/hectormapping/(...) (stand-alone package used in "robot")
Sto usando Go 1.0.3 su Windows 7 (x64).
Hai provato con go tip piuttosto che stabile? –
@ NickCraig-Wood No, c'è un modo semplice per farlo in Windows? – Mikke
Non conosco un 'msi' per il consiglio di go, ma puoi [build from source] (http://golang.org/doc/install/source) se hai un compilatore abbastanza facilmente. –