Thread: Postgress 6.5.3 on Irix 6.5.x?
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 --------------------------------------------------------------
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
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 > --------------------------------------------------------------
> 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
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
> 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 --------------------------------------------------------------
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
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
> 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
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
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
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
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