Fala pessoal,
Esta semana resolvi testar a linguagem do google no windows, de fato é uma linguagem bem interessante porem ainda não possui muitas bibliotecas em sua versão para windows espero que em breve esteja disponivel.
O que aparenta ser simples nem sempre é tão simples, por ser de fato uma linguagem relativamente nova a mesma ainda não possui muita informação disponivel na internet.
Sendo assim só para compilar seu primeiro programa, aquele famoso hello world torna-se uma tarefa um pouco chata até que você entenda como tem que funcionar.
Vamos la então, primeiro precisamos baixar o nosso compilador do site http://code.google.com/p/gomingw/
Feito isto descompacte o arquivo no diretorio “C:\” a pasta “go” sera criada.
Agora antes de começarmos a criar nossos programas podemos ainda baixar mais um arquivo que possui outras libs ja compiladas para o go. baixe do endereço http://code.google.com/p/go-windows/
descompile no mesmo local do outro. feito isto as novas libs estaram na pasta ‘C:\go\pkg\mingw_386’
Agora como não gosto de setar variaveis no path do windows e ficar toda hora digitando comandos para compilar e gerar meus executaveis criei um bat para realizar todo o processo.
Segue a baixo o codigo do bat
@echo off & setlocal enabledelayedexpansion
REM Aqui configuramos o ambiente do GO, GOROOT = diretorio do go, GOOS = tipo de
REM ambiente atualmente utilizamos o mingw porem futuramente sera modificado para
REM windows, GOARCH = tipo de arquitetura 386=32x
set GOROOT=C:\go
set GOOS=mingw
set GOARCH=386
set oldcontents=%contents%
set contents=
REM Modifique as variaveis abaixo para os dados do seu projeto
REM programName é o nome do seu programa
REM programExt é o tipo de arquivo do seu programa nosso caso exe do windows
REM projectPath é o diretorio de onde esta o seu arquivo do programa
set programName=helloworld
set programExt=exe
set projectPath=C:\go\bin
REM Não modifique essas variaveis.
set errorFile=%projectPath%\err.log
set fullProgramPath=%projectPath%\%programName%
set fullProgramOutFile=%fullProgramPath%.%programExt%
REM IF EXIST "%fullProgramOutFile%" del "%fullProgramOutFile%"
"C:\go\bin\8g.exe" -o "%fullProgramPath%.8" "%fullProgramPath%.go" > "%errorFile%"
for /f "tokens=*" %%a in (err.log) do (
if not defined contents (
set contents=%%a
) else (
set contents=!contents!;%%a
)
)
if not !contents! == !oldcontents! (
echo %contents%
goto END
)
"%GOROOT%\bin\8l.exe" -o "%fullProgramOutFile%" "%fullProgramPath%.8"
"%fullProgramOutFile%"
:END
del %errorFile%
O legal deste bat é que ele exibe ja o erro caso aconteça ao compilar e nao gera o exe, caso nao tenha erro ja gera o exe e automaticamente o executa.
lembre-se que você pode tambem definir as variaves do go diretamente nas variaveis do windows.
Agora sim feito isto crie o arquivo de texto no diretorio bin do go (no caso deste exemplo) chamado helloworld.go com o código:
package main
import "fmt" //Pacote que implementa formatacao de E/S
func main() {
fmt.Printf("Hello World! \n");
for i:=0; i < 10; i++ {
fmt.Printf("Contando: %d \n",i)
}
}
Salve e então execute o bat.
Espero que gostem ;)
Grande abraço,
Diego M. Garcia.
Nenhum comentário:
Postar um comentário