Update: I see the exact same problem with psycopg2, an alternative python-postgresql binding.
On 9/19/07, Yang c17mswr02-at-sneakemail.com |openembedded| <...> wrote: > Hi, I'm trying to get pygresql into my image. pygresql is a Python C > module that provides bindings to Postgres. Here is my package for > pygresql (pgdb.bb): > > SECTION = "network" > DESCRIPTION = "PGDB" > LICENSE ="GPL" > PR="r1" > DEPENDS = "postgresql" > RDEPENDS = "postgresql" > SRC_URI = "ftp://ftp.pygresql.org/pub/distrib/PyGreSQL.tgz" > S = "${WORKDIR}/PyGreSQL-3.8.1" > inherit distutils > > It fails, however, with the following: > > NOTE: package pgdb-1.0: started > NOTE: package pgdb-1.0-r1: task do_compile: started > ERROR: function do_compile failed > ERROR: log data follows > (/data2/yang/oe/tmp/work/i486-linux/pgdb-1.0-r1/temp/log.do_compile.32140) > | sh: pg_config: command not found > | Traceback (most recent call last): > | File "setup.py", line 81, in <module> > | pg_include_dir = pg_config('includedir') > | File "setup.py", line 51, in pg_config > | raise Exception, "pg_config tool is not available." > | Exception: pg_config tool is not available. > | FATAL: python setup.py build_ext execution failed. > NOTE: Task failed: > /data2/yang/oe/tmp/work/i486-linux/pgdb-1.0-r1/temp/log.do_compile.32140 > > This is because pygresql's setup.py runs 'pg_config' to get > information about the postgresql installation. I see pg_config in the > following places under tmp/: > > ./work/i486-linux/postgresql-8.2.4-r0/postgresql-8.2.4/src/bin/pg_config > ./work/i486-linux/postgresql-8.2.4-r0/postgresql-8.2.4/src/bin/pg_config/pg_config > ./work/i486-linux/postgresql-8.2.4-r0/install/postgresql-dbg/usr/bin/.debug/pg_config > ./work/i486-linux/postgresql-8.2.4-r0/install/postgresql/usr/bin/pg_config > ./rootfs/usr/bin/pg_config > > I'm not sure how to make this visible to the distutil class' > do_compile(). So that's the first problem. > > The second (potential) problem: later on down the line the build > process will also require the postgres development headers (eg > postgres.h). These are only available at the following locations: > > ./work/i486-linux/postgresql-8.1.8-r0/postgresql-8.1.8/src/include/postgres.h > ./work/i486-linux/postgresql-8.2.4-r0/postgresql-8.2.4/src/include/postgres.h > ./work/i486-linux/postgresql-8.2.4-r0/install/postgresql-dev/usr/include/postgresql/server/postgres.h > ./work/i486-linux/pgdb-1.0-r1/PyGreSQL-3.8.1/include/postgres.h > > I have no idea how that last instance of postgres.h got there; it was > not part of the original PyGreSql.tgz, and when I build on my host > machine, an include directory is never created. If this is all a sign > that finding the headers won't be a problem down the line, then great > - otherwise, how do I ensure that the headers are visible (like > pg_config)? > > Any guidance would be tremendously appreciated. Thanks a lot! > > Yang > > _______________________________________________ > Openembedded-users mailing list > [email protected] > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-users > _______________________________________________ Openembedded-users mailing list [email protected] http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-users
