Thread: Postgress 6.5.3 on Irix 6.5.x?

Postgress 6.5.3 on Irix 6.5.x?

From
jgramke@oak.computing.csbsju.edu (Jim Gramke)
Date:
I'm trying to compile Postgres6.5.3 on Irix 6.5.4, and it's not working.

Do you know if anyone has already done it, or if it's (relatively) easily
possible, or where I might find more information?

At the moment, Irix 6.5.4 is my only real option.

Thanks,

Jim Gramke

--



--------------------------------------------------------------
Jim Gramke             Unix & Web Systems Administrator
College of St. Benedict/     jgramke@csbsju.edu
St. John's University         PH: (320) 363-2785
Collegeville, MN 56321         FX: (320) 363-2761
    URL: http://www.users.csbsju.edu/~jgramke
--------------------------------------------------------------

Re: Postgress 6.5.3 on Irix 6.5.x?

From
"G. Anthony Reina"
Date:
Jim,


    I currently have PG 6.5.2 on IRIX 6.5.4. There are some minor
changes that need to be made for the shared libraries and readline
function. However, it should otherwise be fairly straightforward to
compile. Could you tell me specifically what errors or problems you are
running into?

-Tony Reina



Re: Postgress 6.5.3 on Irix 6.5.x?

From
"G. Anthony Reina"
Date:
Jim,


    I can't say that I understand what the "No rule" error is. I have found that
when Postgres upgrades, it tends to drop something that IRIX needs to properly
identify where files and libs are on the system. Here's a basic list of things
to make sure are correct on your Postgres install (from the Postgres 6.5.2
installation):

(1)  Make sure the shared library path is specified.

======================================================================================

In the file Makefile.shlib:

*** Makefile.shlib.orig Mon Aug 30 11:00:23 1999
--- Makefile.shlib      Mon Aug 30 11:01:47 1999
***************
*** 59,65 ****
  ifeq ($(PORTNAME), irix5)
    install-shlib-dep := install-shlib
    shlib := lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
!   LDFLAGS_SL := -shared
    CFLAGS += $(CFLAGS_SL)
  endif

--- 59,65 ----
  ifeq ($(PORTNAME), irix5)
    install-shlib-dep := install-shlib
    shlib := lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
!   LDFLAGS_SL := -shared -rpath $(LIBDIR)
    CFLAGS += $(CFLAGS_SL)
  endif


====================================================================================

If this patch isn't made then the compiled files won't know where to look for
the shared libraries.


(2) If you are using -o32 (e.g. Indy and O2) for your cc compiler, then do this.
In /usr/local/src/postgresql-6.5.x/src/template,
modify the file irix5 in the following way:

CFLAGS:-o32
LDFLAGS:-o32

Then, in the file /usr/local/src/postgresql-6.5.x/src/Makefile.custom add the
following lines:

CC += -o32
LD = ld -o32


(3) If you have the readline function installed (free from SGI; allows you to
use the up arrow to repeat the last query in psql), then do this under
configure:

For -o32
=======
configure   --with-libs=/usr/freeware/lib
--with-includes=/usr/freeware/include

For -n32
=======
configure   --with-libs=/usr/freeware/lib32
--with-includes=/usr/freeware/include





This is where I would start from. Also, make sure that you have the gmake, not
the make. You can also get gmake free from SGI at their website. (e.g. so use
'gmake all', not 'make all').

If things are still not going well, then e-mail me (and the PORTS site) again.
Hopefully, someone will be able to spot the problem.

-Tony





Jim Gramke wrote:

> Tony,
>
> Thanks for taking a look at this.
>
> I can do the "./configure" step of the install procedure with no problem.
> However, when I do the "make all" step, I run into compile problems.
>
> The problem seems to center around SUBSYS.o.  Here are the messages I see:
>
> for i in buffer file ipc large_object lmgr page smgr; do gmake -C $i
> buffer/SUBSYS.o; done
> gmake[3]: Entering directory
> `/usr/people/students/other/postgres/src/pgsql/src/backend/storage/buffer'
> gmake[3]: *** No rule to make target `buffer/SUBSYS.o'.  Stop.
>
> I see this "No rule" message 7 times, and then it ends with these messages:
> gmake[2]: *** [buffer/SUBSYS.o] Error 2
> gmake[2]: Leaving directory
> `/usr/people/students/other/postgres/src/pgsql/src/backend/storage'
> gmake[1]: *** [storage.dir] Error 2
> gmake[1]: Leaving directory
> `/usr/people/students/other/postgres/src/pgsql/src/backend'
> gmake: *** [all] Error 2
>
> I can find no trace of any file called SUBSYS.* in the src directory tree, so
> it almost seems like something is missing.
>
> --
>
> --------------------------------------------------------------
> Jim Gramke                   Unix & Web Systems Administrator
> College of St. Benedict/     jgramke@csbsju.edu
> St. John's University        PH: (320) 363-2785
> Collegeville, MN 56321       FX: (320) 363-2761
>     URL: http://www.users.csbsju.edu/~jgramke
> --------------------------------------------------------------


Re: [PORTS] Re: Postgress 6.5.3 on Irix 6.5.x?

From
Bruce Momjian
Date:
> Jim,
>
>
>     I can't say that I understand what the "No rule" error is. I have found that
> when Postgres upgrades, it tends to drop something that IRIX needs to properly
> identify where files and libs are on the system. Here's a basic list of things
> to make sure are correct on your Postgres install (from the Postgres 6.5.2
> installation):
>
> (1)  Make sure the shared library path is specified.
>
> ======================================================================================
>
> In the file Makefile.shlib:
>
> *** Makefile.shlib.orig Mon Aug 30 11:00:23 1999
> --- Makefile.shlib      Mon Aug 30 11:01:47 1999
> ***************
> *** 59,65 ****
>   ifeq ($(PORTNAME), irix5)
>     install-shlib-dep := install-shlib
>     shlib := lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
> !   LDFLAGS_SL := -shared
>     CFLAGS += $(CFLAGS_SL)
>   endif
>
> --- 59,65 ----
>   ifeq ($(PORTNAME), irix5)
>     install-shlib-dep := install-shlib
>     shlib := lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
> !   LDFLAGS_SL := -shared -rpath $(LIBDIR)
>     CFLAGS += $(CFLAGS_SL)
>   endif
>
>
> ====================================================================================
>
> If this patch isn't made then the compiled files won't know where to look for
> the shared libraries.

This patch appears in the current source tree.

--
  Bruce Momjian                        |  http://www.op.net/~candle
  maillist@candle.pha.pa.us            |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026

Re: [PORTS] Re: Postgress 6.5.3 on Irix 6.5.x?

From
"G. Anthony Reina"
Date:
Bruce Momjian wrote:

> This patch appears in the current source tree.

Bruce,

    Thanks for the update. I was pretty sure that it had been included, but haven't
upgraded to 6.5.3 (so I wasn't sure).

   Are you familiar with the "No Rule" error that Jim is reporting?


> I can do the "./configure" step of the install procedure with no problem.
> However, when I do the "make all" step, I run into compile problems.
>
> The problem seems to center around SUBSYS.o.  Here are the messages I see:
>
>
> for i in buffer file ipc large_object lmgr page smgr; do gmake -C $i
> buffer/SUBSYS.o; done
> gmake[3]: Entering directory
> `/usr/people/students/other/postgres/src/pgsql/src/backend/storage/buffer'
> gmake[3]: *** No rule to make target `buffer/SUBSYS.o'.  Stop.
>
> I see this "No rule" message 7 times, and then it ends with these messages:
> gmake[2]: *** [buffer/SUBSYS.o] Error 2
> gmake[2]: Leaving directory
> `/usr/people/students/other/postgres/src/pgsql/src/backend/storage'
> gmake[1]: *** [storage.dir] Error 2
> gmake[1]: Leaving directory
> `/usr/people/students/other/postgres/src/pgsql/src/backend'
> gmake: *** [all] Error 2
>
> I can find no trace of any file called SUBSYS.* in the src directory tree, so
> it almost seems like something is missing.
>
>
-Tony



Re: [PORTS] Re: Postgress 6.5.3 on Irix 6.5.x?

From
Bruce Momjian
Date:
> Bruce Momjian wrote:
>
> > This patch appears in the current source tree.
>
> Bruce,
>
>     Thanks for the update. I was pretty sure that it had been included, but haven't
> upgraded to 6.5.3 (so I wasn't sure).
>
>    Are you familiar with the "No Rule" error that Jim is reporting?
>
>
> > I can do the "./configure" step of the install procedure with no problem.
> > However, when I do the "make all" step, I run into compile problems.
> >
> > The problem seems to center around SUBSYS.o.  Here are the messages I see:
> >
> >
> > for i in buffer file ipc large_object lmgr page smgr; do gmake -C $i
> > buffer/SUBSYS.o; done
> > gmake[3]: Entering directory
> > `/usr/people/students/other/postgres/src/pgsql/src/backend/storage/buffer'
> > gmake[3]: *** No rule to make target `buffer/SUBSYS.o'.  Stop.

Right here?  No.  Very strange.  Was there a compile failure eariler up?

--
  Bruce Momjian                        |  http://www.op.net/~candle
  maillist@candle.pha.pa.us            |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026

Re: [PORTS] Re: Postgress 6.5.3 on Irix 6.5.x?

From
jgramke@oak.computing.csbsju.edu (Jim Gramke)
Date:
I changed the Makefile.shlib so that the line reads:
    LDFLAGS_SL := -shared -rpath $(LIBDIR)
instead of
    LDFLAGS_SL := -shared.
This change made no difference.
I'm a little concerned though.  It seems that you believe this change should be
in the current distribution, however, it is certainly not in the copy that I
downloaded just yesterday.



Also, I searched for errors earlier in the make, and found this error:

as: Error: /var/tmp/cca004nD.s, line 313: undefined assembler operation:
.global^M
     .global tas   ^M
gmake[3]: *** [s_lock.o] Error 1^M
gmake[3]: Leaving directory
`/usr/people/students/other/postgres/src/pgsql/src/backend/storage/buffer'^M



About the last item that I can add is that when I run the "configure" script,
I use the --with-CXX=CC  option.  If I don't use this option, I get this error:

checking whether the C++ compiler (c++   ) works... no
configure: error: installation or configuration problem: C++ compiler cannot
create executables.


Is there anything other information you would like for me to provide?

Thanks!!

Jim


--



--------------------------------------------------------------
Jim Gramke             Unix & Web Systems Administrator
College of St. Benedict/     jgramke@csbsju.edu
St. John's University         PH: (320) 363-2785
Collegeville, MN 56321         FX: (320) 363-2761
    URL: http://www.users.csbsju.edu/~jgramke
--------------------------------------------------------------

Re: [PORTS] Re: Postgress 6.5.3 on Irix 6.5.x?

From
"G. Anthony Reina"
Date:
Jim Gramke wrote:

> About the last item that I can add is that when I run the "configure" script,
> I use the --with-CXX=CC  option.  If I don't use this option, I get this error:
>
> checking whether the C++ compiler (c++   ) works... no
> configure: error: installation or configuration problem: C++ compiler cannot
> create executables.
>
> Is there anything other information you would like for me to provide?
>

Ahhh! Well, it may not correct your error, but if you don't have the C++ compiler
then you need to configure with the option '--without-CXX'.

Do a 'gmake clean' first to erase any previously compiled stuff. Then erase the
config.cache. Then re-run your configure with:

configure --without-CXX

It will skip checking for the C++ compiler.

-Tony



Re: [PORTS] Re: Postgress 6.5.3 on Irix 6.5.x?

From
"G. Anthony Reina"
Date:
Jim Gramke wrote:

> I have g++ 2.8.1, and CC is the SGI supplied MIPS-Pro C++ compiler.  It would
> seem one of those would be ok.
>
> I'll try it with the without option you describe.
>
> Thanks,
>
> Jim
>

I don't have the C++ compiler, so I always use the --without-CXX option.
However, I wonder if you may want to use the g++ compiler instead of CC (if you
really need c++). (Postgres was created for the GNU compilers I believe.)

Anyone out there know if using the GNU compilers is better for Postgres? Or is
there no real difference?

-Tony



Re: [PORTS] Re: Postgress 6.5.3 on Irix 6.5.x?

From
jgramke@oak.computing.csbsju.edu (Jim Gramke)
Date:
This time I used the --with-CXX=g++ only to achieve the same unsuccessful
results.

I gziped a copy of the whole session, typescript.g++.gz, starting at the
configure point, just in case you are interested in seeing what is actually
happening.

Thanks for your time and help so far!

Jim







--



--------------------------------------------------------------
Jim Gramke             Unix & Web Systems Administrator
College of St. Benedict/     jgramke@csbsju.edu
St. John's University         PH: (320) 363-2785
Collegeville, MN 56321         FX: (320) 363-2761
    URL: http://www.users.csbsju.edu/~jgramke
--------------------------------------------------------------

Attachment

Re: [PORTS] Re: Postgress 6.5.3 on Irix 6.5.x?

From
Bruce Momjian
Date:
> I changed the Makefile.shlib so that the line reads:
>     LDFLAGS_SL := -shared -rpath $(LIBDIR)
> instead of
>     LDFLAGS_SL := -shared.
> This change made no difference.
> I'm a little concerned though.  It seems that you believe this change should be
> in the current distribution, however, it is certainly not in the copy that I
> downloaded just yesterday.
>
>
>
> Also, I searched for errors earlier in the make, and found this error:
>
> as: Error: /var/tmp/cca004nD.s, line 313: undefined assembler operation:
> .global^M
>      .global tas   ^M
> gmake[3]: *** [s_lock.o] Error 1^M
> gmake[3]: Leaving directory
> `/usr/people/students/other/postgres/src/pgsql/src/backend/storage/buffer'^M

OK, my guess is that the s_lock.c or s_lock.h code for locking is not
understood by your compiler.

--
  Bruce Momjian                        |  http://www.op.net/~candle
  maillist@candle.pha.pa.us            |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026

Re: [PORTS] Re: Postgress 6.5.3 on Irix 6.5.x?

From
Bruce Momjian
Date:
Yes, certainly some problem with the assembler.  It doesn't understand
the .global instruction specification.  Either your compiler/assembler
is broken/limited, or somehow the wrong piece of assembler code is being
selected.  It would be good to find the actual assembler lines being
invoked, and try to just compile that with various switches or ask SGI.



> This time I used the --with-CXX=g++ only to achieve the same unsuccessful
> results.
>
> I gziped a copy of the whole session, typescript.g++.gz, starting at the
> configure point, just in case you are interested in seeing what is actually
> happening.
>
> Thanks for your time and help so far!
>
> Jim
>
>
>
>
>
>
>
> --
>
>
>
> --------------------------------------------------------------
> Jim Gramke             Unix & Web Systems Administrator
> College of St. Benedict/     jgramke@csbsju.edu
> St. John's University         PH: (320) 363-2785
> Collegeville, MN 56321         FX: (320) 363-2761
>     URL: http://www.users.csbsju.edu/~jgramke
> --------------------------------------------------------------
Content-Description: Data

[application/octet-stream is not supported, skipping...]


--
  Bruce Momjian                        |  http://www.op.net/~candle
  maillist@candle.pha.pa.us            |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026

Re: [PORTS] Re: Postgress 6.5.3 on Irix 6.5.x?

From
"G. Anthony Reina"
Date:
Jim Gramke wrote:

> This time I used the --with-CXX=g++ only to achieve the same unsuccessful
> results.
>
> I gziped a copy of the whole session, typescript.g++.gz, starting at the
> configure point, just in case you are interested in seeing what is actually
> happening.
>
> Thanks for your time and help so far!
>
> Jim
>

Just for the heck of it, I downloaded 6.5.3 onto my SGI O2 (running IRIX
6.5.4). I was able to 'configure' and do the 'gmake all' without a problem. I
am using the MIPSPro c compiler (cc); perhaps, as Bruce suggested, your
compiler or assembler isn't interpreting something correctly. Do you have the
'cc' compiler to try?

-Tony

p.s. I've attached my script from the configure and gmake.



Attachment

Re: [PORTS] Re: Postgress 6.5.3 on Irix 6.5.x?

From
"G. Anthony Reina"
Date:
Mark Dalphin wrote:

> There seems to be enough trouble building PostgreSQL for Irix that I wonder if I
> should prepare binaries for people. While I can not offer access from my work
> site, I wonder about using a free web site like GeoCities? Has anyone had
> experience with any free sites like this for downloading from?
>
> Mark
>
> --
> Mark Dalphin                          email: mdalphin@amgen.com
> Mail Stop: 29-2-A                     phone: +1-805-447-4951 (work)
> One Amgen Center Drive                       +1-805-375-0680 (home)
> Thousand Oaks, CA 91320                 fax: +1-805-499-9955 (work)

Mark,


    Maybe Bruce will let you post the SGI binaries on the Postgres site. Bruce?

-Tony



Re: [PORTS] Re: Postgress 6.5.3 on Irix 6.5.x?

From
Bruce Momjian
Date:
Sure, contect webmaster@postgresql.org.

> Mark Dalphin wrote:
>
> > There seems to be enough trouble building PostgreSQL for Irix that I wonder if I
> > should prepare binaries for people. While I can not offer access from my work
> > site, I wonder about using a free web site like GeoCities? Has anyone had
> > experience with any free sites like this for downloading from?
> >
> > Mark
> >
> > --
> > Mark Dalphin                          email: mdalphin@amgen.com
> > Mail Stop: 29-2-A                     phone: +1-805-447-4951 (work)
> > One Amgen Center Drive                       +1-805-375-0680 (home)
> > Thousand Oaks, CA 91320                 fax: +1-805-499-9955 (work)
>
> Mark,
>
>
>     Maybe Bruce will let you post the SGI binaries on the Postgres site. Bruce?
>
> -Tony
>
>
>
> ************
>
>


--
  Bruce Momjian                        |  http://www.op.net/~candle
  maillist@candle.pha.pa.us            |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026