在 Windows 上交叉编译?
我有适用于 Windows 的 GNU GCC 编译器。我读到它能够充当交叉编译器。
我该怎么做?哪些命令选项将生成可由 MacOS/Linux 平台使用的共享库?
I have the GNU GCC compiler for Windows. I read that it is able to function as a cross compiler.
How do I do this? What command option(s) will produce an shared library that can be used by MacOS/Linux platforms?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您需要构建您自己的交叉编译器,即您需要获取 GCC 源并使用所需的目标架构编译它们。然后你必须交叉编译所有的库。
这个过程相当复杂且漫长。通常的 GNU makefile 非常擅长支持这一点(通过 HOST、BUILD 和 ARCH 变量),但如果可能的话,您应该将其留给更高级别的抽象。我想到了 crosstool 就是这样一个工具,但我不知道它是否适用于 Windows。
您可能能够在 Internet 上找到针对特定体系结构的 GCC 预构建 Windows 二进制文件。
You need to build your own cross-compiler, i.e. you need to get the GCC sources and compile them with a desired target-architecture. Then you have to cross-compile all the libraries.
The process is fairly involved and lengthy. The usual GNU makefiles are pretty good at supporting this (through HOST, BUILD and ARCH variables), but if possible you should leave this to a higher-level abstraction.
crosstool
is one such tool that comes to mind, but I don't know if it's available for Windows.It's possible that you'll be able to find pre-build Windows binaries of GCC on the internet that target a particular architecture.