Компилирование команд Shell с CGO_ENABLE = 0: A A Alleneck
При использовании сетевых операций в программах GO процесс компиляции может испытать значительное замедление с CGO_ENABLID = 0. Это поведение наблюдается даже в минималистичных программах, таких как базовый HTTP-сервер, где компиляция без CGO_ENABLE = 0 занимает примерно в девять раз длиннее, чем с включенным. Когда cgo_enabled установлен на 0, флаги сборки меняются. В результате, предварительно построенные пакеты не могут быть использованы, что приводит к повторному компиляции большинства стандартной библиотеки. Этот процесс значительно более трудоемкий, чем использование предварительно построенных пакетов. Этот флаг устанавливает пакеты, которые были построены с модифицированными флагами. Тем не менее, это решение обладает ограниченной эффективностью, поскольку оно ускоряет последующие сборки с CGO_ENBALT = 0 при замедлении строительств без него.
более эффективный подход включает в себя использование флагов -Installsuffix и -pkgdir для указания пользовательских каталогов для установки пакетов, построенных с различными флагами. Это позволяет быстро компиляцию программ GO с различными флагами. В средах с несколькими режимами компиляции каждый режим может иметь свой собственный указанный каталог, обеспечивая эффективную компиляцию для всех сценариев. ]
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3