¿Cómo compilar bajo armlinux?
Golang, el lenguaje Go, ha sido lanzado a la versión 1.4.1. La superioridad de las funciones del lenguaje y el fuerte respaldo de Google son evidentes. El paquete de instalación binaria oficial de Golang es adecuado para múltiples plataformas, pero desafortunadamente no se ha lanzado ningún paquete de instalación binaria para la plataforma ARM. No hay forma de instalar el paquete de instalación binaria desde el sitio web oficial. Aunque no hay forma de descargar el paquete de instalación binaria para la plataforma ARM directamente desde el sitio web oficial, Golang es un lenguaje de código abierto multiplataforma, por lo que el código fuente se puede compilar directamente en la plataforma ARM para su instalación. Todo el proceso incluye principalmente pasos como la configuración de la herramienta de compilación, la obtención del código fuente de Golang, la configuración de las variables de entorno de compilación de Golang, la compilación y la configuración de las variables de entorno de la línea Golang.
Nota: Este artículo elige Raspberry Pi para realizar pruebas porque Raspberry Pi se basa en la plataforma ARM.
1. Configuración de la herramienta de compilación
Se dice que la próxima versión de la herramienta de compilación golang será escrita por el propio golang, pero actualmente la herramienta de compilación C todavía se usa. Por lo tanto, el primer paso es configurar las herramientas de compilación de C:
1.1 En plataformas Ubuntu o Debian, puedes instalarlo usando el comando sudoapt-getinstallgcclibc6-dev. El sistema RaspBian para Raspberry Pi está modificado en base a Debian, por lo que se puede instalar mediante este método.
1.2 En plataformas RedHat o CentOS6, puede utilizar el comando sudoyuminstallgcclibc-devel para instalar.
Una vez completada la instalación, puede ingresar el comando gcc --version para verificar si la instalación fue exitosa.
2. Obtenga el código fuente de golang
2.1 Descargue el paquete comprimido del código fuente directamente desde el sitio web oficial.
El sitio web oficial de Golang proporciona el paquete de compresión del código fuente de Golang, puede descargarlo directamente, el enlace del código fuente de la última versión 1.4.1: /golang/go1.4.1.src.tar.gz
2.2 Utilice la herramienta git para obtener.
golang utiliza la herramienta de administración de versiones git, que también se puede utilizar para obtener el código fuente de golang. Se recomienda este método porque siempre puede obtener el código fuente de golang más reciente.
2.2.1 Primero, asegúrese de que la herramienta git esté instalada en la plataforma ARM. Puede usar el comando git --version para confirmar. Normalmente, las plataformas Linux vienen con git instalado, pero si no, puedes instalarlo tú mismo. Para diferentes plataformas, puede consultar: descargar/linux
2.2.2 Clonar localmente el repositorio remoto de golang git
En la terminal, vaya al directorio donde desea instalar golang y asegúrese de que no haya ningún directorio llamado debajo del directorio. Luego use el siguiente comando para obtener el código base:
gitclone/go
Puede que no sea posible obtener el código base en China continental. Lo he intentado varias veces sin éxito. , y todo el mundo sabe el motivo. Afortunadamente, Google también aloja golang en github, por lo que también puedes usar el siguiente comando para obtenerlo:
gitclone/golang/go.git
Dependiendo de las condiciones de la red, la descarga puede costar. Mucho tiempo. Con mi ancho de banda de 2M, aunque todo el proyecto ocupa solo unos pocos megabytes, todavía me tomó casi dos horas completar la descarga==
Después de completar la descarga, puedes ver que hay un extra vaya al directorio Directorio, que contiene el código fuente de golang. Puede ejecutar el comando cdgo en la terminal para ingresar a este directorio.
Ejecute el siguiente comando para ver el código fuente de go1.4.1. Debido a que se envían nuevos códigos, es posible que el código más reciente no sea el más estable:
gitcheckoutgo1.4.1
Hasta ahora, hemos obtenido la última versión 1.4.1 del código fuente
3 Establezca las variables de entorno de compilación de golang
Establezca golang
<. p> Hay cuatro variables de entorno que deben configurarse: GOROOT, GOOS, GOARCH y GOARM. Primero expliquemos qué significan.3.1GOROOT
Representa principalmente la ruta del directorio de estructura de árbol de golang, que es el directorio go detectado por git arriba. No es necesario configurar esta variable de entorno porque el directorio principal predeterminado del compilador es el script all.bash en el subdirectorio src del directorio go. Para estar seguro, puede configurarlo directamente en la ruta a su directorio de inicio.
3.2 GOOS y GOARCH
Representan el sistema y la plataforma de destino compilados respectivamente. Los valores disponibles son los siguientes:
GOOSGOARCH
darwinamd64
蜻蜓386
蜻蜓amd64
freebsd386
freebsdamd64
freebsdarm
linux386
linuxamd64
linuxarm
netbsd386
netbsdamd64
netbsdarm
openbsd386
openbsdamd64
plan9386
plan9amd64
solarisamd64
windows386 p>
windowsamd64
Cabe señalar que estos dos valores representan el sistema y la plataforma de destino, no el sistema y la plataforma en los que se compila el código fuente. RaspBian para Raspberry Pi es Linux, por lo que estos valores de GOOS están configurados para Linux y GOARCH para armar.
3.3GOARM
Indica el número de versión del coprocesador de punto flotante utilizado. Sólo es útil para la plataforma arm. Sus valores son 5, 6 y 7. Si compila el código fuente para la plataforma de destino, no necesita establecer este valor y determinará automáticamente si es necesario utilizarlo. Si compila el código fuente en la plataforma de destino, puede dejar este valor sin establecer y decidirá automáticamente qué versión usar.
En resumen, para configurar las variables de entorno de compilación para golang en Raspberry Pi, edite el archivo $HOME/.bashrc y agregue lo siguiente al final:
exportGOROOT=la ruta del directorio de go
exportGOOS=linux
exportGOARCH=arm
Guarde después de editar y ejecute el comando source~/.bashrc para que los cambios sean efectivos.
4. Compile el código fuente
Después de configurar las variables de entorno, puede comenzar a compilar el código fuente. En el subdirectorio src del directorio go, hay dos scripts: all.bash y make.bash (también hay dos scripts: all.bat y make.bat, para plataformas Windows). La compilación en realidad consiste en ejecutar uno de los scripts. La diferencia entre los dos es que all.bash también ejecutará algunos conjuntos de pruebas después de la compilación. Si desea compilar sin realizar pruebas, puede ejecutar el script make.bash. Utilice el comando cd para ir al directorio src en go y luego ejecute ./all.bash o ./make.bash para iniciar la compilación. El tiempo necesario para la compilación varía según el hardware.
En mi Raspberry Pi Modelo B, el proceso de compilación tomó casi media hora, y el conjunto de pruebas ejecutado después de la compilación tomó casi otra hora, para un total de aproximadamente una hora y media.
5. Configure las variables de entorno de tiempo de ejecución de golang
Una vez completada la compilación, se generará el directorio go en el directorio bin, que es el script de tiempo de ejecución de go. Para utilizar este método en el futuro, puede agregar esta ruta bin a la variable de entorno PATH. Edite también el archivo ~/.bashrc. Debido a que la variable de entorno GOROOT se ha configurado para que apunte al directorio go, solo necesita agregar
exportPATH=$PATH:$GOROOT/bin
<. p> antes de ejecutar el comando source ~/.bashrc y guárdelo para que las variables de entorno surtan efecto.En este punto, el código fuente de golang se ha compilado e instalado correctamente. Al ejecutar goversion, debería poder ver la versión actual de golang, lo que indica que tanto la compilación como la instalación se realizaron correctamente.