我對這件事情都很陌生,所以請原諒我,如果我在這裏做了一些愚蠢的事情。對待我,並向我解釋,好像我是一個總noob會有幫助。試圖在tcl中支持Python代碼
我用Python編寫的一個簡單的功能,文件名a.pyx
: -
#!/usr/bin/env python
import os
import sys
def get_syspath():
ret = sys.path
print "Syspath:{}".format(ret)
return ret
我希望它能夠通過TCL使用。
我通過cython頁面閱讀,然後。
我跑了這一點: -
cython -o a.c a.pyx
然後我跑到這個命令生成目標文件a.o
: -
gcc -fpic -c a.c -I/usr/local/include -I/tools/share/python/2.7.1/linux64/include/python2.7
然後跑到這來產生這樣的文件a.so
: -
gcc -shared a.o -o a.so
當我從tclsh加載它時,它失敗了。
$tclsh
% load ./a.so
couldn't load file "./a.so": ./a.so: undefined symbol: PyExc_RuntimeError
我在這裏採取正確的道路?如果沒有,請向我解釋出了什麼問題,我該怎麼做?
在此先感謝。
嗨@donal thx的幫助。但我實際需要做的不僅僅是這些。我有一個包含對象類的包。我需要將所有這些轉換爲tcl可用包。對於我應該尋找什麼或哪裏的任何提示? – lionel319