Go语言中文网 为您找到相关结果 39

Go跨平台编译的方法学习

从第一天开始学习Golang就知道它有一个很让人心动的特性就是跨平台编译,但一直没有去使用。最近做了一个小东西需要用到这个特性,所以在网上进行了搜索。 首先找到是国内文章是利用下载Go的源码包,将对其进行编译安装,完成后Go/src下的make.bash生成跨平台的编译器,这样在每次用时需要指定GOOS及GOARCH来进行编译,如: CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build //编译为linux 64位系统下的程序 如果需要编译windows 64 位下的程序则要再写一个命令: CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build //编译为windows 64位系统下的程序 具体介绍请看: “G...阅读全文

博文 2015-03-19 10:00:01 forrestsun

golang build 编译规则

注意点一、 go build 的时候会选择性地编译以系统名结尾的文件(linux、darwin、windows、freebsd)。例如Linux(Unix)系统下编译只会选择array_linux.go文件,其它系统命名后缀文件全部忽略。 注意点二、 在xxx.go文件的文件头上添加 // + build !windows (tags),可以选择在windows系统下面不编译 // +build !windows package main 总结:golang跨平台没有java好用,但是跟c语言差不多,都得针对不同平台不同特性迭轮...阅读全文

博文 2015-10-20 12:00:06 webyh

跨平台编译Go程序(交叉编译)

作用:比如你手头只有Mac系统,而你的用户有Linux和Windows的,他们也想用,你可以通过交叉编译出Linux和Windows上的可执行文件给他们用 (1)首先进入go/src 源码所在目录,执行如下命令创建目标平台所需的包和工具文件。 $ cd /usr/local/go/src $ CGO_ENABLED=0 GOOS=linux GOARCH=amd64 ./make.bash 如果是 Windows 则修改 GOOS 即可。 $ CGO_ENABLED=0 GOOS=windows GOARCH=amd64 ./make.bash (2) 现在可以编译 Linux 和 Windows 平台所需的执行文件了。 $ CGO_ENABLED=0 GOOS=linux GOARCH=a...阅读全文

博文 2015-05-13 03:00:06 wangxusummer

go项目使用gox交叉编译,生成跨平台的可执行文件

【第一次安装】 1.安装gox $ go get github.com/mitchellh/gox $ cd $GOPATH/src/github.com/mitchellh/gox $ go build 2.编辑~/.bash_profile(bsh) 或者~/.zshrc(zsh) 添加一行: alias gox="$GOPATH/src/github.com/mitchellh/gox/gox" 新开终端,让设置生效。 3.生成本地工具链(如果go版本升级,比如从1.3.3升级到1.4,需要重新运行这个命令先) $ gox -build-toolchain 【交叉编译项目】 1.比如有一个项目的目录在$GPATH/src/hello $cd $GPATH/src/hello $gox ...阅读全文

RobotGo v0.10.0,Golang 跨平台 GUI 自动化系统(模拟鼠标键盘和控制bitmap以及屏幕)

RobotGo v0.10.0 发布了。v0.10.0 是针对RobotGo优化完善的版本,用于类似于GUI自动化等场景(模拟鼠标键盘和控制bitmap以及屏幕)。 主要变更: 增加主要的bitmap操作支持 更新屏幕方法,增加直接返回bitmap方法 更新测试 优化内存释放 更新文档 更新C方法命名 修复BUG: 修复输入法导致的空指针bug 修复Mac ScreenCapture模糊问题 修复mouse类型冲突bug 安装: go get github.com/go-vgo/robotgo 项目地址: https://github.com/go-vgo/robotg...阅读全文

Go 开发的跨平台 GameBoy 模拟器GoBoy

GoBoy 是一款跨平台的 Nintendo GameBoy 和 GameBoy Color 模拟器。模拟器可以运行大多数 GB 游戏和一些 CGB 游戏。此外,还提供对颜色和声音的支持。![image](https://static.oschina.net/uploads/space/2018/1123/182821_AK5D_2720166.jpg) ![image](https://static.oschina.net/uploads/space/2018/1123/183202_luzB_2720166.png...阅读全文

开源项目 2018-12-05 09:30:01 网友

RobotGo v0.20.0,Golang跨平台控制鼠标键盘位图屏幕,增加全局事件监听

RobotGo v0.20.0 发布了。v0.20.0 是针对RobotGo v0.10.0优化完善的版本,用于自动化测试工具等场景。 主要变更: 增加全局事件监听 例子: mleft := robotgo.LEvent("mleft") if mleft == 0 { Println("you press...", "mouse left button") } 增加图片格式转换方法 更新CaptureScreen方法,可以不传参数 更新GetPixelColor方法 更新测试 更新文档 完善bitmap 修复BUG: 修复CaptureScreen参数问题 修复MouseToggle...阅读全文

细说腾讯产品经理的职级划分

在中国,大多数互联网人都有一个共同的目标,那就是进BAT工作。今天小编和大家分享的就是BAT中腾讯产品经理职级相关东东。本文是小编在一个产品经理网站上面看到的,江湖人称中关村第一才女的腾讯人写的一篇文章,希望对想进腾讯做产品经理的小伙伴有所帮助吧。 腾讯产品的职级,主要有几个大点,可以大致衡量你面前的这位产品经理在哪个段位。 一级产品经理:初级、优化特性、提升数据 产出:优化现有产品特性 其实一级产品经理,应该叫产品助理。一个没有任何产品经验的应届大学毕业生,可以用 1-3年 的时间,成为一个优秀的产品助理。 他需要做的第一个修炼是,锁定一个自己喜欢的产品,画出让它持续运营的完整服务流程,并估算整体服务成本。 如果你始终对属于 UI/UE 的界面细节充满热...阅读全文

RobotGo v0.46.0 发布, 修复重要 bug

RobotGo v0.46.0 发布了,Golang 跨平台控制鼠标、键盘、位图、屏幕、窗口句柄以及全局事件监听。 更新: go get -u github.com/go-vgo/robotgo 主要变更: - 增加 robot 分支 - 增加 ActivePID - 增加 FindBit 更新: - 更新 examples 和文档 - 更新 FindIds - 更新 README.md 和 clipboard 修复: - 修复 MoveMouseSmooth 参数错误 - 修复 name 错误 - 修复 FindBitmap 错误 项目地址:https://github.com/go-vgo/robotg...阅读全文

ubuntu 下 golang 跨平台编译 windows 程序

1. 安装 gcc-mingw-w64 apt-get install gcc-mingw-w64 2. 跨平台编译 生成 64位 exe 可执行文件. env CGO_ENABLED=1 GOOS=windows GOARCH=amd64 CC=x86_64-w64-mingw32-gcc go build -o main.exe main.go 生成 32 位 exe 可执行文件 env CGO_ENABLED=1 GOOS=windows GOARCH=386 CC=i686-w64-mingw32-gcc go build -o main.exe main.g...阅读全文

请教一下,windows下如何用go调c动态库(.dll)?

linux下开发感觉没有windows下开发直观,go既然是跨平台的而且go在linux下可以调用c库,那么个人感觉在windows下肯定也可以调用,但是上网搜了很多资料只有调用kernel32.dll的例子,这个是系统的库,如何能调用自己的库呢?求大神指点,回复也可以,我的qq:810766340,或者邮箱xuxue_126@126.co...阅读全文

南京招聘Golang工程师

工作地点:南京市楚翘城,双休五险一金,10K-20K,物联网行业 核心技能: •Go, C++/C, Lua •高并发/并行处理/队列/任务调度相关工作经历 大型系统项目经验佳 还期望您可能具备: •集群, Docker部署; •Linux 基础; •JavaScript/Node.js; •内存库:Redis, mongo…; •关系数据库: Postgres, MySQL...; •MQ 相关: MQTT,CoAP...; •会 Java/C#, 有强烈学习意愿. 其他: •欢迎完美主义者/小偏执狂:-) 岗位职责: •各种姿势 Coding; •做好TDD驱动或开发者驱动测试; •任务/故障跟踪...阅读全文

跨平台自启动设置小工具autostart

开源的自启动设置小工具,跨平台,使用方式统一,兼容 windows、mac、linux 桌面版,特别适用于需要开机启动的跨平台程序调用,实现自启动,屏蔽了麻烦的平台判断和启动方法研究。 On linux and mac , the command is autostart. On windows , the command is autostart.exe. _**linux&mac**_ help: _**windows**_ help: 2.Disable Application autostart. _**linux&mac**_ help: _**windows**_ ...阅读全文

1.Golang介绍

Go 语言是谷歌为充分利用现代硬件性能又兼顾开发效率而设计的一种全新语言。 Go 是一种跨平台(Mac OS、Windows、Linux 等)静态编译型语言。拥有媲美 C 语言的强大性能,支持静态类型安全,在普通计算机上能几秒内快速编译一个大项目,开发效率跟动态语言相差无几。 Go 语言在国内拥有非常活跃的社区、不仅大公司的 Go 项目越来越多,中小公司也都在考虑 Go 的应用。当前 Go 语言主要应用于后端服务的开发,未来随着 Go 项目的完善,在系统、游戏、UI界面、AI、物联网等领域,都将被广泛使用。 当然 Go 语言有优点也有一些缺点,完美的东西毕竟太少,如果看好 Go 的未来发展,那么不如抛开成见先来体验一番...阅读全文

博文 2018-10-30 05:34:41 野尘lxw

golang 跨平台编译

第一次接触跨平台编译是在阅读 evio 源码的时候, 发现它的internal包下面的 internal_linux.go 和internal_bsd.go 定义了两个一模一样的函数名 OpenPoll() , golang 在同一个包下是不允许有同名函数的, 后来仔细阅读源码才发现 在 internal_bsd.go 文件的开头有一行注释 // +build darwin netbsd freebsd openbsd dragonfly 经过查资料,了解到这个注释是用来做跨平台编译的, 也就是 internal_bsd.go 只会在 darwin netbsd freebsd openbsd dragonfly 这些系统上参与编译, 这就解释的通了。 下面是从网上转载的golang 跨平台...阅读全文

博文 2019-05-16 20:34:41 cc180912

职人社猎头合伙人 Iris:软件工程师如何进行职业规划

3 月 24 日,北京谷歌开发者社区(Beijing Google Developer Groups)联合职人社举办了灯塔 I/O 活动,职人社猎头合伙人 Iris 做了「工程师如何进行职业规划」的分享,以下是分享内容。 大家好,我是职人社的猎头合伙人王晓光(Iris Wang),感谢北京 GDG 组织这次活动,提供了这么好一个交流机会。职人社是一个互联网行业的职业人成长社群,我们为 3 年以上专业经验的人才和融资阶段 B 轮以后、在所处行业中占据竞争优势的互联网公司提供深度连接,其中猎头是我们的服务之一。其实今天站在这里还有一个非常重要的原因,那就是我以前的工作也和大家一样。大家能猜出我毕业后在从事什么工作吗? 没错,我曾经也是一个女程序员,我从一名软件工程师一步步转型到现在。我的转型方向...阅读全文

博文 2018-07-22 20:34:49 职人社

【北京】瓜子二手车后端 golang工程师

工作职责: 1、负责核心产品的分析设计与开发工作 2、可以指导新人开发,共同完成开发工作 3、项目过程中可以输出技术解决方案 4、负责跨部门的沟通协调工作 职位要求 1、本科或以上学历,计算机软件或相关专业,五年以上后端开发经验。 2、计算机基础知识扎实,对数据结构、网络原理有较好的掌握。 3、精通Golang,C/C++中的至少一种语言,至少开发过一个大中型后端项目,能够独立编写中等规模的后端应用 4、熟悉LINUX环境下编程,熟悉Nginx配置和优化,熟悉shell脚本 5、精通MYSQL并拥有查询优化和存储优化的经验,能够根据业务需求进行数据库设计,并提供优化方案 6、严谨细致,有责任心,有良好的团队合作意识,能够承担重要任务,承受较强的工作压力。 7、有...阅读全文

特殊字符的json序列化

先来看一段golang package main import ( "encoding/json" "fmt" ) func main() { data := map[string]string{ "str0": "Hello, world", "str1": "<", "str2": ">", "str3": "&", } jsonStr, _ := json.Marshal(data) fmt.Println(string(jsonStr)) } 输出结果 {"str0":"Hello, world","str1":"\u003c","str2":"\u003e","str3":"\u0026"} 先来段rust的 extern crate rustc_serialize; use ru...阅读全文

博文 2018-09-08 22:34:39 wu_sphinx

ubuntu 下 golang 跨平台编译 windows 程序

1. 安装 gcc-mingw-w64 apt-get install gcc-mingw-w64 2. 跨平台编译 生成 64位 exe 可执行文件. env CGO_ENABLED=1 GOOS=windows GOARCH=amd64 CC=x86_64-w64-mingw32-gcc go build -o main.exe main.go 生成 32 位 exe 可执行文件 env CGO_ENABLED=1 GOOS=windows GOARCH=386 CC=i686-w64-mingw32-gcc go build -o main.exe main.g...阅读全文

Golang 的跨平台交叉编译浅析

什么是跨平台交叉编译 交叉编译 通俗地讲就是在一种平台上编译出其他几个平台能够运行的程序(通常指系统和CPU架构的不同) 交叉编译通常使用在分发时,编译出多个平台可用的二进制程序,比如在Linux下编译出可以在Win下可以使用的EXE程序。 本地编译 本地编译是指当前系统所配置编译器根据当前系统配置编译出在当前系统所适用的执行程序(部分其他语言本地编译时可能会由于扩展包含的问题,无法在同平台其他机器运行)。 所以如果要生成在非本机的其他平台和系统的程序,就需要用到交叉编译(交叉编译工具链)。 交叉编译工具链 > 交叉编译工具链是一个由编译器、连接器和解释器组成的综合开发环境,交叉编译工具链主要由binutils、gcc和glibc 3个部分组成。 > 有时出于减小 libc 库大小的考虑,也...阅读全文

博文 2017-12-02 05:03:06 dingdayu

golang 的交叉编译

Go是一门编译型语言,所以在不同平台上,需要编译生成不同格式的二进制包。 由于Go 1.5对跨平台编译有了一些改进,包括统一了编译器、链接器等。 编译时候只需要指定两个参数:GOOS和GOARCH即可。 示例: # 编译到 linux 64bit $ GOOS=linux GOARCH=amd64 go build # 或者可以使用 -o 选项指定生成二进制文件名字 $ GOOS=linux GOARCH=amd64 go build -o app.linux # 编译到 linux 32bit $ GOOS=linux GOARCH=386 go build # 编译到 windows 64bit $ GOOS=windows GOARCH=amd64 go build # 编译到 win...阅读全文

博文 2017-07-03 08:03:33 中柠檬

[Unity 3d] tabtoy - 跨平台的高性能便捷电子表格导出器 - GitHub

Excel 导表工具,其二! GitHub 上的工程多如繁星,有些好的仓库,但凡不经意间错过了就很难找回,故稍作采撷,希望能帮助到有心人。 本文集以一个小的功能点为单位行文,也便于拾取罢! 简介: 笔者今天推荐的仓库叫 tabtoy。 这个可谓是一个导表神器了。 功能: 编写电子表格, 导出. 只需2步, 即可导出数据! 跨平台运行, 无第三方依赖, 无需任何的vbs,vba,dll 支持文件格式最多的导出器(json, lua, C#+二进制, protobuf text, proto, golang) 一次设置, 自动生成索引代码, 支持lua, C# 单元格字段列顺序随意调整, 自动检查错误, 精确报错位置 强类型, 导出时自动类型检查, 提前暴露表格错误 支持中文枚举值, 中文结构体...阅读全文

博文 2019-07-15 22:02:41 雨落随风

Golang 跨平台编译

跨平台编译 默认我们go build的可执行文件都是当前操作系统可执行的文件,如果我想在windows下编译一个linux下可执行文件,那需要怎么做呢? 只需要指定目标操作系统的平台和处理器架构即可: 因为不支持CGO,所以要禁用CGO SET CGO_ENABLED=0 // 禁用CGO SET GOOS=linux // 目标平台是linux SET GOARCH=amd64 // 目标处理器架构是amd64 然后再执行go build命令,得到的就是能够在Linux平台运行的可执行文件了。 Mac 下编译 Linux 和 Windows 平台 64位 可执行程序: CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build CGO_ENABLED=0 ...阅读全文

博文 2019-12-26 08:32:52 凉风有信llm

阿里云数据传输服务低价不低质,服务再升级

摘要: 为了释放更多技术红利,进一步普惠广大客户和开发者,阿里云于12月下旬宣布,数据传输服务(Data Transmission Service) DTS将全面降价,并于当月生效。 此次价格调整涉及多项服务和功能,国内地区数据订阅功能降价40%,国际地区降价最高达60%。 为了释放更多技术红利,进一步普惠广大客户和开发者,阿里云于12月下旬宣布,数据传输服务(Data Transmission Service) DTS将全面降价,并于当月生效。 此次价格调整涉及多项服务和功能,国内地区数据订阅功能降价40%,国际地区降价最高达60%。数据同步功能国内地区micro/small降价15%,medium/large规格降价20%。国际地区降价幅度为45%~50%。数据迁移服务,目前...阅读全文

Go相关公众号文章每日推荐 【2019-12-27】

### 一、Golang来啦 1.[Go 面试每天一篇(第 116 天)](https://mp.weixin.qq.com/s/gBuiDHWB2Nz9tKxzEdZPbw) ### 二、Go语言中文网 1.[使用 CGO 和 GoReleaser 进行跨平台编译](https://mp.weixin.qq.com/s/Ino1fBNEu2ANuwksZtCXbg) 2.[大神是如何学习 Go 语言之浅入浅出接口的原理](https://mp.weixin.qq.com/s/62F6bd4UXiqWC8f8i7GBGQ) 3.[一起攻克面试难关:Go 面试每天一篇(第 97 天)](https://mp.weixin.qq.com/s/fZN_0GuOhfZQ...阅读全文