go編譯後運行exe
Linux 是不需要安裝的,直接用 chmod -x 文件名 將它的屬性修改為可運行,然後就可以通過命令行執行它了,後綴名你改為 .sh ,這是 shell 默認支持的文件類型
Ⅱ go語言源碼生成exe文件
用go語言的編譯器編譯。
go-windows的原始下載地址已經被 牆
Ⅲ go只會生成一個exe嗎
不會。該命令可以直接運行go文件(像腳本一樣),不會生成exe文件。底層也是先編譯再運行。只不過沒有生成exe文件,運行時間較長。
Ⅳ 如何讓go編譯的程序後台運行
請自行查看我前面寫得GO語言開發環境和GO語言IDE編輯器的經驗文章
我們先寫一段GO代碼
很簡單就是列印輸出一個hello world!
保存為print.go文件
然後再CMD下一路cd到print.go目錄下來
在cmd下運行 go run print.go就可以運行go程序了
看看運行結果
GO程序的代碼是可以直接編譯成exe文件的
在print.go目錄下運行 go build print.go即可把go程序編譯成exe文件
完成之後看看exe文件是否存在
最好我們要看看運行exe的效果
Ⅳ windows 怎麼編譯 go語言
1、解壓壓縮包到go工作目錄,如解壓到E:\opensource\go\go,解壓後的目錄結構如下:
E:\opensource\go\go
├─api
├─bin
│ ├─go.exe
│ ├─godoc.exe
│ └─gofmt.exe
├─doc
├─include
├─lib
├─misc
├─pkg
├─src
└─test
2、增加環境變數GOROOT,取值為上面的go工作目錄
3、Path環境變數中添加";%GOROOT%\bin",以便能夠直接調用go命令來編譯go代碼,至此go編譯環境就配置好了
註:如果不想手動設置系統環境變數,也可下載go啟動環境批處理附件,
修改goenv.bat文件中的GOROOT值為上面的go工作目錄後直接雙擊該bat文件,go編譯環境變數即設置完成。
4、測試go編譯環境,啟動一個cmd窗口,直接輸入go,看到下面的提示就是搭建成功了
E:\opensource\go\go>go
Go is a tool for managing Go source code.
Usage:
go command [arguments]
The commands are:
build compile packages and dependencies
clean remove object files
doc run godoc on package sources
env print Go environment information
fix run go tool fix on packages
fmt run gofmt on package sources
get download and install packages and dependencies
install compile and install packages and dependencies
list list packages
run compile and run Go program
test test packages
tool run specified go tool
version print Go version
vet run go tool vet on packages
Use "go help [command]" for more information about a command.
Additional help topics:
gopath GOPATH environment variable
packages description of package lists
remote remote import path syntax
testflag description of testing flags
testfunc description of testing functions
Use "go help [topic]" for more information about that topic.
5、編譯helloworld測試程序,go語言包中test目錄帶有helloworld.go測試程序,源碼見"附一 helloworld.go",
直接調用"go build helloworld.go"就生成了"helloworld.exe"可執行程序,運行一下這個程序看到了我們期望的hello,wolrd。
E:\opensource\go\go\test>go build helloworld.go
E:\opensource\go\go\test>helloworld.exe
hello, world
E:\opensource\go\go\test>
附一 helloworld.go
// cmpout
// Copyright 2009 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// Test that we can do page 1 of the C book.
package main
func main() {
print("hello, world\n")
}
Ⅵ 有沒有一種編程語言,能使編出來的exe程序不需要運行庫就能運行
確切的說,沒有。
就連匯編語言都需要調用庫函數。
因為編譯好的程序要同操作系統打交道,必然要用到庫。
c語言有c語言的庫,c++有c++的庫。
庫函數為你提供必要的編程介面,也就是API之類。
你想表達的也許是靜態鏈接到庫,那樣,表面看來是可以脫離許多庫的模塊來運行的;
但本質上是把某些庫整個編譯到你的程序中而已,程序也會因此膨大許多。
Ⅶ Go語言的跨平台能力到底有多強看完你就知道了
對比於其他語言的程序,Go語言的跨平台能力是真的強,拿.Net和java來說吧,.Net在.Net core出現之前是不能跨平台的,只能在windows上編譯運行,即使是.net core出現以後,跨平台的程序也是相當的麻煩。而java雖然一直都可以跨平台,但是運行JAVA程序的機器上也必須要有JAVA程序運行環境JRE。而相對於Go程序,跨平台就簡單的多了,只需要在編譯指定目標程序運行的架構和環境即可編譯出指定操作系統和架構的程序。
以上是指定了go的環境變數後執行的go build命令進行目標程序的構建,這種方式會一直生效的,如果不讓他一直生效,可以在構建的時候臨時指定環境變數,下面以window的環境為例,來介紹臨時指定環境變數的方式構建可以在Linux環境下運行的可執行程序:
可以根據不同的架構和操作系統將其編寫為不同的.bat的可執行文件放置在程序的根目錄,Linux的和MAC的也一樣編寫成腳本文件放置在程序的根目錄,這樣在構建的時候就不用再敲命令了,直接運行腳本就可以了。
Java程序編譯打包後為war包或者是java包,必須執行java -jar 命令或者將其放置到tomcat的指定目錄下,運行tomcat程序。而Go語言編寫的程序最終為可執行的文件(window下編譯出的是.exe的可執行文件),只需要將其賦予可執行的許可權就可以直接運行了。
構建JAVA程序的鏡像需要指定java的基礎鏡像,否則就需要在鏡像中安裝java的運行環境了,下面展示的是構建的一個JAVA程序的鏡像,構建出來鏡像的體積相對比較大
而Go程序製作出的鏡像就不需要安裝任何的依賴環境,因為他在打包的時候就已經將依賴的包一塊打包到一起了
拿著這個鏡像就可以到處運行了。
通過對比我們可以發現,如果沒有之前的技術和業務的積累,重新開發一個新的項目,使用go去開發無疑是最容易上手的,所以現在很多公司都使用go進行開發,也逐漸將其他語言的項目逐步的用go語言進行改造。其實用什麼語言不重要,合適的才重要,開發項目在選擇語言的時候也會綜合多方面來考慮選擇合適的語言和架構,畢竟很多公司都不是搞研究的,都需要項目來賺錢,所以開發的速度、客戶的滿意度、項目交付的時間才是驅動公司技術的主要因素。
我們個人也應該不斷完善自己的技術棧,不應該太依靠某種語言,最重要的還是自己的架構思想和底層架構知識,只有掌握了這些才能夠不被 社會 和公司「優化」。
Ⅷ 我是用Microsoft Visual C++ 編寫程序,為什麼寫好後點擊go運行exe會自動閃退啊
在return 0;之前加system("pause");這條語句試試
Ⅸ golang生成的exe文件打開就閃退為什麼 輸出hello world也是
是程序運行太快肉眼分辨不出了,可以睡眠5秒
package main
import (
"fmt"
"time"
)
func main() {
fmt.Println("hello world !")
time.Sleep(5 * time.Second)
}
Ⅹ Go 生成的exe可以在沒有go環境的電腦上運行么
在最後程序結束前用個system("pause"),加頭文件stdlib.h,或者用getch(),加頭文件conio.h都行兩者選一種就行了