Tag: python 2.7

在Python模块中嵌入Python脚本时的ImportError和PyExc_SystemError(.so文件)

我正在尝试用C语言编写一个演示PAM模块,该模块使用C语言中的嵌入式Python来运行用python(2.7)编写的脚本,在pam_sm_authenticate()函数内部,该函数用C文件(pam_auth.c)编写。 这是python脚本:test.py import math import numpy def test_func(): a = “test” return a test.py的路径是/usr/lib/Python2.7/,以便我可以轻松导入它。 这是C文件: #define PAM_SM_AUTH #define PAM_SM_ACCOUNT #define PAM_SM_SESSION #include #include #include #include #include #include #include #define NOBODY “nobody” /*PAM Stuffs*/ PAM_EXTERN int pam_sm_authenticate( pam_handle_t* pamh, int flags, int argc, const char** argv) { const char *user; int retval; user = NULL; retval […]

未定义的符号:在C中嵌入Python时的PyExc_ImportError

我正在开发一个调用python脚本的C共享库。 当我运行应用程序时,我收到此错误: Traceback (most recent call last): File “/home/ubuntu/galaxy-es/lib/galaxy/earthsystem/gridftp_security/gridftp_acl_plugin.py”, line 2, in import galaxy.eggs File “/home/ubuntu/galaxy-es/lib/galaxy/eggs/__init__.py”, line 5, in import os, sys, shutil, glob, urllib, urllib2, ConfigParser, HTMLParser, zipimport, zipfile File “/usr/lib/python2.7/zipfile.py”, line 6, in import io File “/usr/lib/python2.7/io.py”, line 60, in import _io ImportError: /usr/lib/python2.7/lib-dynload/_io.so: undefined symbol: PyExc_ImportError 如果我尝试从控制台导入模块io工作正常: Python 2.7.1+ (r271:86832, Apr 11 […]