Hello.

From: Peter Eisentraut <[EMAIL PROTECTED]>
Subject: [HACKERS] Porting/platforms/buildfarm open issues
Date: Thu, 6 Jan 2005 11:22:56 +0100

> Tru64 UNIX
I tried RC3 on Tru64 box with cc(Compaq C V6.1-011). There are some errors 
to build and install. All tests (make installcheck) are passed.

bash-2.05b$ uname -a
OSF1 kiss.my.domain V5.0 910 alpha
bash-2.05b$ make installcheck
  ... 
======================
 All 96 tests passed.
======================

Error Reports: 
(Sorry for my poor English.)
1) configure?
I got below error when simply configure and make:
  /usr/bin/ld -shared -expect_unresolved '*'  fe-auth.o fe-connect.o fe-exec.o 
fe-misc.o fe-print.o fe-lobj.o fe-protocol2.o fe-protocol3.o pqexpbuffer.o 
pqsignal.o fe-secure.o md5.o ip.o wchar.o encnames.o noblock.o pgstrcasecmp.o 
thread.o getaddrinfo.o -L../../../src/port -lresolv  -Wl,-rpath 
-Wl,/usr/local/pgsql/lib -o libpq.so.3.2
  /usr/bin/ld:
  Invalid flag usage: Wl,-rpath, -Wx,-option must appear after -_SYSTYPE_SVR4
  /usr/bin/ld: Usage: /usr/bin/ld [options] file [...]
  make[3]: *** [libpq.so.3.2] Error 1

In Makefile.osf, rpath are defined as 'rpath = -Wl,-rpath -Wl,$(rpathdir)'. 
But, 
Makefile.global were set LD to /usr/bin/ld by configure script:
bash-2.05b$ grep "LD " Makefile.global
  LD = /usr/bin/ld

So, I need a patch to build:
bash-2.05b$ diff Makefile.osf.DIST Makefile.osf
4c4
< rpath = -Wl,-rpath -Wl,$(rpathdir)
---
> rpath = -rpath $(rpathdir)

(Because LDREL=-r is fixed in Makefile.global.in and cc command can not pass 
"-r"
 flag to linker, I did not set LD environment vriable to "/usr/bin/cc".)

I believe that it will be no problem if I had used gcc.

2) mkdir?
Due to odd behavior of 'mkdir -p' command, I got below error when 'make 
install':
  mkdir -p -- /usr/local/pgsql/bin /usr/local/pgsql/share
  mkdir: cannot create /usr/local/pgsql/share.
  /usr/local/pgsql/share: File exists
  make[2]: *** [installdirs] Error 2

So, i needed patches below:
bash-2.05b$ diff include/Makefile.DIST include/Makefile
21c21
<       nodes optimizer parser port regex rewrite storage tcop utils \
---
>       nodes optimizer parser regex rewrite storage tcop utils \
(port directory were specified twice.)

bash-2.05b$ diff backend/Makefile.DIST backend/Makefile
184c184
<       $(mkinstalldirs) $(DESTDIR)$(bindir) $(DESTDIR)$(datadir)
---
>       $(mkinstalldirs) $(DESTDIR)$(datadir) $(DESTDIR)$(bindir)


(The mkdir command(of OS standard) fail if there are no-existing directory in 
middle 
of paths of the argument. For example, 
 bash-2.05b$ mkdir abc               --- success.
 bash-2.05b$ mkdir -p abc abc2       --- success. the last 'abc2' don't exist.
 bash-2.05b$ mkdir -p abc3 abc abc2  --- failure. the first 'abc3' don't exist 
 mkdir: cannot create abc.
 abc: File exists
 bash-2.05b$ mkdir -p abc5 abc5      --- failuer. both of 'abc5' don't exist
 mkdir: cannot create abc5.
 abc5: File exists
)

regards, 
-- 
  Shigehiro Honda

---------------------------(end of broadcast)---------------------------
TIP 6: Have you searched our list archives?

               http://archives.postgresql.org

Reply via email to