Go Language

Go Language Compiler 설치하기!!

JaeYoung 2010. 1. 16. 00:58
2009년 말에 google 에서Go Language라는 이름으로
 새로운 computer Language를 발표 했습니다. 
현재 linux와 mac을 공식지원하고 cpu아키텍처는 32BIT , 64BIT ,ARM까지 지원합니다.
ARM을 지원하는 것은 안드로이드 때문이라고들 하는데요. 
안드로이드 열풍에 적응하려면 조금이라도 공부해두면 좋을것 같습니다.
리눅스,맥,윈도우에서의 설치하는 과정을 다루어 보았습니다^^


1. 리눅스 

첫번째로 환경 설정을 해야합니다.
홈디덱토리의 .bashrc에 아래의 내용을 추가합니다.

export GOROOT=$HOME/go                                  
export GOARCH=386         #<32bit운영체제일 때>       
#export GOARCH=amd64    <64bit운영체제일 때>      
export GOOS=linux                                               
export GOBIN=$HOME/bin
export PATH=$PATH:$GOBIN

작성이 끝나면 아래의 명령어로 적용시킵니다.
$HOME > source .bashrc

그후 root권한으로
아래의 명령들을 타이핑 합니다.

> apt-get install mercurial
hg clone -r release https://go.googlecode.com/hg/ $GOROOT
> sudo apt-get install bison gcc libc6-dev ed make
# 설치 되있는 거는 빼도 됩니다.
> cd $GOROOT/src
> make all

그러면 한참 컴파일 후 완료 됩니다.
정상적으로 되었나 [8g]명령어로 확인해 보면 다음과 같이 나오면 성공입니다.

2.MacOSX
환경설정은 아래와 같은 내용으로 [/Users/"유저네임"/.MacOSX/environment.plist]를 작성해준다음 재부팅 하면된다. [.MacOSX]폴더와 하위 파일은 직접 만들어 주어야 한다.
< ?xml version="1.0" encoding="UTF-8"?>
< !DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">

        
        GOARCH
        386
        GOBIN
        $HOME/bin
        GOOS
        darwin
        GOROOT
        $HOME/go
        
스노우 레오퍼드라서 64비트로 설정해야될줄 알앗더니 32비트로 아키텍처를 설정해야 되더군요.
sudo easy_install mercurial
hg clone -r release https://go.googlecode.com/hg/ $GOROOT
# sudo apt-get install bison gcc libc6-dev ed make 이 과정은 생략됩니다.
# Xcode에 다 포함되어있다고 합니다. Xcode가 미리 설치되있다는 가정하에 진행합니다.
> cd $GOROOT/src
> make all

설치가 모두 끝났습니다. 터미널에서 [8g]명령을 입력해서 다음과같이 나오면 잘 설치 된겁니다.



3. 윈도우 
공식사이트에서는 아직 윈도우를 지원하고 있지 않지만, 역시 누군가가 완벽하진 않지만 되게는 해놓았습니다.
았습니다.

http://code.google.com/p/go-windows

위 사이트에서 go-1.zip파일을 다운 받으시고

원하시는 폴더에 압축을 풉니다. <(c:\go)라고 가정>
그후 환경변수를



GOROOT=c:\go
GOOS=mingw
GOARCH=386
PATH"C:\go\bin"을 추가해 줍니다.

이렇게 설정해 줍니다.
이제 커맨드 창을 열어서 시험해봅니다.
[8g] 명령을 입력했을때 다음과 같이 나오면 성공입니다.


윈도우버전은 정식 버전이 아니기 때문에 386아키텍처만 지원하고 약간의 버그도 있는 듯 합니다.

이제 설치를 마추었으니 열심히 공부해봅시다!!

#위 과정은 ubuntu 9.10, MacOSX 스노우레오퍼드, 윈도우 7에서 진행한 것입니다.