代码之家  ›  专栏  ›  技术社区  ›  Krzysiek Goj

将32位库链接到64位程序

  •  17
  • Krzysiek Goj  · 技术社区  · 15 年前

    我有一个32位的,所以只有二进制的库,我必须生成使用它的64位程序。 有没有一种方法来包装或转换它,以便它可以与64位程序一起使用?

    3 回复  |  直到 11 年前
        1
  •  28
  •   Reed Copsey    15 年前

    不可以。在64位程序中不能直接链接到32位代码。

    最好的选择是编译一个32位(独立)程序,它可以 run on your 64bit platform (using ia32) ,然后使用进程间通信的形式从64位程序与之通信。

        2
  •  5
  •   Prof. Falken    11 年前

    有关使用IPC从64位代码运行32位插件的示例,请查看开放源码 NSPluginWrapper .

        3
  •  4
  •   Prof. Falken    15 年前

    这是可能的,但不是没有一些严重的魔法幕后,你不会喜欢答案。要么模拟32位CPU(不,我不是开玩笑),要么将主进程切换回32位。不过,模仿可能很慢。

    This is a proof of concept 技术。

    那就留一张桌子 每一个 从32位库访问和访问内存,并使它们保持同步。要达到理论上的完整性是非常困难的,但是一些可行的东西应该是非常容易的,但是非常乏味。

    在大多数情况下,我认为两个过程以及两者之间的IPC实际上可能是最简单的,正如我们所建议的那样。