Go 컴파일러를 Windows에 설치할 수 있습니까?


94

Windows 컴파일러 에 대해 golang.org 에서 찾고 있었지만 찾을 수없는 것 같습니다. Linux 및 OS X 컴파일러 만 볼 수 있습니다. Go 프로그래밍이 Windows에서 수행 될 수 있는지 아는 사람이 있습니까? 아니면 Google이 아직 구현하지 않은 것이 있습니까?

업데이트 : 현재 (2012 년 11 월) golang.org 에 Windows 32 / x86_64 용 공식 바이너리 릴리스가있는 것으로 보입니다 .


groups.google.com/group/golang-nuts- 거기에서 답을 찾을 수 있습니다.
kar

2
Windows에서 비파괴적인 Go 프로그래밍을 시도하려면 gofmt.com/compile.html . 프로그램을 컴파일, 링크 및 실행하고 출력을 표시 할 수 있습니다. 해당 사이트에서 취약점을 발견하면 개인 메시지를 보내주십시오. 감사!
Randy Sugianto 'Yuku''09

업데이트 : erGo 컴파일러는 이번 주 베타 테스트를 위해 출시되었습니다. 개발자 Russel Newquist는 아래 의견에 답변했습니다. newquistsolutions.com/ergo
nathan

4
golang.org 웹 사이트가 첫 번째 공식 (1.0) 릴리스 이후 공식 Windows 패키지를 제공 하기 때문에이 질문을 주제에서 벗어난 것으로 종료하는 데 투표합니다 .
icza

답변:


54

이제 Windows 용 설치 프로그램이 있습니다. Windows에서 Go를 참조하십시오.

HelloWorld.go

package main

func main() {
    println("Hello World!");
}

로 컴파일하고 8g와 연결 8l한 다음 실행합니다. 예:

8g HelloWorld.go
8l -o HelloWorld.exe HelloWorld.8
HelloWorld

Go의 다른 Win32 빌드 (2010
Kolo32

불행히도이 포트가 제대로 작동하지 않습니다. 8l 링커는 항상 runtime.a 누락에 대해 불평하고 호출 직후 충돌합니다.
greatwolf

1
@Victor : 방금 설정했습니다 (2010-12-11). HelloWorld, PrimeSieve 및 Wiki 예제를 컴파일하고 연결하는 데 잘 작동합니다. 그리고 세 가지 프로그램이 모두 실행됩니다.
Lawrence Dol

1
mingw 포트는 특별한 환경 ( code.google.com/p/gomingw/downloads/list ) 을 설치할 필요없이 작동하는 것 같습니다 . 적어도 내가 시도한 몇 가지 예제를 컴파일하고 연결합니다.
Lawrence Dol

1
친절하고 유용한 답변에 대해 Jonas에게 감사드립니다.
bhadra 2011-06-12

23

아직 Go Lang FAQ에 포함되지 않았지만 changelog에서 :

Go가 Windows에서 실행되지 않는 이유는 무엇입니까? 우리는 전 세계 컴퓨터의 상당 부분이 Windows를 실행하고 있으며 이러한 컴퓨터가 Go 프로그램을 실행할 수 있다면 좋을 것임을 알고 있습니다. 그러나 Go 팀은 규모가 작으며 현재 Windows 포트를 수행 할 리소스가 없습니다. 우리는 Windows 버전을 개발하려는 모든 사람에게 질문에 답하고 조언을 제공 할 것입니다.


5
이 답변은 크게 찬성되었지만 현재는 구식입니다.


7

Go가 겨우 2 일이 지났음 에도 불구하고이 질문은 이미 Go 메일 링리스트의 FAQ가되었습니다. (안타깝게도 웹 사이트의 FAQ 목록에 아직 추가되지 않았습니다.)

기본적으로 Go는 매우 소수의 사람들에 의해 수행되므로 Windows 포트를 수행 할 시간이나 리소스가 없습니다. 그 극소수의 사람들은 유닉스를 발명 한 사람들이기도합니다. 그래서 그것은 자연스러운 첫 번째 목표였습니다.


AFAIK, 그들은 풀 타임이 아닌 20 % 시간 동안 Go를 개발합니다. (어쨌든 그것이 내가 읽은 것입니다.) 어쨌든, 내 대답은 매우 큰 혀, 매우 깊은 볼을 의미했습니다.
Jörg W Mittag

2
실제로 히스토리 페이지에는 여가 프로젝트로 시작했지만 이제는 개발자 중 일부를위한 풀 타임 프로젝트라고 나와 있습니다. 기본적으로 파트 타임 제약에 대한 언급을 제거하기 위해 답변을 편집했습니다.
Jörg W Mittag

그리고 그 :) 당신을 upvoting 해요
OscarRyz

그들이 유닉스를 발명 했나요? 이게 은퇴 프로젝트인가요?
Henk Holterman

10
글쎄요, 그들은 또한 Unix의 후계자 인 Plan9를 발명했습니다. 그리고 Plan9의 후계자 인 Inferno. 그리고 C. 그리고 Inferno가 쓰여진 가비지 수집 시스템 프로그래밍 언어 인 Limbo도 있습니다. 특히 고 루틴.) 그리고 Limbo, Inferno 및 표준 ML의 일부 구현에서 사용되는 Very Concurrent Garbage Collector. 그리고 UTF-8. 그래서 그들은 유닉스와 바둑 사이의 40 년 동안 바쁘지 않은 것과는 다릅니다.
Jörg W Mittag

3

따라서 저처럼 Windows를 많이 사용하고 지금 당장 Go 프로그래밍을하고 싶다면 VM에서 할 수 있습니다. 나는 겉보기 모드에서 Ubuntu를 실행하는 VirtualBox를 사용합니다. 많은 부분에서 Windows보다 Linux를 더 좋아하기 때문에 이미 설정했습니다.

Go를 구축하고 작업하는 것은 나에게 전혀 고통스럽지 않았습니다. 빌드를 실행하고 앱을 사용해보기 위해 터미널에 Bash가 열려 있습니다. 소스 디렉토리는 Windows와 Linux 간의 공유 폴더입니다 (VirtualBox 기능이지만 VMWare에도 동일한 기능이 있음). Windows의 Komodo Edit에서 코드를 편집하고 두 OS에서 동일한 소스 코드에 Mercurial을 사용합니다.


위에서 제안했듯이 Windows 컴퓨터 (virtualbox 포함)에 우분투가 설치되어 있습니다.
user132797

3

아직.

Go의 저자는 비 Windows 운영 체제에 매우 깊은 뿌리를두고 있습니다 (Trivia : 그들 중 누가 바로 UNIX 운영 체제를 만들 었는지).

따라서 조만간 그들로부터 Windows 포트를 가질 것으로 기대하지 마십시오.

이 언어는 오픈 소스이므로 Windows 구현을 사용할 수있는 것은 시간 문제 (6-8 개월에서 작성)입니다.


2
여가 시간에 컴파일러를 작성하는 유닉스 작성자와 "윈도우 포트를 기대하지 마십시오"사이의 연결은 흥미 롭습니다. 그들이 변경 로그 (mbarnett의 답변 참조)에서 리소스가 없기 때문이라고 지적했기 때문입니다. .
Jed Smith

2
"Do n't care"에 대한 또 다른 (부드러운) 표현입니다.
ttvd 2009

1
예, Linus가 Windows 용 git 포트를 직접 만드는 것과 같습니다. 그것은 결코 일어나지 않을 것입니다 (항구는 다른 사람들에 의해 만들어지고 있습니다)
OscarRyz

0

현재 Windows 버전은 없지만 Windows 플랫폼에서 Cygwin 을 사용하여 컴파일 할 수 있습니다.


1
많은 재 작업을 통해 cygwin에서 컴파일 할 수 있지만, 그래도 네이티브 Windows 바이너리가 아닌 ELF를 출력하는 6g / 8g 컴파일러로 끝날 것입니다. 그러나 이것은 여전히 ​​좋은 첫 번째 단계입니다. code.google.com/p/golang-on-cygwin 빌드가 성공하면 다음 단계는 컴파일러를 수정하여 Windows 실행 코드를 생성하는 것입니다.
Alan S


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.