LINUX.ORG.RU

комиляция С модуля для NumPy


0

0

Доброго дня уважаемые

Пытаюсь сейчас разобраться в программировании Python приложений на С
нашел такой пример http://www.scipy.org/Cookbook/C_Extensions/NumPy_arrays#head-e2d4f7b1037da892...

При попытке его откомпилировать получаю такой выхлоп

/usr/lib/gcc/i486-linux-gnu/4.4.3/../../../../lib/crt1.o: In function `_start':
(.text+0x18): undefined reference to `main'
/tmp/ccoL91Fa.o: In function `_import_array':
C_arraytest.c:(.text+0xe): undefined reference to `PyImport_ImportModule'
C_arraytest.c:(.text+0x3b): undefined reference to `PyObject_GetAttrString'
C_arraytest.c:(.text+0x80): undefined reference to `PyCObject_Type'
C_arraytest.c:(.text+0x8d): undefined reference to `PyCObject_AsVoidPtr'
C_arraytest.c:(.text+0x113): undefined reference to `PyExc_RuntimeError'
C_arraytest.c:(.text+0x12f): undefined reference to `PyErr_Format'
C_arraytest.c:(.text+0x152): undefined reference to `PyExc_RuntimeError'
C_arraytest.c:(.text+0x162): undefined reference to `PyErr_Format'
C_arraytest.c:(.text+0x174): undefined reference to `PyExc_RuntimeError'
C_arraytest.c:(.text+0x184): undefined reference to `PyErr_Format'
/tmp/ccoL91Fa.o: In function `init_C_arraytest':
C_arraytest.c:(.text+0x1c4): undefined reference to `Py_InitModule4'
C_arraytest.c:(.text+0x1d2): undefined reference to `PyErr_Print'
C_arraytest.c:(.text+0x1d7): undefined reference to `PyExc_ImportError'
C_arraytest.c:(.text+0x1e7): undefined reference to `PyErr_SetString'
/tmp/ccoL91Fa.o: In function `vecfcn1':
C_arraytest.c:(.text+0x23c): undefined reference to `PyArg_ParseTuple'
C_arraytest.c:(.text+0x31e): undefined reference to `Py_BuildValue'
/tmp/ccoL91Fa.o: In function `vecsq':
C_arraytest.c:(.text+0x355): undefined reference to `PyArg_ParseTuple'
/tmp/ccoL91Fa.o: In function `not_doublevector':
C_arraytest.c:(.text+0x4d1): undefined reference to `PyExc_ValueError'
C_arraytest.c:(.text+0x4e1): undefined reference to `PyErr_SetString'
/tmp/ccoL91Fa.o: In function `rowx2':
C_arraytest.c:(.text+0x534): undefined reference to `PyArg_ParseTuple'
C_arraytest.c:(.text+0x652): undefined reference to `Py_BuildValue'
/tmp/ccoL91Fa.o: In function `rowx2_v2':
C_arraytest.c:(.text+0x67b): undefined reference to `PyArg_ParseTuple'
C_arraytest.c:(.text+0x7b5): undefined reference to `Py_BuildValue'
/tmp/ccoL91Fa.o: In function `matsq':
C_arraytest.c:(.text+0x7f3): undefined reference to `PyArg_ParseTuple'
/tmp/ccoL91Fa.o: In function `contigmat':
C_arraytest.c:(.text+0x974): undefined reference to `PyArg_ParseTuple'
/tmp/ccoL91Fa.o: In function `not_doublematrix':
C_arraytest.c:(.text+0xbd2): undefined reference to `PyExc_ValueError'
C_arraytest.c:(.text+0xbe2): undefined reference to `PyErr_SetString'
/tmp/ccoL91Fa.o: In function `intfcn1':
C_arraytest.c:(.text+0xc25): undefined reference to `PyArg_ParseTuple'
/tmp/ccoL91Fa.o: In function `not_int2Darray':
C_arraytest.c:(.text+0xf2a): undefined reference to `PyExc_ValueError'
C_arraytest.c:(.text+0xf3a): undefined reference to `PyErr_SetString'
collect2: ld returned 1 exit status

Поясните кто может чего ему не хватает

Заранее благодарю

Ответ на: комментарий от pathfinder

ну так там майна и не должно быть

это ж библиотека которая будет вызываться питоном

или я чего-то не понимаю?

SherKhan
() автор топика
Ответ на: комментарий от SherKhan

Не. А самому в лом почитать ссылку которую сам дал?

Makefile

# ---- Link --------------------------- 
_C_arraytest.so:  C_arraytest.o 
        gcc -shared C_arraytest.o -o _C_arraytest.so  

# ---- gcc C compile ------------------
C_arraytest.o:  C_arraytest.c C_arraytest.h
        gcc  -c C_arraytest.c -I/usr/include/python2.4 -I/usr/lib/python2.4/site-packages/numpy/core/include/numpy

pathfinder ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.