Добрый день!
Есть zip-архив с самописными модулями Питона.
Включение данного архива в прогу на Питоне проходит ОК
[file]
import sys
sys.path.insert(0, 'em_func.zip')
import em_func
em_func.sendMail()
[end file]Если же этот архив импортировать в прогу на плюсах, то если к проге подлинкован Qt, то получаю SegmentationFault на импорте модуля.
[file]
Py_SetProgramName(argv[0]);
Py_Initialize();
PySys_SetArgv(argc, argv);
sys_path = PySys_GetObject("path");
PyList_Insert(sys_path, 0, PyString_FromString("em_func.pzl"))
zipimport = PyImport_ImportModule("em_func");
Py_Finalize();
[end file]g++ -c -I. -I/usr/include/python2.4 -I/usr/lib/qt-3.3.3/include -DPROJECTNAME=\"em_func\" -DCONSOLE -o em_main.o em_main.cpp
g++ -L/usr/lib/qt-3.3.3/lib/ -o em_main -s -rdynamic -lpython2.4 -lqt-mt em_main.o em_client.oПри этом:
- если убрать -lqt-mt - все ОК;
- трап может зависеть от размера или содержимого zip-архива. Для примитивного модуля с
def sendmail():
pass
импорт проходит без ошибкиКто может подсказать, в какую сторну копать?
Спасибо.
>Добрый день!
>Есть zip-архив с самописными модулями Питона.Попробовать не самописные для сравнения?
>g++ -c -I. -I/usr/include/python2.4 -I/usr/lib/qt-3.3.3/include -DPROJECTNAME=\"em_func\" -DCONSOLE -o em_main.o em_main.cpp
>g++ -L/usr/lib/qt-3.3.3/lib/ -o em_main -s -rdynamic -lpython2.4 -lqt-mt em_main.o em_client.o-Wall пожалуйста не забывайте
>
>При этом:
>- если убрать -lqt-mt - все ОК;попробовать без многопоточности (-lqt).
>- трап может зависеть от размера или содержимого zip-архива. Для примитивного модуля
>с
>def sendmail():
> pass
>импорт проходит без ошибкиВидимо в данном случае не юзается, то что вызывает падение.
>Кто может подсказать, в какую сторну копать?
Куда копать не скажу, но то что порыть qt-форумы - точно надо :) да и у самих троллей доку почитать..