有人使用 uClibc 为 MIPS 64 交叉编译 Mono 吗?

发布于 2024-07-16 20:30:46 字数 436 浏览 7 评论 0原文

我正在尝试为 MIPS 静态交叉编译 Mono。 我能够编译 Mono,但它始终与其依赖项动态链接,即使我向编译器指定 static。

我编写了一个测试程序,我能够使用我的工具链静态编译它并在目标平台上运行它。 我不确定我是否遗漏了某些东西或者它是否不可能。 我使用 buildroot 构建了我的工具链。

编辑

为了让事情更清楚一点,我想用它的依赖项静态编译mono。 mono 依赖的依赖项有:GLib、pkg-config 和 gettext。 我相信 GLib 是直接依赖项,GLib 依赖于 pkg-config 和 gettext。

如果需要,我可以发布我的环境变量并配置命令。

I am trying to statically cross compile Mono for MIPS. I am able to compile Mono, but it is always dynamically linked with it's dependencies, even though I specify static to the compiler.

I wrote a test program and I am able to statically compile it with my toolchain and run it on the target platform. I am not sure if I am missing something or if it isn't possible. I built my toolchain using buildroot.

EDIT

To make things a little more clear, I would like to statically compile mono with it's dependencies. The dependencies that mono rely's on are: GLib, pkg-config, and gettext. I believe GLib is a direct dependency and GLib depends on pkg-config and gettext.

I can post my environment variables and configure command if needed.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

单身情人 2024-07-23 20:30:46

为了获得完全静态链接的 Mono,您必须首先将其所有依赖项(及其递归依赖项)构建为静态库。 只有这样你才能构建一个真正静态的 Mono。

In order to get a fully statically linked Mono you will have to build all it's dependencies (and their dependencies recursively) as static libraries first. Only then you can build a truly static Mono.

国粹 2024-07-23 20:30:46

嗯,自从我尝试这个以来已经有一段时间了,但我想报告我学到的东西。 首先,我发现 MIPS 处理器是 64 位的,而不是像我最初被告知的目标嵌入式设备那样是 32 位的。 其次,当我从事这项工作时,Mono 还没有 MIPS 64 位支持。 经过一番研究,我发现 N-iX 的一个小组正在移植 Mono 以支持 MIPS 64位架构基于已完成的 32 位端口。 64 位移植是为一家名为 SiCortex, Inc. 的公司完成的,N-iX 正在尝试获取他们的补丁应用于主要的 Mono 开发主干。 您可以检查此 论坛主题以获取更多信息。 我发帖表示我想帮助测试,但从未得到回复。

至于静态编译 Mono,我了解到 Mono 使用 libtool 将其库链接在一起。 在尝试静态编译之前,我需要了解有关此工具的更多信息。 在得知 Mono 还不支持 MIPS 64 位后我就停止了。 我还需要查看 64 位端口补丁是否已应用于 Mono。

我希望这有帮助。

Well, it's been a while since I tried this, but I wanted to report what I learned. For one, I found out that the MIPS processor is 64-bit and not 32-bit like I was initially told for the embedded device that I was targeting. Second, when I was working on this, Mono didn't have MIPS 64-bit support yet. After a little research, I saw that a group at N-iX was porting Mono to support the MIPS 64-bit architecture based off the 32-bit port that was already done. The 64-bit port was being done for a company called SiCortex, Inc. and N-iX was trying to get their patches applied to the main Mono development trunk. You can check this forum thread out for more information. I posted stating I wanted to help with testing, but I never got a response.

As far as statically compiling Mono, I learned that Mono uses libtool for linking it's libraries together. I will need to learn more about this tool, before trying to statically compile. I stopped after learning that Mono didn't support MIPS 64-bit yet. I will also need to see if the 64-bit port patches ever got applied to Mono.

I hope this helps.

甜味超标? 2024-07-23 20:30:46

在最近的一个 stackoverflow 播客中,Miguel 说他们将 Mono 移植到了 iPhone,我认为使用了很多静态内容。 虽然不是 64 位,但它表明可以对 Mono 做一些令人讨厌的事情。

On one of the stackoverflow podcasts recently, Miguel said they ported Mono to iPhone, using a lot of static I think. While not 64-bit, it shows nasty things can be done to Mono.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文