[oe-users] (Somewhat urgent) build problem
Yang
c17mswr02 at sneakemail.com
Thu Sep 20 00:48:21 UTC 2007
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
> Openembedded-users at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-users
>
More information about the Openembedded-users
mailing list