我知道如何使用 g++ 和所有这些来编译 c++ 程序。我的问题是,如果我有一些依赖于各种库的代码,我如何将它编译成一个简单的可执行文件,我可以发送给任何人。为此,我很乐意将其保留在 os x 上。
我想知道如何编译一个“真正的”程序,而不仅仅是一个我可以在本地运行的可执行文件。我试过用谷歌搜索,但没有找到太多。
我必须使用安装软件吗?我知道在 Windows 中,您可以制作一些使用常见 DLL 文件的简单 .exe 文件。
我知道如何使用 g++ 和所有这些来编译 c++ 程序。我的问题是,如果我有一些依赖于各种库的代码,我如何将它编译成一个简单的可执行文件,我可以发送给任何人。为此,我很乐意将其保留在 os x 上。
我想知道如何编译一个“真正的”程序,而不仅仅是一个我可以在本地运行的可执行文件。我试过用谷歌搜索,但没有找到太多。
我必须使用安装软件吗?我知道在 Windows 中,您可以制作一些使用常见 DLL 文件的简单 .exe 文件。
您正在寻找“静态链接”。这会将所有需要的代码从库中导入到您的可执行文件中。请注意,可执行文件会变大。如果您使用标准库,它们应该存在于标准操作系统安装中。
您应该尝试 g++ 的“-static”标志。运行“ldd your_executable_name”应该显示您的可执行文件使用的所有库(动态链接)。
由于您在谈论 Mac OS X,您可能想要制作一个捆绑包。Qt Software 有一个非常有用的部署指南,用于开始此类活动。
您可以使用 -static 或 -s 选项在 gcc 或 g++ 中进行静态链接