Compiling informxidb-1.3 on python2.2?

webmaster at ac-strasbourg.fr webmaster at ac-strasbourg.fr
Fri Sep 26 05:25:25 EDT 2003


I'm trying to compile it in order to use it on Zope 2.6.1 (python
2.1.3) on a RedHat 7.3, with Informix SDK csdk280_UC21LIN. Is it
possible at least ?

I've find a few infos about it in the ng, and here's what I dit :

cd $INFORMIXDIR/lib/esql
mkdir tmp
cp libifgen.so orig_libifgen.so
cp libifgen.a tmp
cd tmp
ar x libifgen.a
gcc -shared -o libifgen.so *.o
cp libifgen.so ..
cd ..
rm -rf tmp
su - root
ldconfig

In informixdb-1.3 sources directory:
./configure
Edit ext/Makefile: change CFLAGS (line 100) to include
-I${INFORMIXDIR}/incl/esql
esql ext/_informix.ec"

and here's what I get :

/usr/informix/lib/esql/libifos.so: the use of `mktemp' is dangerous,
better use `mkstemp'
/usr/lib/gcc-lib/i386-redhat-linux/2.96/../../../crt1.o: In function
`_start':
/usr/lib/gcc-lib/i386-redhat-linux/2.96/../../../crt1.o(.text+0x18):
undefined reference to `main'
/tmp/cc3c2Xz6.o: In function `ifxdbCursor':
/tmp/cc3c2Xz6.o(.text+0x346): undefined reference to `PyObject_Init'
/tmp/cc3c2Xz6.o: In function `ifxdbCurClose':
/tmp/cc3c2Xz6.o(.text+0x5bc): undefined reference to `_Py_NoneStruct'
/tmp/cc3c2Xz6.o(.text+0x5c1): undefined reference to `_Py_NoneStruct'
/tmp/cc3c2Xz6.o: In function `ifxdbPrintError':
/tmp/cc3c2Xz6.o(.text+0x753): undefined reference to `PyErr_SetString'
/tmp/cc3c2Xz6.o: In function `ifxdbClose':
/tmp/cc3c2Xz6.o(.text+0x7e2): undefined reference to `_Py_NoneStruct'
/tmp/cc3c2Xz6.o(.text+0x7e7): undefined reference to `_Py_NoneStruct'
/tmp/cc3c2Xz6.o: In function `connectionGetAttr':
/tmp/cc3c2Xz6.o(.text+0x833): undefined reference to `Py_FindMethod'
/tmp/cc3c2Xz6.o: In function `ifxdbCommit':
/tmp/cc3c2Xz6.o(.text+0x90e): undefined reference to `_Py_NoneStruct'
/tmp/cc3c2Xz6.o(.text+0x913): undefined reference to `_Py_NoneStruct'
/tmp/cc3c2Xz6.o: In function `ifxdbRollback':
/tmp/cc3c2Xz6.o(.text+0x9aa): undefined reference to `_Py_NoneStruct'
/tmp/cc3c2Xz6.o(.text+0x9af): undefined reference to `_Py_NoneStruct'
/tmp/cc3c2Xz6.o: In function `ibindRaw':
/tmp/cc3c2Xz6.o(.text+0xbb5): undefined reference to `dbiValue'
/tmp/cc3c2Xz6.o(.text+0xbc8): undefined reference to `PyObject_Str'
/tmp/cc3c2Xz6.o: In function `ibindDate':
/tmp/cc3c2Xz6.o(.text+0xcb5): undefined reference to `dbiValue'
/tmp/cc3c2Xz6.o(.text+0xcc0): undefined reference to `PyNumber_Long'
/tmp/cc3c2Xz6.o(.text+0xcdd): undefined reference to `PyLong_AsLong'
/tmp/cc3c2Xz6.o(.text+0xd93): undefined reference to `PyErr_SetString'
/tmp/cc3c2Xz6.o: In function `ibindString':
/tmp/cc3c2Xz6.o(.text+0xdb9): undefined reference to `PyObject_Str'
/tmp/cc3c2Xz6.o(.text+0xe36): undefined reference to `PyLong_Type'
/tmp/cc3c2Xz6.o: In function `ibindFcn':
/tmp/cc3c2Xz6.o(.text+0xeb5): undefined reference to `dbiIsRaw'
/tmp/cc3c2Xz6.o(.text+0xed3): undefined reference to `dbiIsDate'
/tmp/cc3c2Xz6.o(.text+0xeeb): undefined reference to `_Py_NoneStruct'
/tmp/cc3c2Xz6.o: In function `bindInput':
/tmp/cc3c2Xz6.o(.text+0x10b4): undefined reference to `PyObject_Size'
/tmp/cc3c2Xz6.o(.text+0x1112): undefined reference to
`PySequence_GetItem'
/tmp/cc3c2Xz6.o(.text+0x1187): undefined reference to
`PyErr_SetString'
/tmp/cc3c2Xz6.o: In function `bindOutput':
/tmp/cc3c2Xz6.o(.text+0x1259): undefined reference to `PyTuple_New'
/tmp/cc3c2Xz6.o(.text+0x12d5): undefined reference to `Py_BuildValue'
/tmp/cc3c2Xz6.o: In function `ifxdbCurExec':
/tmp/cc3c2Xz6.o(.text+0x1538): undefined reference to
`PyArg_ParseTuple'
/tmp/cc3c2Xz6.o(.text+0x1828): undefined reference to `_Py_NoneStruct'
/tmp/cc3c2Xz6.o(.text+0x182d): undefined reference to `_Py_NoneStruct'
/tmp/cc3c2Xz6.o(.text+0x1839): undefined reference to
`PyEval_SaveThread'
/tmp/cc3c2Xz6.o(.text+0x187d): undefined reference to
`PyEval_RestoreThread'
/tmp/cc3c2Xz6.o(.text+0x18b3): undefined reference to `Py_BuildValue'
/tmp/cc3c2Xz6.o: In function `doCopy':
/tmp/cc3c2Xz6.o(.text+0x1a7e): undefined reference to `PyInt_FromLong'
/tmp/cc3c2Xz6.o(.text+0x1a87): undefined reference to `dbiMakeDate'
/tmp/cc3c2Xz6.o(.text+0x1aa4): undefined reference to `PyInt_FromLong'
/tmp/cc3c2Xz6.o(.text+0x1aad): undefined reference to `dbiMakeDate'
/tmp/cc3c2Xz6.o(.text+0x1b08): undefined reference to `Py_BuildValue'
/tmp/cc3c2Xz6.o(.text+0x1b20): undefined reference to
`PyFloat_FromDouble'
/tmp/cc3c2Xz6.o(.text+0x1b3c): undefined reference to
`PyFloat_FromDouble'
/tmp/cc3c2Xz6.o(.text+0x1b64): undefined reference to
`PyFloat_FromDouble'
/tmp/cc3c2Xz6.o(.text+0x1b7b): undefined reference to `PyInt_FromLong'
/tmp/cc3c2Xz6.o(.text+0x1b8d): undefined reference to `PyInt_FromLong'
/tmp/cc3c2Xz6.o(.text+0x1bba): undefined reference to
`PyString_FromStringAndSize'
/tmp/cc3c2Xz6.o(.text+0x1bc3): undefined reference to `dbiMakeRaw'
/tmp/cc3c2Xz6.o(.text+0x1bce): undefined reference to `_Py_NoneStruct'
/tmp/cc3c2Xz6.o(.text+0x1bd3): undefined reference to `_Py_NoneStruct'
/tmp/cc3c2Xz6.o: In function `processOutput':
/tmp/cc3c2Xz6.o(.text+0x1bf0): undefined reference to `PyTuple_New'
/tmp/cc3c2Xz6.o(.text+0x1c38): undefined reference to `_Py_NoneStruct'
/tmp/cc3c2Xz6.o: In function `ifxdbCurFetchOne':
/tmp/cc3c2Xz6.o(.text+0x1cb7): undefined reference to
`PyEval_SaveThread'
/tmp/cc3c2Xz6.o(.text+0x1cf8): undefined reference to
`PyEval_RestoreThread'
/tmp/cc3c2Xz6.o(.text+0x1d20): undefined reference to `_Py_NoneStruct'
/tmp/cc3c2Xz6.o(.text+0x1d25): undefined reference to `_Py_NoneStruct'
/tmp/cc3c2Xz6.o: In function `ifxdbFetchCounted':
/tmp/cc3c2Xz6.o(.text+0x1d88): undefined reference to `PyList_New'
/tmp/cc3c2Xz6.o(.text+0x1df3): undefined reference to `_Py_NoneStruct'
/tmp/cc3c2Xz6.o(.text+0x1e2e): undefined reference to `PyList_Append'
/tmp/cc3c2Xz6.o: In function `ifxdbCurFetchMany':
/tmp/cc3c2Xz6.o(.text+0x1ed5): undefined reference to
`PyArg_ParseTuple'
/tmp/cc3c2Xz6.o: In function `ifxdbCurSetInputSizes':
/tmp/cc3c2Xz6.o(.text+0x1f29): undefined reference to `_Py_NoneStruct'
/tmp/cc3c2Xz6.o(.text+0x1f2e): undefined reference to `_Py_NoneStruct'
/tmp/cc3c2Xz6.o: In function `ifxdbCurSetOutputSize':
/tmp/cc3c2Xz6.o(.text+0x1f39): undefined reference to `_Py_NoneStruct'
/tmp/cc3c2Xz6.o(.text+0x1f3e): undefined reference to `_Py_NoneStruct'
/tmp/cc3c2Xz6.o: In function `cursorGetAttr':
/tmp/cc3c2Xz6.o(.text+0x1f82): undefined reference to `_Py_NoneStruct'
/tmp/cc3c2Xz6.o(.text+0x1f87): more undefined references to
`_Py_NoneStruct' follow
/tmp/cc3c2Xz6.o: In function `cursorGetAttr':
/tmp/cc3c2Xz6.o(.text+0x1fcb): undefined reference to `Py_FindMethod'
/tmp/cc3c2Xz6.o: In function `ifxdbLogon':
/tmp/cc3c2Xz6.o(.text+0x1ff5): undefined reference to
`PyArg_ParseTuple'
/tmp/cc3c2Xz6.o(.text+0x2022): undefined reference to `PyObject_Init'
/tmp/cc3c2Xz6.o(.text+0x205a): undefined reference to
`PyEval_SaveThread'
/tmp/cc3c2Xz6.o(.text+0x2083): undefined reference to
`PyEval_RestoreThread'
/tmp/cc3c2Xz6.o: In function `init_informixdb':
/tmp/cc3c2Xz6.o(.text+0x214d): undefined reference to `Py_InitModule4'
/tmp/cc3c2Xz6.o(.text+0x2167): undefined reference to `Py_BuildValue'
/tmp/cc3c2Xz6.o(.text+0x2187): undefined reference to
`PyModule_GetDict'
/tmp/cc3c2Xz6.o(.text+0x2192): undefined reference to
`PyDict_SetItemString'
/tmp/cc3c2Xz6.o(.text+0x21cc): undefined reference to `initdbi'
/tmp/cc3c2Xz6.o(.data+0x24): undefined reference to `PyType_Type'
/tmp/cc3c2Xz6.o(.data+0xe4): undefined reference to `PyType_Type'
collect2: ld returned 1 exit status

What's wrong with this ?

Thanks




More information about the Python-list mailing list