我已经为Windows
64位从gomingw安装了Go
。但是,我找不到任何地方实际如何编译.go文件。这是直接从Go
Wiki获得Windows支持链接的程序,但是所有教程都讨论了如何使用6g和gccgo等,而这些在我的Windows机器上都不起作用。实际上,我想做的是,将“
hello.go”放入src文件夹,转到src文件夹后,在命令提示符下运行命令“ 8g
hello.go”。但。它显示错误“打开没有这样的文件或目录”。有人可以通过提供正确的步骤在Windows中编译go程序来帮助我吗?提前致谢。
导航到源代码目录(例如C:\ Arpsss),显示当前目录,并显示当前目录的内容。
C:\>cd C:\Arpssss
C:\Arpssss>cd
C:\Arpssss
C:\Arpssss>dir
Volume in drive C has no label.
Directory of C:\Arpssss
11/28/2011 10:26 AM <DIR> .
11/28/2011 10:26 AM <DIR> ..
11/28/2011 10:24 AM 73 hello.go
1 File(s) 73 bytes
2 Dir(s) 4,949,831,680 bytes free
尝试编译名为的不存在的文件a.go
。
C:\Arpssss>8g a.go
open a.go: No such file or directory
这是您报告的错误-您试图编译一个a.go
不在当前目录中的文件。
在当前目录中编译,链接和运行hello.go Go源文件。
C:\Arpssss>8g hello.go
C:\Arpssss>8l -o hello.exe hello.8
C:\Arpssss>hello
Hello, World!
该hello.go
程序。
package main
import "fmt"
func main() {
fmt.Println("Hello, World!")
}
github。com/gogo/protobuf/proto[ok]github。com/gogo/protobuf/protoc-gen-gogo[ok]github。com/gogo/protobuf/gogoproto[确定]谷歌。戈朗。组织/grpc[确定] 协议--gogo_out=. greet 请帮帮我
问题内容: 我试图写一个围棋包装用CGO的ENET。 当我尝试在Mac上编译包装程序时,该库较旧,并且界面略有不同。99%的代码是相同的,只需要更改几个C调用即可。 在Go中处理此类问题的最佳实践是什么? 有什么方法可以进行条件编译或条件导入吗? 问题答案: Go没有条件编译或条件导入。处理C代码中的类型差异。 [Go]作者是否反对预处理?
我发现了一个与构建使用C:\Windows\System32\CertenRoll.dll作为引用的应用程序有关的问题。 我已经有几个人在这里复制了它,我想在联系微软之前得到更多的信息。 我想我的问题是:有人能证实这一点吗,或者如果证实了,他们破坏了向后兼容性?
如果我重新编译,在C源代码中添加一个空白的main()方法,并删除-C标志,那么它将失败,并出现UnsatisfiedLinkError(无法在64位计算机上加载32位DLL)。 为什么Java调用一个没有main方法的DLL是无效的?这难道不会破坏DLL文件和JNI的全部意义吗? 更新
问题内容: 是否有C宏或某种方式可以检查我的C程序在C编译时是编译为64位还是32位? 编译器:我需要检查的GCC操作系统:Unix / Linux 另外,在运行程序时如何检查操作系统是否支持64位? 问题答案: 由于您标记了此“ gcc”,请尝试
问题内容: 我已经使用构建了一个简单的可执行程序。 我已经将代码编译成静态二进制程序。 我想反编译输出二进制文件并获取Go源代码。 这有可能吗? 问题答案: 没有工具可以执行此操作,并且由于Go程序已编译为机器代码,因此它们所包含的信息不足,无法将其转换回Go代码。但是,仍然可以使用标准拆卸技术。