蛋疼的配置go opengl的记录 running gcc failed: exit status 1 in golang in windows

本文主要是介绍蛋疼的配置go opengl的记录 running gcc failed: exit status 1 in golang in windows,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

很久以前配置过,忘了,这次又折腾了一个下午,必须写个备忘了。

 

首先,是安装go,这个比较简单,百度解决。

安装完go之后是去安装tdm-gcc,因为像opengl这样的库,需要c/c++编译器来支持,所以需要一个这样的东西,另外,32/64位版本一定要对应,如果你用的go是32位的,一定要使下载tdm-gcc的32位版本进行安装

安装完毕之后一般会自动添加系统变量,即C:\TDM-GCC-32\bin到path里面,如果没有的话就手工添加一下。

在cmd窗口键入gcc -v可以看到一大串的东西则说明成功了,如果没有那就是路径配置有问题。

完成之后就是添加go的glfw,网上有很多教程了,这个就不赘述了,如果不会用go get,还有更简单粗暴的方法,就是到github把征管文件夹下载下来弄到gopath里面去。

至于怎么设置gopath,也是在环境变量那里添加一个变量,不会的就百度吧。

go的ide很多,我使用的是liteide,要注意如果想要写32位的程序建议使用32位版的liteide,

然后在下面这个地方点开来:

 

在LiteEnv里面的win32-user.env 和 win32.env里面改一下(选中后点击ok就能打开)

path那里,默认是mingw32,改成TDM-GCC的bin文件夹的位置,注意,尽量不要使用mingw,老是会出现各种蛋疼的问题,原因不明(另,我用的liteide版本是37.3)

两个弄完,保存,重启liteide,就可以了。然后在需要跑opengl32位程序的时候将运行环境从system改为win32就行了。

如果安装的go和安装的tdm-gcc的版本不一致(一个32一个64)就会出现running gcc failed: exit status 1 in golang in windows 的错误,

可以参考https://stackoverflow.com/questions/59859891/running-gcc-failed-exit-status-1-in-golang-in-windows

如果没有安装tdm-gcc直接跑,就会提示各种not found xxx such a 什么什么的错误,或者是missing 什么什么鬼,总之就是少了c/c++编译器。

在跑的时候会出现一些warning信息比如 warning: 'GUID_POV' initialized and declared 'extern'

原因可以参考 https://blog.csdn.net/justshare/article/details/83406125

https://bbs.csdn.net/topics/60456567

至于怎么下载tdm-gcc,这个就直接百度即可。注意,带64的只能和64位一起使用,编译出64位的程序是无法在32位的电脑使用的。

完毕。

 

这篇关于蛋疼的配置go opengl的记录 running gcc failed: exit status 1 in golang in windows的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/561114

相关文章

Linux下进程的CPU配置与线程绑定过程

《Linux下进程的CPU配置与线程绑定过程》本文介绍Linux系统中基于进程和线程的CPU配置方法,通过taskset命令和pthread库调整亲和力,将进程/线程绑定到特定CPU核心以优化资源分配... 目录1 基于进程的CPU配置1.1 对CPU亲和力的配置1.2 绑定进程到指定CPU核上运行2 基于

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

深入理解Go语言中二维切片的使用

《深入理解Go语言中二维切片的使用》本文深入讲解了Go语言中二维切片的概念与应用,用于表示矩阵、表格等二维数据结构,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧... 目录引言二维切片的基本概念定义创建二维切片二维切片的操作访问元素修改元素遍历二维切片二维切片的动态调整追加行动态

Spring Boot spring-boot-maven-plugin 参数配置详解(最新推荐)

《SpringBootspring-boot-maven-plugin参数配置详解(最新推荐)》文章介绍了SpringBootMaven插件的5个核心目标(repackage、run、start... 目录一 spring-boot-maven-plugin 插件的5个Goals二 应用场景1 重新打包应用

Java中读取YAML文件配置信息常见问题及解决方法

《Java中读取YAML文件配置信息常见问题及解决方法》:本文主要介绍Java中读取YAML文件配置信息常见问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 目录1 使用Spring Boot的@ConfigurationProperties2. 使用@Valu

Jenkins分布式集群配置方式

《Jenkins分布式集群配置方式》:本文主要介绍Jenkins分布式集群配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装jenkins2.配置集群总结Jenkins是一个开源项目,它提供了一个容易使用的持续集成系统,并且提供了大量的plugin满

SpringBoot线程池配置使用示例详解

《SpringBoot线程池配置使用示例详解》SpringBoot集成@Async注解,支持线程池参数配置(核心数、队列容量、拒绝策略等)及生命周期管理,结合监控与任务装饰器,提升异步处理效率与系统... 目录一、核心特性二、添加依赖三、参数详解四、配置线程池五、应用实践代码说明拒绝策略(Rejected

golang版本升级如何实现

《golang版本升级如何实现》:本文主要介绍golang版本升级如何实现问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录golanwww.chinasem.cng版本升级linux上golang版本升级删除golang旧版本安装golang最新版本总结gola

go中的时间处理过程

《go中的时间处理过程》:本文主要介绍go中的时间处理过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1 获取当前时间2 获取当前时间戳3 获取当前时间的字符串格式4 相互转化4.1 时间戳转时间字符串 (int64 > string)4.2 时间字符串转时间

Go语言中make和new的区别及说明

《Go语言中make和new的区别及说明》:本文主要介绍Go语言中make和new的区别及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1 概述2 new 函数2.1 功能2.2 语法2.3 初始化案例3 make 函数3.1 功能3.2 语法3.3 初始化