J'essaie de trouver un moyen d'accélérer la compilation d'un programme Go. Il dure actuellement environ 30 secondes, ce qui ralentit le travail avec le projet.
Quand je lance go build -v
, je vois que la plupart du temps est consacré à la compilation de go-sqlite3 (qui est relié à la bibliothèque C sqlite). Cependant, comme cette bibliothèque ne change jamais, je me demande s’il est possible d’empêcher l’outil de compilation de la recompiler à chaque fois.
Essayez go install -a github.com/mattn/go-sqlite3
qui installera le paquet compilé-contre-Go-1.3 dans votre $ GOPATH.
Actuellement, vous avez probablement une ancienne version installée sous $GOPATH/pkg/
et par conséquent, Go la recompile pour chaque génération.
Ceci est probablement dû à votre mise à niveau vers la version 1.3
Je devais supprimer $ GOPATH/pkg pour me débarrasser des anciens fichiers binaires (incompatibles), puis il était capable de mettre en cache les résultats de la compilation.
Dans Go 1.10 pas besoin d'exécuter go install
etc. Utilisez simplement go build
. La nouvelle version utilise un cache de construction pour déterminer quels packages doivent être recompilés.
Découvrez: https://tip.golang.org/doc/go1.10