網路原因引起的 Golang 編譯錯誤

來源:互聯網
上載者:User
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。

由於眾所周知的原因,強大的 GFW 會引起 Go 語言編譯時間在對DNS相關進行測試時失敗。當然如果人品不錯,沒有公網串連,不受GFW的影響……還是會在網路相關的那部分包的測試中失敗。導致無法正常安裝 Golang。

錯誤資訊類似如下形式:

...test mathtest mimetest mime/multiparttest netTEST FAIL netmake[1]: Entering directory `/home/mikespook/bin/go/src/pkg/net'gotest -test.short -test.timeout=120rm -f _test/net.a8g -o _gotest_.8 cgo_stub.go dial.go dnsmsg.go fd_linux.go hosts.go ip.go ipsock.go iprawsock.go lookup.go net.go parse.go pipe.go sock.go tcpsock.go udpsock.go unixsock.go  newpollserver.go fd.go file.go dnsconfig.go dnsclient.go port.go  dialgoogle_test.go dnsname_test.go file_test.go hosts_test.go ip_test.go ipraw_test.go multicast_test.go net_test.go parse_test.go pipe_test.go port_test.go server_test.go srv_test.go timeout_test.gorm -f _test/net.agopack grc _test/net.a _gotest_.8 --- FAIL: net.TestLookupCNAME (0.02 seconds)LookupCNAME("www.google.com.") = "www-g-com-chn.l.google.com.", <nil>, want "www.l.google.com.", nilFAILgotest: "./8.out -test.short=true -test.timeout=120" failed: exit status 1make[1]: *** [testshort] Error 2make[1]: Leaving directory `/home/mikespook/bin/go/src/pkg/net'make: *** [net.testshort] 錯誤 1

解決這個問題的辦法很簡單,之前在推上我也有發過。但是自己安裝 Golang 的時候遇到網路異常,卻經常忘記這個設定,接二連三的要動手查 Makefile 。隨記錄於此,方便備查。

按照 Golang weekly.2011-04-13 版本來說,$GOROOT/src/pkg/Makefile 檔案、205-208 行是用於屏蔽無外網情況下測試的:

# Disable tests that depend on an external network.ifeq ($(DISABLE_NET_TESTS),1)NOTEST+=net syslogendif

我們看到一個環境變數 $DISABLE_NET_TESTS,當其等於 1 時就可以屏蔽外部網路測試。

因此,在 shell 中設定這個環境變數:

export DISABLE_NET_TESTS=1

即可正常編譯 Golang 了。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.