Thread: pgagent compilation

pgagent compilation

From
Dominique Guardiola
Date:
Hello

I have an issue with pgagent compilation under Ubuntu 10.10
Kernel 2.6.32-xenU-3831-x86_64

I had a working pgAgent on aither servern but it was 32bit so the Linux Binary worked at the time
with this new 64 bits server, I had to go through the compilationprocess

Trying to follow the requirements was not easy, the README only says :
"A wxWidgets 2.8.x installation, configured per the requirements for pgAdmin"
the next link is broken, but following what I found here :

http://git.postgresql.org/gitweb/?p=pgadmin3.git;a=blob_plain;f=INSTALL;hb=HEAD

I ran the xtra/wx-build/build-wxgtk script from pgadmin
and then it allowed me to run the cmake/ccmake command in the pgAgent source

The resulting config looks good :

Configuration summary:
--
--   Project                     : pgagent
--   Description                 : pgAgent is a job scheduling engine for PostgreSQL
--   Version                     : 3.0.1
--
--   PostgreSQL version          : PostgreSQL 8.4.7
--   PostgreSQL path             : /usr
--   PostgreSQL config binary    : /usr/bin/pg_config
--   PostgreSQL include path     : /usr/include/postgresql
--   PostgreSQL library path     : /usr/lib
--
--   wxWidgets version           : 2.8.12
--   wxWidgets path              : /usr/local
--   wxWidgets config binary     : /usr/local/bin/wx-config
--   wxWidgets Static linking    : YES
--   wxWidgets Debug?            : NO

But make throws up errors that I cannot decode :

# make
Scanning dependencies of target pgagent
[ 14%] Building CXX object CMakeFiles/pgagent.dir/pgAgent.cpp.o
[ 28%] Building CXX object CMakeFiles/pgagent.dir/misc.cpp.o
[ 42%] Building CXX object CMakeFiles/pgagent.dir/unix.cpp.o
[ 57%] Building CXX object CMakeFiles/pgagent.dir/connection.cpp.o
[ 71%] Building CXX object CMakeFiles/pgagent.dir/job.cpp.o
[ 85%] Building CXX object CMakeFiles/pgagent.dir/precomp.cpp.o
[100%] Building CXX object CMakeFiles/pgagent.dir/win32.cpp.o
Linking CXX executable pgagent
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-connect.o): In function `parseServiceInfo':
(.text+0x103f): undefined reference to `ldap_init'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-connect.o): In function `parseServiceInfo':
(.text+0x1057): undefined reference to `ldap_simple_bind'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-connect.o): In function `parseServiceInfo':
(.text+0x1085): undefined reference to `ldap_result'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-connect.o): In function `parseServiceInfo':
(.text+0x10a4): undefined reference to `ldap_msgfree'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-connect.o): In function `parseServiceInfo':
(.text+0x10e7): undefined reference to `ldap_search_st'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-connect.o): In function `parseServiceInfo':
(.text+0x1100): undefined reference to `ldap_msgfree'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-connect.o): In function `parseServiceInfo':
(.text+0x1108): undefined reference to `ldap_err2string'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-connect.o): In function `parseServiceInfo':
(.text+0x1131): undefined reference to `ldap_unbind'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-connect.o): In function `parseServiceInfo':
(.text+0x1150): undefined reference to `ldap_count_entries'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-connect.o): In function `parseServiceInfo':
(.text+0x1189): undefined reference to `ldap_msgfree'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-connect.o): In function `parseServiceInfo':
(.text+0x1191): undefined reference to `ldap_unbind'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-connect.o): In function `parseServiceInfo':
(.text+0x11b2): undefined reference to `ldap_msgfree'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-connect.o): In function `parseServiceInfo':
(.text+0x11c4): undefined reference to `ldap_unbind'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-connect.o): In function `parseServiceInfo':
(.text+0x1214): undefined reference to `ldap_first_entry'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-connect.o): In function `parseServiceInfo':
(.text+0x1237): undefined reference to `ldap_get_values_len'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-connect.o): In function `parseServiceInfo':
(.text+0x1250): undefined reference to `ldap_msgfree'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-connect.o): In function `parseServiceInfo':
(.text+0x1334): undefined reference to `ldap_value_free_len'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-connect.o): In function `parseServiceInfo':
(.text+0x1342): undefined reference to `ldap_unbind'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-connect.o): In function `parseServiceInfo':
(.text+0x13a6): undefined reference to `ldap_value_free_len'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-connect.o): In function `parseServiceInfo':
(.text+0x13ae): undefined reference to `ldap_unbind'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-connect.o): In function `closePGconn':
(.text+0x22ba): undefined reference to `gss_delete_sec_context'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-connect.o): In function `closePGconn':
(.text+0x22d5): undefined reference to `gss_release_name'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-connect.o): In function `closePGconn':
(.text+0x22fa): undefined reference to `gss_release_buffer'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-connect.o): In function `closePGconn':
(.text+0x2315): undefined reference to `gss_release_buffer'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-auth.o): In function `pg_GSS_error_int':
(.text+0x634): undefined reference to `gss_display_status'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-auth.o): In function `pg_GSS_error_int':
(.text+0x658): undefined reference to `gss_release_buffer'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-auth.o): In function `pg_GSS_continue':
(.text+0x783): undefined reference to `gss_init_sec_context'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-auth.o): In function `pg_GSS_continue':
(.text+0x7e6): undefined reference to `gss_release_buffer'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-auth.o): In function `pg_GSS_continue':
(.text+0x802): undefined reference to `gss_release_name'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-auth.o): In function `pg_GSS_continue':
(.text+0x82f): undefined reference to `gss_release_buffer'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-auth.o): In function `pg_GSS_continue':
(.text+0x86b): undefined reference to `gss_release_name'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-auth.o): In function `pg_GSS_continue':
(.text+0x887): undefined reference to `gss_delete_sec_context'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-auth.o): In function `pg_fe_sendauth':
(.text+0xa97): undefined reference to `GSS_C_NT_HOSTBASED_SERVICE'
/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-auth.o): In function `pg_fe_sendauth':
(.text+0xab0): undefined reference to `gss_import_name'
collect2: ld returned 1 exit status
make[2]: *** [pgagent] Error 1
make[1]: *** [CMakeFiles/pgagent.dir/all] Error 2
make: *** [all] Error 2



Could someone help me here ?
thanks



--
Dominique Guardiola, QUINODE
• http://www.quinode.fr/
• Tel : 04.27.86.84.37
• Mob : 06.15.13.22.27







Re: pgagent compilation

From
Dave Page
Date:
Hi

On Mon, Sep 5, 2011 at 1:46 PM, Dominique Guardiola
<dguardiola@quinode.fr> wrote:
>
> The resulting config looks good :
>
> Configuration summary:
> --
> --   Project                     : pgagent
> --   Description                 : pgAgent is a job scheduling engine for PostgreSQL
> --   Version                     : 3.0.1
> --
> --   PostgreSQL version          : PostgreSQL 8.4.7
> --   PostgreSQL path             : /usr
> --   PostgreSQL config binary    : /usr/bin/pg_config
> --   PostgreSQL include path     : /usr/include/postgresql
> --   PostgreSQL library path     : /usr/lib
> --
> --   wxWidgets version           : 2.8.12
> --   wxWidgets path              : /usr/local
> --   wxWidgets config binary     : /usr/local/bin/wx-config
> --   wxWidgets Static linking    : YES
> --   wxWidgets Debug?            : NO
>
> But make throws up errors that I cannot decode :
>
> # make
> Scanning dependencies of target pgagent
> [ 14%] Building CXX object CMakeFiles/pgagent.dir/pgAgent.cpp.o
> [ 28%] Building CXX object CMakeFiles/pgagent.dir/misc.cpp.o
> [ 42%] Building CXX object CMakeFiles/pgagent.dir/unix.cpp.o
> [ 57%] Building CXX object CMakeFiles/pgagent.dir/connection.cpp.o
> [ 71%] Building CXX object CMakeFiles/pgagent.dir/job.cpp.o
> [ 85%] Building CXX object CMakeFiles/pgagent.dir/precomp.cpp.o
> [100%] Building CXX object CMakeFiles/pgagent.dir/win32.cpp.o
> Linking CXX executable pgagent
> /usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/libpq.a(fe-connect.o): In function `parseServiceInfo':
> (.text+0x103f): undefined reference to `ldap_init'

<snip>

Try a dynamically linked build instead of static. It looks like the
packages you're using have LDAP and MIT Kerberos support compiled in,
which the static build of pgAgent (which is rarely used) doesn't
support.

--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


Re: pgagent compilation

From
Dominique Guardiola
Date:
Le 5 sept. 2011 à 15:01, Dave Page a écrit :

> Try a dynamically linked build instead of static. It looks like the
> packages you're using have LDAP and MIT Kerberos support compiled in,
> which the static build of pgAgent (which is rarely used) doesn't
> support.

Great, I turned STATIC ON and the compilation worked flawlessly
My pgagent is now up and running

Thanks Dave!


--
Dominique Guardiola, QUINODE
• http://www.quinode.fr/
• Tel : 04.27.86.84.37
• Mob : 06.15.13.22.27