Skip site navigation (1) Skip section navigation (2)

Re: Git Trunk Build Issue

From: Dave Page <dpage(at)pgadmin(dot)org>
To: "Strauch, Sheldon" <SStrauch(at)enovafinancial(dot)com>
Cc: "pgadmin-hackers(at)postgresql(dot)org" <pgadmin-hackers(at)postgresql(dot)org>
Subject: Re: Git Trunk Build Issue
Date: 2011-11-10 09:13:20
Message-ID: CA+OCxowCTLd+9ZeQ6-SeyNBua0cHG2_3c7g33Je8yu5F5yoosw@mail.gmail.com (view raw or flat)
Thread:
Lists: pgadmin-hackers
Hi,

On Wed, Nov 9, 2011 at 5:59 PM, Strauch, Sheldon
<SStrauch(at)enovafinancial(dot)com> wrote:
> I was hoping to demo some of pgAdmin's upcoming E-R features to my PUG next week, but have had considerable issue trying to build a functioning image. I was hoping someone might be able to set me on the right path...
>
> My latest issue is that configure does not seem to respect the --with-arch-i386 switch (see next paragraph); x86_64 being the default build architecture on OSX Snow Leopard. I'v completely rebuilt my dependency tree as i386 because wxWidgets 10.8 is not available and, according the the wxWidgets documentation at ttp://wiki.wxwidgets.org/Development:_wxMac#Building_under_10.6_Snow_Leopard cannot (or perhaps should not) be built for x86_64: "If you want 64-bit wxWidgets on OS X you'll need 2.9+ and configure -with-osx_cocoa" I have the newer wxWidgets 2.9.2 r1 available, which I can build for x86_64, but configure expects 2.8. I'll gladly rebuild my entire dependency tree for x86_64 using wxWidgets 2.9.2 r1 if we believe this will work, but I was rather concerned about moving up the wxWidgets food chain without a better understanding of how that might break pgAdmin.
>
> What causes me to think that configure is not respecting the --with-arch-i386 switch is around line 510 of the attached configure.log:
>
>  configure:5573: gcc -o conftest -g -O2   -L/opt/local/lib/postgresql91 -lssl conftest.c -lpq   >&5
>  ld: warning: in /opt/local/lib/postgresql91/libpq.dylib, file was built for i386 which is not the architecture being linked (x86_64)
>  Undefined symbols:
>    "_PQexec", referenced from:
>        _main in cc1oqlty.o
>  ld: symbol(s) not found
>
> Not being a bash or autoconf expert by any means, I was not able to interpret where the call to gcc was made from inside ac_fn_c_try_link or whether the i386 architecture switch made it into that call.

Yes, it looks like you're right. One or more of the configure tests
aren't respecting the flag, which causes configure to fail. I'll need
to look into that, but unfortunately don't have time right now.

The good news is that if you configure against a build of PostgreSQL
which includes x86_64 support, configure will run OK, and the
resulting build does respect the flag so you get a 32bit pgAdmin. I
use the attached script to build PG as a universal binary - you should
be able to to tweak it pretty easily for your system.


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

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

Attachment: build-pg
Description: application/octet-stream (2.3 KB)

In response to

pgadmin-hackers by date

Next:From: Wander WinkelhorstDate: 2011-11-10 21:51:28
Subject: Re: [PATCH] Improve autocompletion for SELECT statements
Previous:From: Strauch, SheldonDate: 2011-11-09 17:59:08
Subject: Git Trunk Build Issue

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group