Apabila membangun dengan Golang, kami selalunya perlu menggunakan beberapa perpustakaan pihak ketiga untuk membantu kami menyelesaikan beberapa kerja, seperti mengendalikan pangkalan data, pengaturcaraan rangkaian, penyulitan dan penyahsulitan, penghuraian JSON, dsb. Boleh dikatakan bahawa perpustakaan pihak ketiga ini memberikan kami fungsi yang kaya dan pengalaman pembangunan yang mudah, dan pada masa yang sama mempercepatkan pembangunan projek kami.
Sebelum menggunakan perpustakaan pihak ketiga ini, kami perlu memasangnya ke dalam mesin kami terlebih dahulu supaya kami boleh membangunkan. Seterusnya, saya akan memperkenalkan cara memasang perpustakaan lain di Golang, dan menggunakan beberapa perpustakaan yang biasa digunakan sebagai contoh untuk menerangkan.
Mula-mula, kita perlu menggunakan arahan go get untuk memuat turun pustaka pihak ketiga ke setempat. Mengambil pemasangan gin rangka kerja web yang biasa digunakan sebagai contoh, kod sampel adalah seperti berikut:
go get -u github.com/gin-gonic/gin
Antaranya, parameter -u
menunjukkan kemas kini pakej kepada versi terkininya. Selepas melaksanakan arahan ini, pakej akan dimuat turun ke direktori $GOPATH/src
.
Sesetengah pustaka pihak ketiga ditulis dalam bahasa C, seperti librdkafka. Pada masa ini, kita perlu memasang persekitaran pembangunan bahasa C dan perpustakaan berkaitannya sebelum pemasangan dapat dijalankan dengan lancar. Berikut mengambil Ubuntu sebagai contoh untuk memperkenalkan langkah pemasangan.
Pertama, kita perlu memasang gcc
pengkompil dan make
alatan:
sudo apt-get install build-essential
Kemudian, pasang librdkafka
:
sudo apt-get install librdkafka-dev
Seterusnya, kami Anda boleh menggunakan arahan go get untuk memasang pakej Golang yang berkaitan Kod sampel adalah seperti berikut:
go get -u github.com/confluentinc/confluent-kafka-go/kafka
Antaranya, confluent-kafka-go
ialah pakej Golang librdkafka
yang ditulis dalam bahasa C.
Sesetengah perpustakaan pihak ketiga ditulis dalam bahasa lain (seperti Python, C++, dll.), dan kita perlu menggunakan arahan lain untuk memasangnya. Contohnya, untuk memasang pustaka NumPy bahasa Python, kita boleh menggunakan arahan berikut untuk memasangnya:
pip3 install numpy
Apabila digunakan dalam Golang, kita boleh menggunakan cgo untuk memanggilnya. Kod sampel adalah seperti berikut:
/* #cgo CFLAGS: -I/usr/include/python2.7 #cgo LDFLAGS: -L/usr/lib/python2.7/config-x86_64-linux-gnu -lpython2.7 #include <Python.h> void callPython() { Py_Initialize(); PyRun_SimpleString("print('Hello from Python!')"); Py_Finalize(); } */ import "C" func main() { C.callPython() }
Antaranya, bahagian yang bermula dengan #cgo
ialah arahan CGO, yang dilaksanakan secara dalaman menggunakan bahasa C, dan kemudian menggunakan CGO dalam program Go untuk memanggil fungsi bahasa C.
Melalui tiga contoh di atas, kita dapat melihat bahawa apabila memasang bahasa lain atau perpustakaan bahasa C di Golang, kita perlu menggunakan kaedah pemasangan yang berbeza mengikut situasi sebenar dan menggunakan CGO untuk membuat panggilan. Memahami dan menguasai kaedah ini membolehkan kami membangunkan projek Golang dengan lebih baik.
Atas ialah kandungan terperinci Cara memasang perpustakaan lain di golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!