14
1.1.md
14
1.1.md
@@ -40,12 +40,12 @@ Linux系统用户可通过在Terminal中执行命令`uname -a`来查看系统信
|
||||
|
||||
## Linux 安装
|
||||
访问[下载地址][downlink],32位系统下载go1.0.2.linux-386.tar.gz,64位系统下载go1.0.2.linux-amd64.tar.gz,
|
||||
|
||||
假定你想要安装Go的目录为 `$GO_INSTALL_DIR`,后面替换为相应的目录路径。
|
||||
|
||||
解压缩`tar zxvf go1.0.2.linux-amd64.tar.gz`
|
||||
解压缩`tar.gz`包到安装目录下:`tar zxvf go1.0.2.linux-amd64.tar.gz -C $GO_INSTALL_DIR`。
|
||||
|
||||
移动go文件夹到home目录下`mv go ~/`
|
||||
|
||||
设置PATH,`export PATH=$PATH:$HOME/go/bin`
|
||||
设置PATH,`export PATH=$PATH:$GO_INSTALL_DIR/go/bin`
|
||||
|
||||
然后执行`go`
|
||||
|
||||
@@ -63,9 +63,9 @@ Linux系统用户可通过在Terminal中执行命令`uname -a`来查看系统信
|
||||
在类Unix系统中,需要安装gcc等工具,例如Ubuntu系统可通过这种方式安装编译工具:`sudo apt-get install gcc libc6-dev`。
|
||||
在Windows系统中,你需要安装MinGW,然后通过MinGW安装gcc。
|
||||
|
||||
首先你必须安装了hg工具,然后执行如下代码:
|
||||
Go使用[Mercurial](http://mercurial.selenic.com/downloads/)进行版本管理,首先你必须安装了Mercurial,然后才行下载。假设你已经安装好Mercurial,执行如下代码:
|
||||
|
||||
假设目前在当前用户的`home`目录下
|
||||
假设已经位于Go的安装目录 `$GO_INSTALL_DIR`下
|
||||
|
||||
hg clone -u release https://code.google.com/p/go
|
||||
cd go/src
|
||||
@@ -75,7 +75,7 @@ Linux系统用户可通过在Terminal中执行命令`uname -a`来查看系统信
|
||||
|
||||
上面写的是Unix风格的,Windows下安装方式类似,只不过是运行all.bat,调用的编译器是MinGW的 gcc。
|
||||
|
||||
然后设置PATH,`export PATH=$PATH:$HOME/go/bin`
|
||||
然后设置PATH,`export PATH=$PATH:$GO_INSTALL_DIR/go/bin`
|
||||
|
||||
看到如下图片说明已经安装成功
|
||||
|
||||
|
||||
2
1.2.md
2
1.2.md
@@ -2,6 +2,8 @@
|
||||
|
||||
## GOPATH设置
|
||||
go 命令依赖一个重要的环境变量:$GOPATH<sup>1</sup>
|
||||
|
||||
*(注:这个不是Go安装目录。下面以笔者的工作目录为说明,请替换自己机器上的工作目录。)*
|
||||
|
||||
在类似 Unix 环境大概这样设置:
|
||||
|
||||
|
||||
11
README.md
11
README.md
@@ -11,10 +11,15 @@
|
||||
|
||||
## 撰写方法
|
||||
### 文件命名
|
||||
每个章节建立一个md文件,如第11章的第3节,则建立**11.3.md**。
|
||||
每个章节建立一个md文件,如第11章的第3节,则建立**11.3.md**。
|
||||
### 代码文件
|
||||
代码文件置于src目录之下。每小节代码按目录存放。如第11章的第3节的代码保存于**src/11.3/**目录下。在正文中按需要添加代码。
|
||||
|
||||
## 格式规范
|
||||
请参看已有章节的规范,要注意的是,每个章节在底部都需要有一个links节,包含“目录”,“上一节”和“下一节”的链接。
|
||||
## 格式规范
|
||||
### 正文
|
||||
请参看已有章节的规范,要注意的是,每个章节在底部都需要有一个links节,包含“目录”,“上一节”和“下一节”的链接。
|
||||
### 代码
|
||||
代码要**`go fmt`**后提交。注释文件注明其所属于章节。
|
||||
|
||||
##如何编译
|
||||
`build.go`依赖markdown的一个解析包,所以第一步先
|
||||
|
||||
13
src/1.2/main.go
Normal file
13
src/1.2/main.go
Normal file
@@ -0,0 +1,13 @@
|
||||
// 章节 1.2
|
||||
// $GOPATH/src/mathapp/main.go
|
||||
|
||||
package main
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"mymath"
|
||||
)
|
||||
|
||||
func main() {
|
||||
fmt.Printf("Hello, world. Sqrt(2) = %v\n", mymath.Sqrt(2))
|
||||
}
|
||||
11
src/1.2/sqrt.go
Normal file
11
src/1.2/sqrt.go
Normal file
@@ -0,0 +1,11 @@
|
||||
// 章节 1.2
|
||||
// $GOPATH/src/mymath/sqrt.go
|
||||
package mymath
|
||||
|
||||
func Sqrt(x float64) float64 {
|
||||
z := 0.0
|
||||
for i := 0; i < 1000; i++ {
|
||||
z -= (z*z - x) / (2 * x)
|
||||
}
|
||||
return z
|
||||
}
|
||||
Reference in New Issue
Block a user