gpt4 book ai didi

c++ - 是否可以在 cygwin gcc build 中使用 VC++ 下构建的库?

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:36:29 24 4
gpt4 key购买 nike

我有使用 VC++ 构建的库。我想在程序中使用相同的库并在 cygwin gcc 编译器中构建。这种情况可行吗?

最佳答案

因为 C++ 没有标准化的 ABI ,并且由于 Visual C++ 和 g++ 几乎肯定有不同的 ABI,我认为你不能这样做。您唯一真正的选择是限制自己使用 C,而不是 C++。

编辑:如果您使用的所有库都是纯 C 语言(extern "C",在 C++ 术语中),那么您应该能够在编译器之间共享库。 (否则,您的 Cygwin 和 MinGW 应用程序无法调用 Windows API。)您需要小心匹配调用约定。例如,Windows API 使用 __stdcall而不是标准的 C 调用约定。您可以告诉 GCC 哪个调用约定与 function attributes 一起使用. Google 和您的图书馆的头文件应该有更多关于使用什么调用约定的信息。

关于c++ - 是否可以在 cygwin gcc build 中使用 VC++ 下构建的库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3365515/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com