在 windows 应用程序中使用的 cygwin 构建 dll 的问题
Problems with cygwin build dll for use in windows app
我使用 Cygwin 将源代码构建为 windows 应用程序使用的 DLL。
当我使用 GCC core
/ GCC g++
时,如果调用 DLL 中的函数(包括 printf
或 malloc
),应用程序会崩溃。
当我使用 Mingw64-x86_64-gcc-core
/ Mingw64-x86_64-gcc-g++
时,它会报告类似 sys/socket.h:No such file or directory
.
的错误
谁能解释一下怎么做?谢谢。
第一个问题是由于尝试仅使用 cygwin 特定工具构建独立 DLL(不依赖于 cygwin1.dll)。
cygwin1.dll.
中存在多个 malloc 和其他 C 库调用之间存在冲突
第二个是因为 sys/socket.h
在 Windows 上不存在
查看可能的解决方案:
Using sys/socket.h functions on windows
因此您需要定义您的目标是什么:Cygwin/Posix 或 Windows 并相应地选择编程风格和工具,您不能混用。
我使用 Cygwin 将源代码构建为 windows 应用程序使用的 DLL。
当我使用 GCC core
/ GCC g++
时,如果调用 DLL 中的函数(包括 printf
或 malloc
),应用程序会崩溃。
当我使用 Mingw64-x86_64-gcc-core
/ Mingw64-x86_64-gcc-g++
时,它会报告类似 sys/socket.h:No such file or directory
.
谁能解释一下怎么做?谢谢。
第一个问题是由于尝试仅使用 cygwin 特定工具构建独立 DLL(不依赖于 cygwin1.dll)。 cygwin1.dll.
中存在多个 malloc 和其他 C 库调用之间存在冲突第二个是因为 sys/socket.h
在 Windows 上不存在
查看可能的解决方案:
Using sys/socket.h functions on windows
因此您需要定义您的目标是什么:Cygwin/Posix 或 Windows 并相应地选择编程风格和工具,您不能混用。