Re: 9.0Beta2 Build on Mac (64 bit) of pg_upgrade fails with duplicate symbols

Lists: pgsql-testers
From: Chris Ruprecht <chrrup(at)gmail(dot)com>
To: pgsql-testers(at)postgresql(dot)org
Subject: 9.0Beta2 Build on Mac (64 bit) of pg_upgrade fails with duplicate symbols
Date: 2010-06-09 19:03:26
Message-ID: 324A21D0-CC16-4C38-9582-01ED132BBED2@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-testers

I'm building the contrib modules and get this:

gcc -no-cpp-precomp -O3 -fno-common -arch x86_64 -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -fno-strict-aliasing -fwrapv check.o controldata.o dump.o exec.o file.o function.o info.o option.o page.o pg_upgrade.o relfilenode.o server.o tablespace.o util.o version.o version_old_8_3.o -L../../src/port -lpgport -L../../src/interfaces/libpq -lpq -L../../src/port -O3 -fno-common -arch x86_64 -Wl,-dead_strip_dylibs -lpgport -lpam -lssl -lcrypto -lgssapi_krb5 -lz -lreadline -lm -o pg_upgrade
ld: duplicate symbol _scandir_file_pattern in controldata.o and check.o

My configure script looks like:

export MACOSX_DEPLOYMENT_TARGET=10.6
export CC=gcc
export CPP="gcc -E"
export CXX=g++
export CXXFLAGS='-O3 -fno-common -arch x86_64'
export CFLAGS='-O3 -fno-common -arch x86_64'
export LDFLAGS='-O3 -fno-common -arch x86_64'

./configure \
--prefix=/usr \
--enable-integer-datetimes \
--with-tcl \
--with-perl \
--with-python \
--with-gssapi \
--with-krb5 \
--with-pam \
--with-ldap \
--with-bonjour \
--with-openssl \
--with-zlib

make of the normal sources worked.
But
cd contrib
make
resulted in the error above.

best regards,
chris
--
chris ruprecht
specialist in obscure details


From: Josh Berkus <josh(at)agliodbs(dot)com>
To: Chris Ruprecht <chrrup(at)gmail(dot)com>
Cc: pgsql-testers(at)postgresql(dot)org
Subject: Re: 9.0Beta2 Build on Mac (64 bit) of pg_upgrade fails with duplicate symbols
Date: 2010-06-14 23:00:56
Message-ID: 4C16B4A8.5010602@agliodbs.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-testers


> make of the normal sources worked.
> But
> cd contrib
> make
> resulted in the error above.

cd contrib, or cd contrib/pg_upgrade?

--
-- Josh Berkus
PostgreSQL Experts Inc.
http://www.pgexperts.com


From: Bruce Momjian <bruce(at)momjian(dot)us>
To: Chris Ruprecht <chrrup(at)gmail(dot)com>
Cc: pgsql-testers(at)postgresql(dot)org
Subject: Re: 9.0Beta2 Build on Mac (64 bit) of pg_upgrade fails with duplicate symbols
Date: 2010-06-15 02:12:29
Message-ID: 201006150212.o5F2CTb08070@momjian.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-testers

Chris Ruprecht wrote:
> I'm building the contrib modules and get this:
>
> gcc -no-cpp-precomp -O3 -fno-common -arch x86_64 -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -fno-strict-aliasing -fwrapv check.o controldata.o dump.o exec.o file.o function.o info.o option.o page.o pg_upgrade.o relfilenode.o server.o tablespace.o util.o version.o version_old_8_3.o -L../../src/port -lpgport -L../../src/interfaces/libpq -lpq -L../../src/port -O3 -fno-common -arch x86_64 -Wl,-dead_strip_dylibs -lpgport -lpam -lssl -lcrypto -lgssapi_krb5 -lz -lreadline -lm -o pg_upgrade
> ld: duplicate symbol _scandir_file_pattern in controldata.o and check.o

Oops. That global variable was not properly defined; not sure why none
of the other compilers caught that bug. Anyway, the attached patch
should fix your problem, and will appear in 9.0 beta3. Thanks for the
report.

--
Bruce Momjian <bruce(at)momjian(dot)us> http://momjian.us
EnterpriseDB http://enterprisedb.com

+ None of us is going to be here forever. +

Attachment Content-Type Size
/rtmp/diff text/x-diff 1.2 KB

From: Chris Ruprecht <chrrup(at)gmail(dot)com>
To: Bruce Momjian <bruce(at)momjian(dot)us>, Josh Berkus <josh(at)agliodbs(dot)com>
Cc: pgsql-testers(at)postgresql(dot)org
Subject: Re: 9.0Beta2 Build on Mac (64 bit) of pg_upgrade fails with duplicate symbols
Date: 2010-06-15 07:13:13
Message-ID: 0B84FDF1-88BF-4257-80BB-9881469B4B28@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-testers

Sorry for the late reply Josh, but apparently, Bruce already has a fix for the issue - Thanks Bruce!!
Thanks a bunch, I'll put the patch in when I get back home on Saturday.

.... if only my commercial RDBMS provider had turn-around times like you guys ....

best regards,
chris
--
chris ruprecht
specialist in obscure details

On Jun 14, 2010, at 22:12 , Bruce Momjian wrote:

> Chris Ruprecht wrote:
>> I'm building the contrib modules and get this:
>>
>> gcc -no-cpp-precomp -O3 -fno-common -arch x86_64 -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -fno-strict-aliasing -fwrapv check.o controldata.o dump.o exec.o file.o function.o info.o option.o page.o pg_upgrade.o relfilenode.o server.o tablespace.o util.o version.o version_old_8_3.o -L../../src/port -lpgport -L../../src/interfaces/libpq -lpq -L../../src/port -O3 -fno-common -arch x86_64 -Wl,-dead_strip_dylibs -lpgport -lpam -lssl -lcrypto -lgssapi_krb5 -lz -lreadline -lm -o pg_upgrade
>> ld: duplicate symbol _scandir_file_pattern in controldata.o and check.o
>
> Oops. That global variable was not properly defined; not sure why none
> of the other compilers caught that bug. Anyway, the attached patch
> should fix your problem, and will appear in 9.0 beta3. Thanks for the
> report.
>
> --
> Bruce Momjian <bruce(at)momjian(dot)us> http://momjian.us
> EnterpriseDB http://enterprisedb.com
>
> + None of us is going to be here forever. +
> Index: contrib/pg_upgrade/pg_upgrade.h
> ===================================================================
> RCS file: /cvsroot/pgsql/contrib/pg_upgrade/pg_upgrade.h,v
> retrieving revision 1.7
> diff -c -c -r1.7 pg_upgrade.h
> *** contrib/pg_upgrade/pg_upgrade.h 12 Jun 2010 17:45:28 -0000 1.7
> --- contrib/pg_upgrade/pg_upgrade.h 15 Jun 2010 02:01:48 -0000
> ***************
> *** 237,243 ****
> /*
> * Global variables
> */
> ! char scandir_file_pattern[MAXPGPATH];
>
>
> /* check.c */
> --- 237,243 ----
> /*
> * Global variables
> */
> ! extern char scandir_file_pattern[];
>
>
> /* check.c */
> Index: contrib/pg_upgrade/relfilenode.c
> ===================================================================
> RCS file: /cvsroot/pgsql/contrib/pg_upgrade/relfilenode.c,v
> retrieving revision 1.3
> diff -c -c -r1.3 relfilenode.c
> *** contrib/pg_upgrade/relfilenode.c 13 May 2010 22:51:00 -0000 1.3
> --- contrib/pg_upgrade/relfilenode.c 15 Jun 2010 02:01:48 -0000
> ***************
> *** 17,22 ****
> --- 17,25 ----
> const char *oldnspname, const char *oldrelname,
> const char *newnspname, const char *newrelname);
>
> + /* used by scandir(), must be global */
> + char scandir_file_pattern[MAXPGPATH];
> +
> /*
> * transfer_all_new_dbs()
> *