返回顶部

收藏

如何创建、编译、打包go语言(golang)的源代码和工程

更多

如何编译、打包go语言(golang)的源代码,详见:http://golang.org/doc/code.html

go语言编译环境为Go1

步骤如下:

  1. 设置GOPATH,这个环境变量指向你的projectDir(工程目录),形如:GOPATH=/home/user/ext:/home/user/projectDir (可以设置多个工程目录,linux下用冒号分隔,windows下用分号分隔)
  2. 创建工程文件夹projectDir
  3. 在projectDir下创建src目录
  4. 在src下创建区分包的文件夹myDir
  5. 在myDir下创建包pkgDir
  6. 在pkgDir下创建package source源代码文件,这些文件的package都是pkgDir,比如创建一个文件test.go,代码如下:
package pkgDir

import "fmt"

func TestPrint(){
    fmt.Print("Hello world \n")
}

写完源代码以后在src目录下运行go install myDir/pkgDir命令把包pkgDir打包成.a文件(会在projectDir/pkg目录下生成pkgDir.a的目标文件)

在myDir下创建command source文件夹,取名myCommand

在myCommand文件夹下创建带有main函数的源代码文件hello.go,代码如下:

package main

import (
    "fmt"
    "myDir/pkgDir"
)

func main(){
    fmt.Print("main package~\n")
    pkgDir.TestPrint()
}

在src下运行go install myDir/myCommand (会创建projectDir/bin目录,并生成以myCommand 为文件名的可执行文件)。需要注意的是要生成可知性文件的话,go install后的文件夹下一定要有一个带有package main的go源文件。鉴于手动操作的复杂性,推荐大家使用eclipse来写go的代码,在eclipse上配置了go环境后,可执行文件和.a文件都是自动产生的。

最后projectDir目录下的结构类似如下的形式:

bin/
    myCommand          # command executable
pkg/
    linux_amd64/
        myDirDir/
            pkgDir.a   # package object
src/
    myDir/
        myCommand/
            hello.go   # command source
        pkgDir/
            test.go    # package source

标签:golang,编译

收藏

0人收藏

支持

0

反对

0

相关聚客文章
  1. 博主 发表 2018-05-09 16:00:00 在macOS下通过Docker交叉编译GO程序
  2. 博主 发表 2018-05-09 16:00:00 在macOS下通过Docker交叉编译GO程序
  3. 傅小黑 发表 2014-02-19 04:04:00 Windows 下 gcc + golang 编译 git2go
  4. linux@linux.cn (linu 发表 2017-03-28 00:12:00 Go 语言编译期断言
  5. 博主 发表 2015-03-22 05:30:55 在OSX中通过源码编译Go开发环境和Go多版本管理
  6. Jason long 发表 2017-09-02 09:14:32 empty与isset有什么区别
  7. Lok 发表 2017-09-27 03:47:31 CentOS6 gcc升级到4.9
  8. 博主 发表 2016-01-25 00:00:00 构建编译Android项目的Docker镜像
  9. 一缕殇流化隐半边冰霜 发表 2017-11-02 16:37:00 Google S2 中的 CellID 是如何生成的 ?
  10. bigwhite 发表 2017-12-17 04:41:16 TB一周萃选[第1期]
  11. 博主 发表 2016-01-25 05:23:00 Go 竞争检测
  12. xinlu 发表 2018-02-11 09:50:08 Qt的Centos7安装编译错误