当前位置: 首页 > 面试题库 >

交叉编译在OSX上运行?

司空丰
2023-03-14
问题内容

我正在尝试在OSX上交叉编译go应用程序,以为Windows和Linux构建二进制文件。我已经阅读了所有可以在网上找到的东西。我发现的最接近的示例已发布(除了有关go-
nuts邮件列表的许多未完成的讨论之外):

http://solovyov.net/en/2012/03/09/cross-compiling-
go/

但它不适用于我的安装。我去了1.0.2。由于1.0.2是最近的版本,因此在我看来上述所有示例均不适用于该版本。

试图./make.bash --no-clean与ENV vars设置为386 /
windows一起使用,它确实可以编译,但是对于我的安装它可以编译,这darwin/amd64完全忽略了ENV中设置用来构建不同编译器的设置。

有没有人建议如何做到(如果可以做到的话)?


问题答案:

使用Go
1.5,他们似乎改善了交叉编译过程,这意味着它已内置。不需要./make.bash-ing或brew-ing。这里描述了该过程,但是对于那里的TLDR-ers(像我一样):您只需设置GOOSGOARCH环境变量并运行go
build。

对于甚至更懒惰的复制粘贴器(例如我),如果您使用的是* nix系统,请执行以下操作:

env GOOS=linux GOARCH=arm go build -v github.com/path/to/your/app

您甚至学到了env技巧,它使您可以完全免费地为该命令设置环境变量。



 类似资料:
  • 我试图将我的一个Rust项目编译为x86_64-unknown-linux-gnu目标: 铁锈版: 我试图用rustup更新所有东西,但我仍然得到同样的问题。

  • 问题内容: 我创建了一个交叉编译的arm可执行文件。我想找到可执行文件的库依赖项。我正在使用ubuntu natty并安装了不包含ldd的arm-linux- gnueabi工具链。有没有可用的工具来查看Linux中arm可执行文件库的依赖性。 问题答案: 这有点儿混乱,但这是我能找到的最好的解决方案,对于基本用途它确实很好用-只需使用其他交叉工具将此脚本另存为“ arm-none-linux-g

  • 我在、Visual C++和交叉编译器的帮助下为构建项目。它运行良好,但如何处理情况时,我需要链接到库?我是否应该用当前的交叉编译器构建所有必需的库?例如如何处理库?

  • 本文档说明如何在kali linux上配置ARM交叉编译环境,是我们多份关于”定制ARM镜像”的文档的起点. 开发机的配置 编译内核生成镜象通常需要大量硬盘空间.确保你的开发机至少有50G可用硬盘空间以及足够的内存,CPU不要太差. 安装依赖 先安装ARM交叉编译所需的依赖. apt-get install git-core gnupg flex bison gperf libesd0-dev b

  • 正在检查CC的已解析符号链接。..没有符号链接配置:C编译器(位于/mnt/d/ubuntu/ndk/build/tools/toolchain/bin/aarch64-linux-android21-clang)似乎不是所需的gcc编译器。configure:使用--version运行的结果是:“”configure:error:需要gcc编译器。尝试设置--with-tools-dir。使用结

  • 问题内容: 各位 我正在尝试在Ant和终端上玩Javac Cross编译。在本地和集成环境中,我在一个非常基本的问题上遇到了同样的问题。 我在linux终端(以及在Windows和cmd的cygwin上)上运行此命令: 与Main.java一起使用,仅是System.out.println。 我收到错误消息: 我在本地Windows机器上的配置大致相同,结果完全相同。 我的理解是,交叉编译就是使用