【问题标题】:Installing executable with linked libraries on other system (GCC)在其他系统(GCC)上安装带有链接库的可执行文件
【发布时间】:2011-03-12 11:35:28
【问题描述】:

我有一个在 OS X 上使用一些库的应用程序,它们是由 LGPL 许可的。我可以静态或动态链接它们。一切正常。但是,如果我想在另一台装有 OS X 的计算机上安装我的应用程序,我该怎么办?我的意思是,在另一个系统上不会已经安装了那些库,并且应用程序可能不会运行。我应该把这个库放在某个地方(正如我所理解的与二进制文件在同一目录中),用户可以在其中将其更改为另一个版本(由于 LGPL),但我不明白我应该如何正确地做到这一点。有人可以解释这个技术吗?

【问题讨论】:

    标签: macos gcc linker


    【解决方案1】:

    最近自己不得不面对这个问题,我建议您立即开始了解bundles 的工作原理并利用它们(特别是application bundles)。此外,您必须了解install_name_tool 等工具的工作原理。祝你好运!

    【讨论】:

    • 谢谢,它提供了很多信息。 Linux 和 Windows (MINGW) 中是否有相同的技术?
    • 对于 Windows,您很可能最终会在 %Program Files%\CompanyName\ProductName\ 下创建自己的文件夹,其中可执行文件将放在其中,而所有动态库都将放在 %Winsysdir% 下。在 Linux 下,我个人更喜欢 FHS 标准,你可以在这里阅读一篇不错的文章:linuxjournal.com/article/4121。祝你好运!
    猜你喜欢
    • 2011-03-08
    • 2018-12-18
    • 2016-09-12
    • 1970-01-01
    • 1970-01-01
    • 2018-07-06
    • 1970-01-01
    • 2020-07-04
    • 2016-12-11
    相关资源
    最近更新 更多