Alexander Klimov writes:
> After two days of strugle I have compiled pgsql on ultrix, patch is in
> attachment. I still can't run `gmake check', because of shell problems
> in install.log:
>
> install: no destination specified
> gmake[6]: *** [install-lib-shared] Error 1
> gmake[6]: Leaving directory
> `/tmp_mnt/hosts/wisdom/NewSoftware/Ask/build/pgsql/src/interfaces/libpq'
You either need to add
enable_shared = no
to Makefile.ultrix4, or inform Makefile.shlib about how to build shared
libraries.
> With the speed of the box it will take another two days to fix and
> check :-)
If you're using GCC then configure with --enable-depend to build
dependencies, so you don't have to do make clean everytime.
> First problem is sys/socket.h. Here it has no guards in it (like
> #ifdef _SOCKET_H
> #endif), so it could not be included twice, and I have to remove its
> unnecesarry inclusions.
Since there will be more unnecessary inclusions the next time somebody
touches a file, the ultimately better strategy might be to add such a
wrapper manually.
> I have to add src/utils/strdup.o to linking in
> src/interfaces/ecpg/preproc and /src/bin/pg_passwd
> and I don't shure how to do it in patch (so, it is not there).
See src/bin/psql/Makefile for examples of linking in helper .o files.
> sys/ipc.h included from miscadmin.h is needed for sys/sem.h, so I reorder
> their inclusion.
Better to explicitly include sys/ipc.h again where it's needed.
> There is no dynamic libraries for Ultrix, so I have to download libdl, but
> it is not supported by configure (I guess), so I add
> LIBS += -L/home/ask/soft/build/libdl -ldl
> it is obviously wrong -- should be changed.
There's
AC_CHECK_LIB(dl, main)
which does what you want, but you need to give your linker a hint where to
find it. See configure --with-libraries.
> BTW: Do anybody know about tool, helping to analize include structure, in
> order to eliminate several includes of one file (like case with
> sys/socket.h which is unneeded for everybody, who includes libpq-be.h)
Maybe the stuff under
src/tools/pginclude/
helps.
--
Peter Eisentraut peter_e@gmx.net http://yi.org/peter-e/