Snow Leopard and plpython problem

From: Jerry LeVan <jerry(dot)levan(at)eku(dot)edu>
To: "pgsql-general(at)postgresql(dot)org general" <pgsql-general(at)postgresql(dot)org>
Subject: Snow Leopard and plpython problem
Date: 2009-09-03 14:38:34
Message-ID: A1371B4D-A897-451F-9A43-E4E130E7C1BB@eku.edu
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi I am having a problem building Postgresql 8.4.0 in Snow Leopard.

I cannot get plpython to build...

I have installed MacPython 2.6.2 in /Library/Frameworks/Python.framework

The binary:

mbp:postgresql-8.4.0 postgres$ which python
/Library/Frameworks/Python.framework/Versions/Current/bin/python

mbp:postgresql-8.4.0 postgres$ file `which python`
/Library/Frameworks/Python.framework/Versions/Current/bin/python: Mach-
O universal binary with 2 architectures
/Library/Frameworks/Python.framework/Versions/Current/bin/python (for
architecture ppc): Mach-O executable ppc
/Library/Frameworks/Python.framework/Versions/Current/bin/python (for
architecture i386): Mach-O executable i386

mbp:postgresql-8.4.0 postgres$ echo $PATH
/Library/Frameworks/Python.framework/Versions/Current/bin:/usr/bin:/
bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin
mbp:postgresql-8.4.0 postgres$ python
Python 2.6.2 (r262:71600, Apr 16 2009, 09:17:39)
[GCC 4.0.1 (Apple Computer, Inc. build 5250)] on darwin
Type "help", "copyright", "credits" or "license" for more information

I use the following config params:

mbp:postgresql-8.4.0 postgres$ cat configJHL
./configure --bindir=/usr/local/bin --mandir=/usr/local/share/man \
--enable-thread-safety \
--with-python \
--with-perl --with-tcl \
--with-libedit-preferred \
--with-openssl --with-bonjour

Configure completes ok.

When I do a "make 2>mylog.log"

The build fails on
gcc -no-cpp-precomp -O2 -Wall -Wmissing-prototypes -Wpointer-arith -
Wdeclaration-after-statement
-Wendif-labels -fno-strict-aliasing -fwrapv -bundle -multiply_defined
suppress plpython.o
-bundle_loader ../../../src/backend/postgres -L../../../src/port -
framework Python -o plpython.so

The contents of mylog.log are:
postmaster.c: In function ‘PostmasterMain’:
postmaster.c:859: warning: ‘DNSServiceRegistrationCreate’ is
deprecated (declared at /usr/include/DNSServiceDiscovery/
DNSServiceDiscovery.h:139)
pgc.c:4363: warning: ‘yy_flex_realloc’ defined but not used
ld: warning: in ../../../src/backend/postgres, file is not of required
architecture
ld: warning: in plperl.o, file is not of required architecture
ld: warning: in spi_internal.o, file is not of required architecture
ld: warning: in SPI.o, file is not of required architecture
ld: warning: in ../../../src/backend/postgres, file is not of required
architecture
ld: warning: in plperl.o, file is not of required architecture
ld: warning: in spi_internal.o, file is not of required architecture
ld: warning: in SPI.o, file is not of required architecture
ld: warning: in /Library/Frameworks//Python.framework/Python, missing
required architecture x86_64 in file
Undefined symbols:
"_PyDict_DelItemString", referenced from:
_PLy_function_delete_args in plpython.o
"_PyIter_Next", referenced from:
_PLy_function_handler in plpython.o
"_PyFloat_FromDouble", referenced from:
_PLyFloat_FromString in plpython.o
"_PyErr_Fetch", referenced from:
_PLy_elog in plpython.o
"_PyErr_NewException", referenced from:
__PG_init in plpython.o
__PG_init in plpython.o
__PG_init in plpython.o
"_PyErr_GivenExceptionMatches", referenced from:
_PLy_elog in plpython.o
_PLy_elog in plpython.o
"_PyDict_GetItemString", referenced from:
_PLy_modify_tuple in plpython.o
_PLy_procedure_get in plpython.o
"_Py_Initialize", referenced from:
__PG_init in plpython.o
"_PyArg_ParseTuple", referenced from:
_PLy_plan_status in plpython.o
_PLy_spi_prepare in plpython.o
_PLy_spi_execute in plpython.o
_PLy_spi_execute in plpython.o
"_PyList_New", referenced from:
_PLy_trigger_build_args in plpython.o
_PLy_function_build_args in plpython.o
_PLy_spi_execute_fetch_result in plpython.o
_PLy_spi_execute_fetch_result in plpython.o
"_PyCObject_FromVoidPtr", referenced from:
_PLy_procedure_create in plpython.o
"_PyRun_StringFlags", referenced from:
_PLy_procedure_create in plpython.o
"_PyDict_GetItem", referenced from:
_PLy_modify_tuple in plpython.o
"_PyObject_GetIter", referenced from:
_PLy_function_handler in plpython.o
"_PySequence_Check", referenced from:
_PLy_function_handler in plpython.o
_PLy_spi_prepare in plpython.o
_PLy_spi_execute_plan in plpython.o
"_PyMapping_GetItemString", referenced from:
_PLyMapping_ToTuple in plpython.o
"_PySequence_Size", referenced from:
_PLySequence_ToTuple in plpython.o
_PLy_spi_prepare in plpython.o
_PLy_spi_execute_plan in plpython.o
"_PyErr_NormalizeException", referenced from:
_PLy_elog in plpython.o
"_PySequence_GetItem", referenced from:
_PLySequence_ToTuple in plpython.o
_PLy_spi_prepare in plpython.o
_PLy_spi_execute_plan in plpython.o
"_PyObject_GetAttrString", referenced from:
_PLyObject_ToTuple in plpython.o
"_PyBool_FromLong", referenced from:
_PLyBool_FromString in plpython.o
_PLyBool_FromString in plpython.o
"_PyObject_Str", referenced from:
_PLy_elog in plpython.o
_PLy_elog in plpython.o
_PLy_modify_tuple in plpython.o
_PLySequence_ToTuple in plpython.o
_PLyMapping_ToTuple in plpython.o
_PLyObject_ToTuple in plpython.o
_PLy_function_handler in plpython.o
_PLy_output in plpython.o
_PLy_spi_execute_plan in plpython.o
_PLy_spi_execute_plan in plpython.o
"_PyDict_SetItemString", referenced from:
__PG_init in plpython.o
__PG_init in plpython.o
__PG_init in plpython.o
__PG_init in plpython.o
__PG_init in plpython.o
_PLyDict_FromTuple in plpython.o
_PLyDict_FromTuple in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_procedure_call in plpython.o
_PLy_procedure_create in plpython.o
_PLy_procedure_create in plpython.o
_PLy_function_build_args in plpython.o
"_PyObject_Init", referenced from:
_PLy_spi_prepare in plpython.o
_PLy_spi_execute_fetch_result in plpython.o
"_PyCObject_AsVoidPtr", referenced from:
_PLy_procedure_get in plpython.o
"_PyErr_SetString", referenced from:
_PLy_exception_set_plural in plpython.o
_PLy_exception_set in plpython.o
_PLy_output in plpython.o
"_PyCObject_Type", referenced from:
_PLy_procedure_get in plpython.o
"_PyLong_FromString", referenced from:
_PLyLong_FromString in plpython.o
"_PyString_FromString", referenced from:
_PLyString_FromString in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
"_PyString_AsString", referenced from:
_PLy_elog in plpython.o
_PLy_elog in plpython.o
_PLy_modify_tuple in plpython.o
_PLy_modify_tuple in plpython.o
_PLy_modify_tuple in plpython.o
_PLy_trigger_handler in plpython.o
_PLySequence_ToTuple in plpython.o
_PLyMapping_ToTuple in plpython.o
_PLyObject_ToTuple in plpython.o
_PLy_function_handler in plpython.o
_PLy_spi_prepare in plpython.o
_PLy_output in plpython.o
_PLy_spi_execute_plan in plpython.o
_PLy_spi_execute_plan in plpython.o
"_PyImport_AddModule", referenced from:
__PG_init in plpython.o
__PG_init in plpython.o
__PG_init in plpython.o
"_PyErr_Clear", referenced from:
_plpython_call_handler in plpython.o
_PLy_spi_execute in plpython.o
"_Py_InitModule4_64", referenced from:
__PG_init in plpython.o
"_PyObject_Malloc", referenced from:
_PLy_spi_prepare in plpython.o
_PLy_spi_execute_fetch_result in plpython.o
"_PyList_GetSlice", referenced from:
_PLy_result_slice in plpython.o
"_PyList_SetSlice", referenced from:
_PLy_result_ass_slice in plpython.o
"__Py_TrueStruct", referenced from:
_PLy_plan_status in plpython.o
"_Py_CompileStringFlags", referenced from:
_PLy_procedure_create in plpython.o
"_PyList_Size", referenced from:
_PLy_result_length in plpython.o
_PLy_modify_tuple in plpython.o
"_PyModule_GetDict", referenced from:
__PG_init in plpython.o
__PG_init in plpython.o
__PG_init in plpython.o
"_PyInt_FromLong", referenced from:
_PLyInt_FromString in plpython.o
_PLy_spi_execute_fetch_result in plpython.o
_PLy_spi_execute_fetch_result in plpython.o
_PLy_spi_execute_fetch_result in plpython.o
_PLy_spi_execute_fetch_result in plpython.o
"_PyDict_Copy", referenced from:
_PLy_procedure_create in plpython.o
"_PyErr_Occurred", referenced from:
__PG_init in plpython.o
__PG_init in plpython.o
__PG_init in plpython.o
__PG_init in plpython.o
_PLy_procedure_call in plpython.o
_PLy_procedure_create in plpython.o
_PLy_procedure_create in plpython.o
_PLy_function_handler in plpython.o
_PLy_spi_prepare in plpython.o
_PLy_spi_execute_fetch_result in plpython.o
_PLy_spi_execute_plan in plpython.o
_PLy_spi_execute_query in plpython.o
"_PyDict_Keys", referenced from:
_PLy_modify_tuple in plpython.o
"_PyList_GetItem", referenced from:
_PLy_result_item in plpython.o
_PLy_modify_tuple in plpython.o
"_PyList_SetItem", referenced from:
_PLy_result_ass_item in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_function_build_args in plpython.o
_PLy_spi_execute_fetch_result in plpython.o
"_PyType_Ready", referenced from:
__PG_init in plpython.o
__PG_init in plpython.o
"_PyEval_EvalCode", referenced from:
_PLy_procedure_call in plpython.o
"_PyDict_New", referenced from:
__PG_init in plpython.o
__PG_init in plpython.o
_PLyDict_FromTuple in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_procedure_create in plpython.o
"_Py_FindMethod", referenced from:
_PLy_result_getattr in plpython.o
_PLy_plan_getattr in plpython.o
"__Py_NoneStruct", referenced from:
_PLyDict_FromTuple in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_trigger_build_args in plpython.o
_PLy_modify_tuple in plpython.o
_PLy_trigger_handler in plpython.o
_PLy_function_build_args in plpython.o
_PLySequence_ToTuple in plpython.o
_PLyMapping_ToTuple in plpython.o
_PLyObject_ToTuple in plpython.o
_PLy_function_handler in plpython.o
_PLy_function_handler in plpython.o
_PLy_output in plpython.o
_PLy_spi_execute_fetch_result in plpython.o
_PLy_spi_execute_plan in plpython.o
"_PyMapping_Check", referenced from:
_PLy_function_handler in plpython.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
make[3]: *** [plpython.so] Error 1
make[2]: *** [all] Error 2
make[1]: *** [all] Error 2
make: *** [all] Error 2
mbp:postgresql-8.4.0 postgres$
***********************************************
If I change my PATH:

mbp:postgresql-8.4.0 postgres$ echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin

This will cause the 2.6.1 Snow Leopard version of python to be used.
mbp:postgresql-8.4.0 postgres$ python
Python 2.6.1 (r261:67515, Jul 7 2009, 23:51:51)
[GCC 4.2.1 (Apple Inc. build 5646)] on darwin
Type "help", "copyright", "credits" or "license" for more information.

Doing a make clean and a rm config.status and starting over results in
the identical Python errors.

Does plpython not work with python2.6.x ?

Thanks,

Jerry

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Emanuel Calvo Franco 2009-09-03 14:45:12 Re: Snow Leopard and plpython problem
Previous Message Emanuel Calvo Franco 2009-09-03 14:38:28 Re: PostgreSQL Live CD based on CentOS 5.3 and PG 8.4 released