本文主要是介绍交叉编译后strip遇到的问题:can‘t process non-object and non-archive file,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在mac上利用交叉编译,可生成在ubuntu上运行的文件。 然后,在mac上想strip时,发现失败:
/Library/Developer/CommandLineTools/usr/bin/strip: can't process non-object and non-archive file
想了一下,大概知道原因了:在mac上的strip命令,不认知交叉编译后的文件,所以无法strip. 这样,把文件从mac传到ubuntu时,就非常耗时。怎么办呢?
可以考虑在编译的时候,提前去掉符号和调试信息,比如:
go build -ldflags "-s -w" a.go
搞定问题。
这篇关于交叉编译后strip遇到的问题:can‘t process non-object and non-archive file的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!