Rich Teer
2007-Feb-05 02:16 UTC
[dtrace-discuss] Building Postgres 8.2.1 with DTrace support
Hi all, I''m trying to build PostgreSQL 8.2.1 with DTrace support enabled. It goes well until it dies part way through, with this error message: Undefined first referenced symbol in file AbortTransaction utils/probes.o CommitTransaction utils/probes.o ld: fatal: Symbol referencing errors. No output written to postgres collect2: ld returned 1 exit status gmake: *** [postgres] Error 1 So I started reading docs, and doc/FAQ_Solaris has this to say: If you see the linking of the postgres executable abort with an error message like Undefined first referenced symbol in file AbortTransaction utils/probes.o CommitTransaction utils/probes.o ld: fatal: Symbol referencing errors. No output written to postgres collect2: ld returned 1 exit status gmake: *** [postgres] Error 1 your DTrace installation is too old to handle probes in static functions. You need Solaris 10u3 or newer. Fair enough. One problem: I''m using Solaris 10 U3 (aka 11/06): rich at marrakesh7752# cat /etc/release Solaris 10 11/06 s10x_u3wos_10 X86 Copyright 2006 Sun Microsystems, Inc. All Rights Reserved. Use is subject to license terms. Assembled 14 November 2006 So the question is: is it possible to build Postgres 8.2.1 on Solaris 10 11/06, and if so, how? Building on Nevada is out of the question for this particular use, so that''s not an option. TIA for any insight, -- Rich Teer, SCSA, SCNA, SCSECA, OpenSolaris CAB member President, Rite Online Inc. Voice: +1 (250) 979-1638 URL: http://www.rite-group.com/rich
Robert Lor
2007-Feb-05 13:39 UTC
[dtrace-discuss] Building Postgres 8.2.1 with DTrace support
Rich Teer wrote On 02/04/07 20:16,:>So I started reading docs, and doc/FAQ_Solaris has this to say: > >If you see the linking of the postgres executable abort with an error >message like > > Undefined first referenced > symbol in file > AbortTransaction utils/probes.o > CommitTransaction utils/probes.o > ld: fatal: Symbol referencing errors. No output written to postgres > collect2: ld returned 1 exit status > gmake: *** [postgres] Error 1 > >your DTrace installation is too old to handle probes in static >functions. You need Solaris 10u3 or newer. > > >Rich, The FAQ is not correct. The DTrace enhancement to support static function didn''t get into Solaris 10 11/06. I was told it will be in update 4. Depending on what you need to enable, you may be able to build on Neveda and run the binary on Solaris 10 as suggested by Adam. -Robert
Rich Teer
2007-Feb-05 17:55 UTC
[dtrace-discuss] Building Postgres 8.2.1 with DTrace support
On Mon, 5 Feb 2007, Robert Lor wrote:> The FAQ is not correct. The DTrace enhancement to support static function > didn''t get into Solaris 10 11/06. I was told it will be in update 4.Ah, OK. I''ll send the Postgres guys a bug report, asking them to update the FAQ.> Depending on what you need to enable, you may be able to build on Neveda and > run the binary on Solaris 10 as suggested by Adam.Fortunately, I have no need to enable tracing at this time; just the desire to be able to do so. :-) As this will be going onto a production server, I''ll live without DTracability until I refresh the server. Thanks for the prompt response! -- Rich Teer, SCSA, SCNA, SCSECA, OpenSolaris CAB member President, Rite Online Inc. Voice: +1 (250) 979-1638 URL: http://www.rite-group.com/rich