При разработке кроссплатформенных библиотек Go, которые полагаются на зависимости, специфичные для ОС, становится необходимым дифференцировать сборку процесс для разных операционных систем. Вот как это можно сделать:
Например, давайте рассмотрим создание библиотеки, которая использует пакет «encoding/osheb» для Windows и пакет «encoding/olson» для Linux. Чтобы эффективно организовать процесс сборки, мы можем использовать ограничения сборки и соглашения об именах файлов.
Ограничения сборки позволяют нам указывать условия, которые должны быть выполнены для компиляции определенных блоков кода. . Для Unix-подобных систем, включая Windows, мы можем использовать директиву build, за которой следуют имена ОС: означает, что код ниже этой директивы будет скомпилирован только для указанных операционных систем.
// build darwin dragonfly freebsd linux nacl netbsd openbsd solaris
Пакеты стандартной библиотеки Go используют единое соглашение об именах файлов для конкретных операционных систем:stat_linux.go для Linux
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3