cygwin dlopen 错误:多字节或宽字符无效或不完整
Posted
技术标签:
【中文标题】cygwin dlopen 错误:多字节或宽字符无效或不完整【英文标题】:cygwin dlopen error: Invalid or incomplete multibyte or wide character 【发布时间】:2017-07-11 18:08:57 【问题描述】:这是 cygwin。
我有一个共享库,其中包含一些其他共享库和一些静态库。调用 dlopen() 时,返回句柄,但 perror() 返回 NULL 并带有“无效或不完整的多字节或宽字符”
显然我的图书馆里有什么东西出了问题。我该如何调试呢?有什么方法可以让 dlopen 告诉我哪个包含的库或函数有问题?
【问题讨论】:
【参考方案1】:两个问题:
您检查errno
,即使该功能没有失败。 errno
的值仅在前一个函数失败时定义。
当dlopen
失败时,您不应该使用errno
、perror
或strerror
。你应该使用dlerror
。
【讨论】:
谢谢!这就是我需要知道的。以上是关于cygwin dlopen 错误:多字节或宽字符无效或不完整的主要内容,如果未能解决你的问题,请参考以下文章
undefined reference to 'dlopen'错误,dlopen是函数,有人知道是啥原因吗?
Node.js 错误 - 返回 process.dlopen(module, path._makeLong(filename));