无网环境下,搭建一个beego的框架,作者在网上搜了好多博客,都是说的是通过go get的方式来实现自动的下载和安装,很是苦恼。无意间经过一个兄弟的提醒,可以将相关的库放在本地就可以了。于是又尝试了一下,由于对GOPATH和GOROOT、go get命令等的理解不深,导致源码放入的位置不对,一直没有成功。

1、GOPATH和GOROOT的理解

GOROOT其实就是go的安装路径,如安装在/opt/go下,那么:GOROOT=/opt/go

GOPATH其实就是我们自己的go工作目录(官方的说是作为编译后二进制的存放目的地和import包时的搜索路径),我们可以在src下创建你自己的go源文件, 然后开始工作。如 GOPATH=/home/go

(1)GOPATH之下主要包含三个目录: bin、pkg、src

(2)bin目录主要存放可执行文件;

pkg目录存放编译好的库文件, 主要是*.a文件;

src目录下主要存放go的源文件

2、go build、go install 、go get的理解

go build         加上可以编译的go源文件可以得到一个可执行文件。

go install       在编译源代码之后还安装到指定的目录

go get           从指定源上面下载或者更新指定的代码和依赖,并对他们进行编译和安装

3、beego框架的搭建

(1)在/etc/profile文件中增加如下设置

export GOROOT=/opt/go   (安装路径)

export GOPATH=/home/go  (工作路径)

export PATH=$GOPATH/bin:$GOROOT/bin:$PATH

执行source  /etc/profile 使其配置生效

(2)在GOPATH路径下创建bin、pkg、src三个目录

创建GOPATH/src/github.com/astaxie/beego目录    (github上下的源码存放的地方)

创建GOPATH/src/github.com/beego/bee目录    (github上下的源码存放的地方)

将下载的beego和bee安装包解压放在相应的目录中

(3)在beego和bee目录下执行 go install 进行编译和安装

到此,环境已经搭建成功了。可以检测安装一下

$ cd $GOPATH/src

$ bee new hello

$ cd hello

$ bee run hello

一旦程序开始运行,您就可以在浏览器中打开 http://localhost:8080/ 进行访问。

4、总结

(1)go get 的源码放在GOPATH/src目录下

如:go get github.com/astaxie/beego  则

将创建GOPATH/src/github.com/astaxie/beego目录,并下载相关源码

(2)go get 还具有编译安装功能

(3)如果想无网条件下,执行其他的开源项目,可以直接下载到本地,然后创建相应目录并放入源代码,进行编译和安装即可(在源码下执行go install)

有疑问加站长微信联系(非本文作者)

linux编译框架的搭建,Linux下单机版的beego框架的搭建相关推荐

  1. linux编译c如何延时,linux和windows下,C/C++开发的延时函数,sleep函数

    简介: 函数名: sleep 功 能: 执行挂起一段时间 用 法: unsigned sleep(unsigned seconds); 在VC中使用带上头文件 #include 在gcc编译器中,使用 ...

  2. linux编译blas,科学网—Linux下安装blas和lapack包小记 - 徐博伦的博文

    系统是centOS6.5,机器上已有gfortran编译器 从网上搜索下载blas.cblas.lapack的tar压缩文件包 1.编译blas 先解压文件 tar xvf blas.tgz cd b ...

  3. Linux编译安装qt5.9,Linux CentOS7 安装 Qt 5.9.2

    Linux CentOS7 安装 Qt 5.9.2 参考链接 http://doc.qt.io/qt-5/linux.html sudo yum groupinstall "C Develo ...

  4. linux编译安装的好处,Linux学习—源码安装

    源码安装--可以按照自己的需求安装,这是源码安装的好处,而二进制安装无法选择 大部分的源码安装步骤大致相同,具体细节可以参考解压缩之后的README和INSTALL README: 介绍了软件包的功能 ...

  5. linux编译内核支持pam,linux编译内核make menuconfig报错解决办法

    linux编译内核时 输入make menuconfig命令 *** Unable to find the ncurses libraries or the *** required header f ...

  6. 修改linux编译配置文件,Porting:linux内核编译、配置、修改配置文件、添加.c文件到内核...

    一.linux内核 $:'uname -a $:'uanme -r // 查看linux内核版本,开发板上进入linux后是一样的命令. 早起常常使用的版本:linux 2.6.x 开发板上使用的版本 ...

  7. linux编译谷歌浏览器方法,构建Linux版本的谷歌Chrome浏览器

    Chromium编译说明(Linux版) 此页描述如果在Linux操作系统上编译构建Chromium浏览器.假如你对测试chromium或想移植chromium到别的平台请你继续阅读. 小提示:目前还 ...

  8. linux编译内核报错,linux编译内核时出报错;

    因为以前已经编译了,所以就很简单的连接: [root@bache linux-2.6.29]# make defconfig *** Default configuration is based on ...

  9. linux编译驱动报错,Linux编译声卡驱动

    关于Linux编译声卡驱动: 惠普笔记本刚买来时,安装Debian 5,通常会遇到两个问题.一个是无线网卡驱动没有安装,一个是"带上耳机可以听歌,但是喇叭无法发声". 对于前面一个 ...

  10. linux 编译多个文件,linux gcc编译多个源文件的方法

    华为荣耀6 H60-L02/L12(联通版)救砖包[适用于无限重启] 本帖最后由 HOT米粒 于 2014-11-16 20:43 编辑 华为荣耀6 H60-L02/L12(联通版)救砖包[适用于无限 ...

最新文章

  1. pythonsocket自动化教程_python---socket自动化交互
  2. Digital Realty计划在德克萨斯州建设三层数据中心
  3. 【Linux基础】作业二
  4. Windows Service:用C#创建Windows Service
  5. SpringCloud版本定义说明
  6. 失去循环标签的Python,我这样实现跳出外层循环
  7. Leetcode每日一题:1095.find-in-mountain-array(山脉数组中查找目标值)
  8. 中英金融科技论坛:监管科技增长较快 区块链等新技术挑战监管能力
  9. java大数据与python大数据如何选择?
  10. java 批量下载ftp文件_JAVA实现FTP文件批量下载文件到本地文件夹
  11. JUCE框架教程(1)——Projucer入门
  12. CentOS-8 dnf 前端工具学习笔记
  13. devil may cry 4 android apk,Devil May Cry
  14. 怎么把一个PDF文件拆分成多个?
  15. 曙光服务器bios开启vt虚拟化,VT开启教程 BIOS开启VT方法
  16. RuntimeError: CUDA error: CUBLAS_STATUS_NOT_INITIALIZED when calling `cublas‘
  17. 等级保护2.0-大数据安全要求梳理
  18. 数据结构(考研笔记)
  19. 知乎:为什么我的成绩那么好,最终还是成了一个没用的人
  20. C# ushort强制转换int会导致丢失

热门文章

  1. 升级成员服务器-从Windows 2012升级到2016案例之2
  2. 浅谈SQL Server中的快照
  3. [转]ios面试题收集(二)
  4. Model to Text工具Acceleo使用教程(六)——模板服务
  5. 20.MySQL 常用命令
  6. 20. JavaScript 事件处理
  7. 25. JavaScript PopupAlert
  8. java 设置sesion 生命周期
  9. 知乎;如何帮助前端新人入门和提高?
  10. css中绝对定位与相对定位的区别