我有一个脚本'test.py',它导入了一些'.so'模块并依赖于它们。 '.so'模块存在于'COMPILED'文件夹中,该文件夹的绝对路径已经添加到PYTHONPATH环境变量中。所以,现在当我运行它时 - “$ python test.py” - 它运行的很好。当我使用Nuitka编译它时 - “$ nuitka --recurse-all test.py” - 它编译也生成一个'test.exe'可执行文件,现在当我执行它而不是导入模块并正常运行时,它会引发一个'Segmentation Fault'用Nuitka编译的脚本引发了分段错误
最后,我想补充一点,我已经使用Nuitka生成了'.so'文件 - 它们基本上都是模块。他们像一个普通的未编译python一样工作,但只要我用Nuitka编译test.py ... KABOOM!
这个问题之前已经发布时间:
,但没有得到回答,我不能发表评论或通知某人那里,因为我刚刚创建的帐户,所以我再次问它。这里的链接到以前版本的问道: python package complied with nuitka fails with segmentation fault
Directory Structure:
/PARENT_FOLDER
|______/COMPILED: <---- this folder contains all the '.so' files
| file1.so
| file2.so
| .
| .
|______test.py <---- here is the test.py script
一个SIGSEGV可能会导致很多事情,只是因为前面的问题提出了同样的问题不是我同样的原因。没有来源,我怀疑任何人都可以回答。就我个人而言,我会尝试追踪C++中的错误,然后从那里开始工作。使用'gdb'查看核心转储。 – cdarke
或者,如果您不了解C++,请尝试减少'test.py'代码以找出问题。 – cdarke
谢谢你的回复@cdarke :)。我很抱歉,但我没有提到作者在上一个问题上评论了他已经解决了这个问题的答案之一,但他没有提到如何。这就是我问的原因。尽管如此,我会给gdb一个尝试。和平! –