Thread: mac os x compile failure
I'm trying to compile postgres 8.1.2 on OS X 10.2.8. Unfortunately I'm not much of a compile-your-own guy, and I've hit a compile error that's beyond my improvisation abilities, and gets no google hits either. I realize this also an OS X expert thing: I'm also seeking help on one of the apple.com lists as well. I installed the December 2002 xcode package of developer stuff from apple, which seemed to be the last one that was for OS X 10.2. Initially I only installed the parts called BSDSDK and Developer Tools Software. The postgres configure utility ran through fine. I ran make. Several minutes into it, I got a missing header file for osx installed version constants. So I then installed the xcode part called Mac OS X SDK. I ran make again. Now, further in, I get the following output and error (note the "make -C file SUBSYS.o" is output, not my initial command which was just "make" in the directory at the top of the postgres source). make -C file SUBSYS.o gcc -no-cpp-precomp -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Winline -fno-strict-aliasing -I../../../../src/include -I/sw/include -c -o fd.o fd.c fd.c: In function `pg_fsync_writethrough': fd.c:271: `F_FULLFSYNC' undeclared (first use in this function) fd.c:271: (Each undeclared identifier is reported only once fd.c:271: for each function it appears in.) make[4]: *** [fd.o] Error 1 make[3]: *** [file-recursive] Error 2 make[2]: *** [storage-recursive] Error 2 make[1]: *** [all] Error 2 make: *** [all] Error 2 Searching, I couldn't find anything useful on the F_FULLFSYNC constant, and no reports on a similar failure. Any ideas? (Help!) Thanks, Neil __________________________________________________________ Find your next car at http://autos.yahoo.ca
Neil Brandt wrote: > I'm trying to compile postgres 8.1.2 on OS X 10.2.8. Unfortunately I'm not much of a > compile-your-own guy, and I've hit a compile error that's beyond my improvisation abilities, and > gets no google hits either. > Make your life easy. Use Darwin ports: http://darwinports.opendarwin.org/ -- The PostgreSQL Company - Command Prompt, Inc. 1.503.667.4564 PostgreSQL Replication, Consulting, Custom Development, 24x7 support Managed Services, Shared and Dedicated Hosting Co-Authors: PLphp, PLperl - http://www.commandprompt.com/
Neil Brandt <far_neil@yahoo.ca> writes: > fd.c: In function `pg_fsync_writethrough': > fd.c:271: `F_FULLFSYNC' undeclared (first use in this function) > fd.c:271: (Each undeclared identifier is reported only once > fd.c:271: for each function it appears in.) Hmm. This is our bug: the code mistakenly supposes that every version of OS X has that symbol, whereas evidently it was introduced in 10.3. I'll try to see that this gets fixed for PG 8.1.3, but in the short run you might be best off to update your OS X installation, or revert to PG 8.0.* which doesn't try to use FULLFSYNC at all. If you'd really like to stay on OS X 10.2, please consider joining the buildfarm http://www.pgbuildfarm.org/index.html so that any other such problems will be caught promptly. We have buildfarm members running 10.3 and 10.4, but nobody covering 10.2. regards, tom lane
On Jan 18, 2006, at 4:56 , Tom Lane wrote: > I'll try to see that this gets fixed for PG 8.1.3, but in the short > run > you might be best off to update your OS X installation, or revert to > PG 8.0.* which doesn't try to use FULLFSYNC at all. Thanks for working on this, Tom. I've got a Mac OS X 10.2 installation at a client and saw the same error when I was attempting to upgrade from 7.4 to 8.1 but didn't have time to explore the cause. If Neil doesn't report back sooner, I'll see if I can't build against head this weekend. Michael Glaesemann grzm myrealbox com
Thanks for the help, Tom, and others who made suggestions. I compiled and installed 8.0.6 with no problems on OS X 10.2.8 My little old imac's a happy postgres host now. Neil --- Tom Lane <tgl@sss.pgh.pa.us> wrote: > Neil Brandt <far_neil@yahoo.ca> writes: > > fd.c: In function `pg_fsync_writethrough': > > fd.c:271: `F_FULLFSYNC' undeclared (first use in this function) > > fd.c:271: (Each undeclared identifier is reported only once > > fd.c:271: for each function it appears in.) > > Hmm. This is our bug: the code mistakenly supposes that every version > of OS X has that symbol, whereas evidently it was introduced in 10.3. > > I'll try to see that this gets fixed for PG 8.1.3, but in the short run > you might be best off to update your OS X installation, or revert to > PG 8.0.* which doesn't try to use FULLFSYNC at all. > > If you'd really like to stay on OS X 10.2, please consider joining the > buildfarm > http://www.pgbuildfarm.org/index.html > so that any other such problems will be caught promptly. We have > buildfarm members running 10.3 and 10.4, but nobody covering 10.2. > > regards, tom lane > > ---------------------------(end of broadcast)--------------------------- > TIP 3: Have you checked our extensive FAQ? > > http://www.postgresql.org/docs/faq > __________________________________________________________ Find your next car at http://autos.yahoo.ca
On Jan 18, 2006, at 9:17 , Michael Glaesemann wrote: > > On Jan 18, 2006, at 4:56 , Tom Lane wrote: > >> I'll try to see that this gets fixed for PG 8.1.3, but in the >> short run >> you might be best off to update your OS X installation, or revert to >> PG 8.0.* which doesn't try to use FULLFSYNC at all. > > Thanks for working on this, Tom. I've got a Mac OS X 10.2 > installation at a client and saw the same error when I was > attempting to upgrade from 7.4 to 8.1 but didn't have time to > explore the cause. If Neil doesn't report back sooner, I'll see if > I can't build against head this weekend. Unfortunately I don't have a recent-enough version of bison on the 10.2 machine and can't get bison-1.875 or bison-2.1 to compile so I can't install from CVS. I'll definitely check when 8.1.3 is released. Michael Glaesemann grzm myrealbox com
Michael Glaesemann <grzm@myrealbox.com> writes: > Unfortunately I don't have a recent-enough version of bison on the > 10.2 machine and can't get bison-1.875 or bison-2.1 to compile so I > can't install from CVS. I'll definitely check when 8.1.3 is released. That's odd --- AFAIR I've never had trouble building bison on my OS X laptop. What happens when you try? One workaround would be to check out from CVS and then drop in the bison output files from the 8.1.2 release tarball. I'm pretty sure we have not changed any of the bison (or flex) input files since then in that branch. regards, tom lane
On Jan 22, 2006, at 3:10 , Tom Lane wrote: > That's odd --- AFAIR I've never had trouble building bison on my OS X > laptop. What happens when you try? I neglected to take any notes. I remember it was complaining about "muscle" something-or-other during make. > One workaround would be to check out from CVS and then drop in the > bison > output files from the 8.1.2 release tarball. I'll give that a shot when I get back to that machine, probably this coming weekend. Michael Glaesemann grzm myrealbox com
On Jan 24, 2006, at 9:21 , Michael Glaesemann wrote: > > On Jan 22, 2006, at 3:10 , Tom Lane wrote: > >> That's odd --- AFAIR I've never had trouble building bison on my OS X >> laptop. What happens when you try? > > I neglected to take any notes. I remember it was complaining about > "muscle" something-or-other during make. I have mixed emotions about it, but bison 1.875 built with no problems the very first time I tried when I went in to service the machine. No evidence at all of the problems I had building bison-1.875 and bison-2.1 last week. I can't imagine what I did differently. It was a straightforward ./configure --prefix=/usr/ local, make, make install. Kinda feel silly that I can't replicate the error, but glad that it went fine. >> One workaround would be to check out from CVS and then drop in the >> bison >> output files from the 8.1.2 release tarball. > > I'll give that a shot when I get back to that machine, probably > this coming weekend. Install from CVS when just fine. No error due to F_FULLSYNC, and configure properly displayed checking whether F_FULLFSYNC is declared... no Mac OS X 10.2.8 ./configure --prefix=/usr/local/pgsql-cvs --with-pgport=5431 -- mandir=/usr/local/share/man/ --with-includes=/sw/include/ --with- libraries=/sw/lib/ Full output from configure, make, make install available if desired. make check failed because it wasn't able to initdb (not enough memory available) and I didn't want to mess around with changing shmem*. (I don't even remember how to do that on an OS X 10.2 box.) Is there a way to set the number of connections lower for the regression tests? Thanks again, Tom. Looks like this fixed it. Michael Glaesemann grzm myrealbox com