[egenix-users] Mac OS X compilation issues

Giovanni Luca Ciampaglia ciampagg at lu.unisi.ch
Tue Feb 27 19:17:30 CET 2007


Hello list,
I'm trying to compile psycopg on Mac OS X 10.4 on a Mac Intel machine, 
but it
seems like there's a problem with the configure script.

--------------------------------------------------------------------------------------------------------------------
this is what I get:
--------------------------------------------------------------------------------------------------------------------

jd-book-pro:~/Django/psycopg-1.1.21 giovanni$ ./configure 
--with-postgres-includes=/usr/local/pgsql/include/ 
--with-mxdatetime-includes=/Users/giovanni/Django/egenix-mx-base-2.0.6/mx/DateTime/mxDateTime/ 
--with-postgres-libraries=/usr/local/pgsql/lib/ 
checking for python... 
/Library/Frameworks/Python.framework/Versions/Current/bin/python
checking python version... 2.5
checking python installation prefix... 
/Library/Frameworks/Python.framework/Versions/2.5
checking python installation exec_prefix... 
/Library/Frameworks/Python.framework/Versions/2.5
checking definitions in Python library makefile... done
checking location of python library... $(prefix)/lib/python2.5/site-packages
checking location of python shared modules... 
$(exec_prefix)/lib/python2.5/site-packages
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking how to run the C preprocessor... gcc -E
checking whether make sets $(MAKE)... yes
checking for inline... inline
checking PostgreSQL version... 8.2
checking PostgreSQL type catalog... 
/usr/local/pgsql/include//server/catalog/pg_type.h
checking for mxDateTime.h... yes
checking for main in -lcrypt... no
checking for main in -lcrypto... yes
checking for PQconnectStart in -lpq... no
configure: error: can't build without PostgreSQL libraries

--------------------------------------------------------------------------------------------------------------------

And In config.log this is what I get

--------------------------------------------------------------------------------------------------------------------

configure:3188: checking for PQconnectStart in -lpq
configure:3218: gcc -o conftest -g -O2  -I/usr/local/pgsql/include/ 
-I/usr/local/pgsql/include//server 
-I/Users/giovanni/Django/egenix-mx-base-2.0.6/mx/DateTime/mxDateTime/ 
-L/usr/local/pgsql/lib/  -arch i386 -arch ppc -isysroot 
/Developer/SDKs/MacOSX10.4u.sdk -g  conftest.c -lpq  -lcrypto  -ldl  >&5
/usr/bin/ld: for architecture ppc
/usr/bin/ld: warning /usr/local/pgsql/lib//libpq.dylib cputype (7, 
architecture i386) does not match cputype (18) for specified -arch flag: 
ppc (file not loaded)
/usr/bin/ld: Undefined symbols:
_PQconnectStart
collect2: ld returned 1 exit status
lipo: can't open input file: /var/tmp//ccGfoqVB.out (No such file or 
directory)
configure:3224: $? = 1
configure: failed program was:
| /* confdefs.h.  */
|
| #define PACKAGE_NAME "psycopg"
| #define PACKAGE_TARNAME "psycopg"
| #define PACKAGE_VERSION "1.1.21"
| #define PACKAGE_STRING "psycopg 1.1.21"
| #define PACKAGE_BUGREPORT "psycopg at lists.initd.org"
|
| #define HAVE_LIBCRYPTO 1
| /* end confdefs.h.  */
|
| /* Override any gcc2 internal prototype to avoid an error.  */
| #ifdef __cplusplus
| extern "C"
| #endif
| /* We use char because int might match the return type of a gcc2
|    builtin and then its argument prototype would still apply.  */
| char PQconnectStart ();
| int
| main ()
| {
| PQconnectStart ();
|   ;
|   return 0;
| }
configure:3249: result: no
configure:3254: error: can't build without PostgreSQL libraries

--------------------------------------------------------------------------------------------------------------------

Why ld assumes my binary is built for ppc, and why there are both -arch 
ppc and -arch i386?
How can I get rid of -arch ppc?

Thank you for support!

--
Giovanni



More information about the egenix-users mailing list