iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python使用ctypes调用第三方库时出现undefined symbol错误怎么解决
  • 163
分享到

python使用ctypes调用第三方库时出现undefined symbol错误怎么解决

2023-07-05 04:07:07 163人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

这篇文章主要介绍“python使用ctypes调用第三方库时出现undefined symbol错误怎么解决”,在日常操作中,相信很多人在Python使用ctypes调用第三方库时出现undefined symbol错误

这篇文章主要介绍“python使用ctypes调用第三方库时出现undefined symbol错误怎么解决”,在日常操作中,相信很多人在Python使用ctypes调用第三方库时出现undefined symbol错误怎么解决问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”python使用ctypes调用第三方库时出现undefined symbol错误怎么解决”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

1.出现错误

在使用python 中使用中调用第三方so库时

import ctypescpp = ctypes.CDLL('./detector.so')

出现如下错误:

Traceback (most recent call last):
File “detection.py”, line 143, in
face_detection(image_path)
File “detection.py”, line 52, in face_detection
cpp = ctypes.CDLL(’./detector.so’)
File “/usr/lib/python3.8/ctypes/init.py”, line 373, in init
self._handle = _dlopen(self._name, mode)
OSError: ./detector.so: undefined symbol: __powf_finite

这是由于未定义__powf_finite引起的。

2.分析步骤

(1)使用file命令检查so库的架构,看是否平台一致

file detector.so

输出:

detector.so: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=8ac2d2c5490394447e21cf383f1428d8ad70be7a, with debug_info, not stripped

发现平台是没有问题的。

(2)使用 ldd -r xxx.so 查看so库链接状态和错误信息

ldd -r detector.so

输出如下:

python使用ctypes调用第三方库时出现undefined symbol错误怎么解决

确实存在 undefined symbol: __powf_finite (./detector.so) 等问题,

(3)使用c++filt 定位错误位置

使用以下命令来查找在c++代码中的位置

c++filt __powf_finite

最后面发现是我c++代码的问题,我在c++代码中又引用了第三方库.a文件,是.a文件的问题,这个文件是以前的老代码生成的,自己重新编译源码生成新的 .a文件就可以解决了。

到此,关于“python使用ctypes调用第三方库时出现undefined symbol错误怎么解决”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: python使用ctypes调用第三方库时出现undefined symbol错误怎么解决

本文链接: https://www.lsjlt.com/news/349393.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • python使用ctypes调用第三方库时出现undefined symbol错误怎么解决
    这篇文章主要介绍“python使用ctypes调用第三方库时出现undefined symbol错误怎么解决”,在日常操作中,相信很多人在python使用ctypes调用第三方库时出现undefined symbol错误...
    99+
    2023-07-05
  • C++调用AdjustTokenPrivileges出现错误怎么解决
    调用AdjustTokenPrivileges函数时可能会出现错误,常见的错误有以下几种: ERROR_NOT_ALL_ASSIG...
    99+
    2023-10-27
    C++
  • delphi调用dll出现错误怎么解决
    要解决Delphi调用DLL出现错误,可以按照以下步骤进行尝试: 确认DLL文件路径是否正确:检查DLL文件是否在正确的路径下,...
    99+
    2023-10-25
    delphi
  • PHPCMS出现调用时间错误怎么办?
    PHPCMS是一款常用的开源内容管理系统,广泛应用于各类网站开发中。然而,有时候在使用PHPCMS的过程中会出现调用时间错误,导致网站无法正常运行。本文将介绍一些常见的PHPCMS调用...
    99+
    2024-03-14
    错误 php cms
  • Python标准库及第三方库怎么使用
    本篇内容介绍了“Python标准库及第三方库怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、time模块1.time模块简介tim...
    99+
    2023-07-06
  • Python第三方库gTTs/pyttsx3/speech怎么使用
    Python文字转语音(调研&成品函数)由于项目需要, 我需要将文字转换为语音, 那么第一步就要进行调研什么是语音合成技术语音合成(text to speech),简称TTS。是将文字转化为语音的一种技术,是让计算机模拟人类的嘴巴,...
    99+
    2023-05-14
    Python speech
  • 使用Unity3D时出现DllNotFoundException错误如何解决
    这篇文章给大家介绍使用Unity3D时出现DllNotFoundException错误如何解决,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。起因unity程序build到pc上,拿到其他人的机器上结果有些功能不正常,看...
    99+
    2023-06-14
  • Python怎么使用sqlite3第三方库读写SQLite数据库
    本篇内容主要讲解“Python怎么使用sqlite3第三方库读写SQLite数据库”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python怎么使用sqlite3第三方库读写SQLite数据库”...
    99+
    2023-07-02
  • 使用python中出现的错误及解决办法
    【问题1】在编译安装完Python后,不能正常使用yum,使用yum出现以下错误[root@localhost bin]# yum  File "/usr/bin/yum", line 30    except KeyboardInterr...
    99+
    2023-01-31
    解决办法 错误 python
  • Vue使用v-for语句时抛出错误怎么解决
    本篇内容主要讲解“Vue使用v-for语句时抛出错误怎么解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Vue使用v-for语句时抛出错误怎么解决”吧!Vue 中使用v-for语句抛出错误的解...
    99+
    2023-07-04
  • 怎么使用Python第三方opencv库实现图像分割处理
    这篇文章主要介绍了怎么使用Python第三方opencv库实现图像分割处理的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么使用Python第三方opencv库实现图像分割处理文章都会有所收获,下面我们一起来看...
    99+
    2023-07-02
  • Dataloader使用时iter.next()迭代器出现错误怎么解决以及_MultiProcessingDataLoaderIter报错解决指南
    出现一下错误 怎么办? AttributeError: '_MultiProcessingDataLoaderIter' object has no attribute 'next' 以下附上出问题的...
    99+
    2023-10-18
    python 深度学习 numpy
  • CentOS 6.3下使用Nagios出现错误的解决方法
    这篇文章主要介绍“CentOS 6.3下使用Nagios出现错误的解决方法”,在日常操作中,相信很多人在CentOS 6.3下使用Nagios出现错误的解决方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C...
    99+
    2023-06-16
  • MySQL删除数据库时出现错误ERROR 1010 (HY000)怎么解决
    本篇内容主要讲解“MySQL删除数据库时出现错误ERROR 1010 (HY000)怎么解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQL删除数据库时...
    99+
    2024-04-02
  • 数据库更新表数据时出现ORA-02292错误怎么解决
    本篇内容介绍了“数据库更新表数据时出现ORA-02292错误怎么解决”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学...
    99+
    2024-04-02
  • oracle关键字在mybatis中使用时出现错误如何解决
    oracle关键字在mybatis中使用时出现错误如何解决?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。解决方式 可以使用resultMap**示例代...
    99+
    2023-05-31
    mybatis oracle
  • 在使用vuex的时候出现commit未定义错误的解决
    目录使用vuex的时候出现commit未定义错误出现的原因错误展现过程vuex模块化 commit()时报错 unknown mutation type:xxx废话不多说直接上问题总...
    99+
    2023-01-10
    vuex使用 commit未定义错误 vuex commit未定义错误
  • 如何解决使用Linux命令行时出现的错误提示
    这篇文章主要介绍了如何解决使用Linux命令行时出现的错误提示,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。你在使用 Linux 命令行时曾经得到过“拒绝访问(Permiss...
    99+
    2023-06-16
  • 使用php将时间戳转日期出现错误如何解决
    使用php将时间戳转日期出现错误如何解决?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。php时间戳转日期出错?今天用时间戳转日期,居然day出现了51号,把我弄...
    99+
    2023-06-15
  • 使用上网代理服务器出现403错误怎么解决
    使用上网代理服务器出现403错误解决的方法:1、输入cmd打开命令行,输入ipconfig /flushdns,同时查看是否有在网站虚拟目录中添加默认文档;2、输入命令chcon -R -t httpd_user_content_t pub...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作