linux下golang的配置
linux下golang的配置
之前开发golang一直在windows下,今天在linux下试了一下 ,遇到一些梗,比如go 找不到 sync包。花了一小时全部解决,把过程记录一下。
安装 go
我的系统是ubuntu ,完全可以用apt-get 安装,简单方便,但这样安装之后就出现了上面提到的找不到sync包的问题。后来卸载了已经安装的go,选择从官网下载安装包。
下载地址 选择合适的安装包,我选择的是go1.6.1.linux-amd64.tar.gz。然后在你的系统里面建一个文件夹用来放安装包,建好之后使用wget 加下载地址,把安装包下载到建好的文件夹下。 然后键入tar -xzf go1.6.1.linux-amd64.tar.gz 解压安装包到已经建好的文件夹下。
解压之后会出现一个go文件夹,go下面有一个bin文件夹。使用ln -s (软连接命令)将bin下的可执行文件go 和gofmt 链到/usr/bin 下。 现在就可以直接输入 go version命令查看go 版本了。
配置环境
先设置GOROOT : export GOROOT=你建好的文件夹地址\go 。 设置GOROOT的原因是编译项目时便于系统寻找标准库。官网上还有添加PATH的步骤,这个是为了方便系统寻找到go、godoc和gofmt三个可执行文件,但这个问题已经通过软连接解决了。
编译第一个helloworld服务器
首先建一个项目文件夹,设置GOPATH变量指向这个文件夹
export GOPATH=刚建的文件夹路径在这个文件夹下建立 bin,src,pkg三个文件夹。src文件夹下用来放第三方库文件,pkg下放的是编译好的库文件 (.a后缀文件)
设置GOBIN环境变量
export GOBIN=$GOPATH\bin。(go install 命令需要将可执行文件放到GOBIN指定的目录下)创建 package main 文件你可以下载这个源码文件 helloworld 使用wget下载到刚创建的文件夹下
键入 go get 命令自动安装依赖包到src文件夹下 ,这个helloworld.go源代码的第三方依赖包在github上,安装不会出现问题。(但确保已经安装了git)
键入 go build 编译项目,没有差错的话就可以出现一个跟之前建的文件夹同名的可执行文件, 执行该文件。然后在浏览器键入访问地址:
你的机器的ip:8080/hello
运行截图
服务器端

客户端
客户端使用的node.js做的http get 请求

linux下golang的配置的更多相关文章
- linux下golang
linux下golang的配置 linux下golang的配置 之前开发golang一直在windows下,今天在linux下试了一下 ,遇到一些梗,比如go 找不到 sync包.花了一小时全部解决, ...
- Linux下安装和配置JDK与Tomcat(升级版)
在这个版本 Linux下安装和配置JDK与Tomcat(入门版) 的基础上优化升级 1.下载相关软件 apache-tomcat-6.0.37.tar.gz jdk-6u25-linux-i586-r ...
- [Linux]Linux下安装和配置solr/tomcat/IK分词器 详细实例二.
为了更好的排版, 所以将IK分词器的安装重启了一篇博文, 大家可以接上solr的安装一同查看.[Linux]Linux下安装和配置solr/tomcat/IK分词器 详细实例一: http://ww ...
- Linux下Redis服务器安装配置
说明:操作系统:CentOS1.安装编译工具yum install wget make gcc gcc-c++ zlib-devel openssl openssl-devel pcre-devel ...
- Linux下SVN服务器安装配置及客户端安装说明
原文地址:http://wenku.baidu.com/link?url=h3dVAMx4azpOXEND5HQEE6nliE8-zc0GSQ03yv4cUs1vXMALXF64UsK7kT7kXm_ ...
- linux下通过acl配置灵活目录文件权限(可用于ftp,web服务器的用户权限控制)
linux下通过acl配置灵活目录文件权限(可用于ftp,web服务器的用户权限控制) 发表于2012//07由feng linux 本身的ugo rwx的权限,对于精确的权限控制很是力不从心的,ac ...
- 转载-Linux下svn搭建配置流程
Linux下svn搭建配置流程 一. 源文件编译安装.源文件共两个,为: 1. 下载subversion源文件 subversion-1.6.1.tar.gz http://d136 ...
- Linux下PHP安装配置MongoDB数据库连接扩展
Web服务器: IP地址:192.168.21.127 PHP安装路径:/usr/local/php 实现目的: 安装PHP的MongoDB数据库扩展,通过PHP程序连接MongoDB数据库 具体操作 ...
- Linux下安装与配置Nginx
一.准备 Nginx版本:nginx-1.7.7.tar.gz 请自行到官网下载对应的版本. 二.步骤 ♦在Linux新建一个queenLove用户 [root@localhost /]# use ...
随机推荐
- mydumper原理5
前言 之前介绍了Oracle官方的多线程逻辑导入导出工具mysqlpump,但已经操作过的同学会发现其多线程的单位还是表,换句话说, 单表依然是 单线程导出 .网易早已使用mydumper/myloa ...
- MapReduce原理讲解
简介 本文主要介绍MapReduce V2的基本原理, 也是笔者在学习MR的学习笔记整理. 本文首先大概介绍下MRV2的客户端跟服务器交互的两个协议, 然后着重介绍MRV2的核心模块MRAppMast ...
- mysql-----gtid_executed详解 原创
MySQL 5.6版本开启GTID模式,必须打开参数log_slave_updates, 简单来说就是必须在从机上再记录一份二进制日志.这样的无论对性能还是存储的开销,无疑会相应的增大 而MySQL ...
- 编写3个不同版本的程序,令其均能输出ia的元素
#include<iostream> #include<vector> #include<string> using namespace std; int main ...
- Samba服务器配置参考链接
一步一学Linux与Windows共享文件Samba(很适合初学者,极力推荐): http://os.51cto.com/art/200709/56395.htm 由最简单的一个例子说起,匿名用户可读 ...
- java_接口和抽象类的区别
1. 接口只能定义抽象方法,不包含已经提供实现的方法. 抽象类可以包含普通方法 2. 接口不能定义静态方法.抽象类可以定义静态方法 3. 接口里只能定义静态常量filed,不能定义普通filed. 抽 ...
- Android 高级UI设计笔记06:仿微信图片选择器(转载)
仿微信图片选择器: 一.项目整体分析: 1. Android加载图片的3个目标: (1)尽可能的去避免内存溢出. a. 根据图片的显示大小去压缩图片 b. 使用缓存对我们图片进行管理(LruCache ...
- Android(java)学习笔记96:如何改变spinner系统自带的字体和颜色
1.首先我们要知道spinner系统自带字体和颜色本质: 原生的Spring 控件是无法更改字体和颜色的... 从下面的代码可以看出...红色的标注显示使用的是Android默认的布局.. Spinn ...
- uva 699 The Falling Leaves dfs实现
额,刘汝佳小白里面的配套题目. 题目求二叉树同垂直线上结点值的和. 可以用二叉树做,挺水的其实. 尝试使用dfs实现了:开一个大点的数组,根节点为最中间那点,然后读取时就可以进行和的计算了. 代码: ...
- myeclipse自带客户端连接mysql数据库
一:开启mysql服务器 开始——服务 二:打开myeclipse数据库连接视图 找到DB Browser, 三:新建一个连接 如图: 四:填写相关连接参数,并添加jar包驱动 五:然后一路next, ...