Results 1 to 3 of 3
  1. #1
    Join Date
    Oct 2009
    Posts
    5

    Unanswered: Problem compiling postgres 8.4.1 on Unix AIX

    Hi everybody

    Im trying to compile postgresql-8.4.1 on AIX 5.3 but I have an error message :

    Here is the way I did it :
    I enter a "configure" command with no options, and here is what I get at the end of configure :

    checking for docbook2man...
    checking if gcc supports -Wl,--as-needed... no
    configure: using CFLAGS=-O2 -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -fno-strict-aliasing -fwrapv
    configure: using CPPFLAGS=
    configure: using LDFLAGS=
    configure: creating ./config.status
    config.status: creating GNUmakefile
    config.status: creating src/Makefile.global
    config.status: creating src/include/pg_config.h
    config.status: creating src/interfaces/ecpg/include/ecpg_config.h
    config.status: linking ./src/backend/port/tas/dummy.s to src/backend/port/tas.s
    config.status: linking ./src/backend/port/dynloader/aix.c to src/backend/port/dynloader.c
    config.status: linking ./src/backend/port/sysv_sema.c to src/backend/port/pg_sema.c
    config.status: linking ./src/backend/port/sysv_shmem.c to src/backend/port/pg_shmem.c
    config.status: linking ./src/backend/port/dynloader/aix.h to src/include/dynloader.h
    config.status: linking ./src/include/port/aix.h to src/include/pg_config_os.h
    config.status: linking ./src/makefiles/Makefile.aix to src/Makefile.port

    After that, I launch the compilation with gmake I got this error message :

    gmake[4]: Entering directory `/var/prog/postgresql-8.4.1/src/interfaces/libpq'
    gmake[4]: Nothing to be done for `all'.
    gmake[4]: Leaving directory `/var/prog/postgresql-8.4.1/src/interfaces/libpq'
    gmake -C ../../../src/port all
    gmake[4]: Entering directory `/var/prog/postgresql-8.4.1/src/port'
    gmake[4]: Nothing to be done for `all'.
    gmake[4]: Leaving directory `/var/prog/postgresql-8.4.1/src/port'
    gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -fno-strict-aliasing -fwrapv -I. -I../../../src/interfaces/libpq -I../../../src/bin/pg_dump -I../../../src/include -c -o psqlscan.o psqlscan.c
    In file included from psqlscan.c:4364:
    /usr/include/unistd.h:171: error: conflicting types for 'lseek64'
    /usr/include/unistd.h:169: error: previous declaration of 'lseek64' was here
    In file included from /usr/include/unistd.h:737,
    from psqlscan.c:4364:
    /usr/include/sys/lockf.h:64: error: conflicting types for 'lockf64'
    /usr/include/sys/lockf.h:62: error: previous declaration of 'lockf64' was here
    In file included from psqlscan.c:4364:
    /usr/include/unistd.h:800: error: conflicting types for 'ftruncate64'
    /usr/include/unistd.h:798: error: previous declaration of 'ftruncate64' was here
    /usr/include/unistd.h:836: error: conflicting types for 'truncate64'
    /usr/include/unistd.h:834: error: previous declaration of 'truncate64' was here
    /usr/include/unistd.h:853: error: conflicting types for 'pread64'
    /usr/include/unistd.h:850: error: previous declaration of 'pread64' was here
    /usr/include/unistd.h:854: error: conflicting types for 'pwrite64'
    /usr/include/unistd.h:851: error: previous declaration of 'pwrite64' was here
    /usr/include/unistd.h:921: error: conflicting types for 'fclear64'
    /usr/include/unistd.h:918: error: previous declaration of 'fclear64' was here
    /usr/include/unistd.h:922: error: conflicting types for 'fsync_range64'
    /usr/include/unistd.h:919: error: previous declaration of 'fsync_range64' was here
    gmake[3]: *** [psqlscan.o] Error 1
    gmake[3]: Leaving directory `/var/prog/postgresql-8.4.1/src/bin/psql'
    gmake[2]: *** [all] Error 2
    gmake[2]: Leaving directory `/var/prog/postgresql-8.4.1/src/bin'
    gmake[1]: *** [all] Error 2
    gmake[1]: Leaving directory `/var/prog/postgresql-8.4.1/src'
    gmake: *** [all] Error 2

    After searching a little and trying to understand what was the problem, I noticed that it has to deal with "large file".

    So I tryed to run the configure command with option --disable-largefile like this "./configure --disable-largefile".

    And here is what I got at the end of the configure with option --disable-largefile :

    checking for docbook2man...
    checking if gcc supports -Wl,--as-needed... no
    configure: using CFLAGS=-O2 -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -fno-strict-aliasing -fwrapv
    configure: using CPPFLAGS=
    configure: using LDFLAGS=
    configure: creating ./config.status
    config.status: creating GNUmakefile
    config.status: creating src/Makefile.global
    config.status: creating src/include/pg_config.h
    config.status: creating src/interfaces/ecpg/include/ecpg_config.h
    config.status: linking ./src/backend/port/tas/dummy.s to src/backend/port/tas.s
    config.status: linking ./src/backend/port/dynloader/aix.c to src/backend/port/dynloader.c
    config.status: linking ./src/backend/port/sysv_sema.c to src/backend/port/pg_sema.c
    config.status: linking ./src/backend/port/sysv_shmem.c to src/backend/port/pg_shmem.c
    config.status: linking ./src/backend/port/dynloader/aix.h to src/include/dynloader.h
    config.status: linking ./src/include/port/aix.h to src/include/pg_config_os.h
    config.status: linking ./src/makefiles/Makefile.aix to src/Makefile.port
    configure: WARNING: option ignored: --enable-largefile

    So you notice that it says that it ignored the "enable largefile", but when I run the compilation (gmake) after that, the compilation ends well :

    -L../../src/port -Wl,-blibpath:/usr/local/pgsql/lib:/usr/lib:/lib -Wl,-bnoentry -Wl,-H512 -Wl,-bMRE -o autoinc.so autoinc.o -Wl,-bE:autoinc.exp -Wl,-bI:../../src/backend/postgres.imp -L../../src/port -lpgport
    rm autoinc.exp autoinc.o
    gmake[3]: Leaving directory `/var/prog/postgresql-8.4.1/contrib/spi'
    cp ../../../contrib/spi/autoinc.so autoinc.so
    rm -rf ./testtablespace
    mkdir ./testtablespace
    gmake[2]: Leaving directory `/var/prog/postgresql-8.4.1/src/test/regress'
    gmake[1]: Leaving directory `/var/prog/postgresql-8.4.1/src'
    gmake -C config all
    gmake[1]: Entering directory `/var/prog/postgresql-8.4.1/config'
    gmake[1]: Nothing to be done for `all'.
    gmake[1]: Leaving directory `/var/prog/postgresql-8.4.1/config'
    All of PostgreSQL successfully made. Ready to install.

    My question is what is the effect of the option --disable-largefile ?
    I succed to make the compilation with the option "disable largefile" (even though if the configure command says that it ignored it ?!) but I am afraid that I will encounter some problem by the future, when running the application in production.

    Please someone can clarify me the sense of this option and if I disable the largefile option, will it have effect or not ?

    Heres some info:

    - AIX 5.3.0 64 bits
    - Postgresql 8.4.1
    - gcc version 4.2.0
    - GNU Make 3.80
    - Readline installed

    Thank you
    Last edited by casasniper; 10-09-09 at 06:47.

  2. #2
    Join Date
    Sep 2009
    Posts
    39
    Quote Originally Posted by casasniper
    Hi everybody

    I´m trying to compile postgresql-8.4.1 on AIX 5.3 but I have an error message :

    Here is the way I did it :
    I enter a "configure" command with no options, and here is what I get at the end of configure :


    Here´s some info:

    - AIX 5.3.0 64 bits
    - Postgresql 8.4.1
    - gcc version 4.2.0
    - GNU Make 3.80
    - Readline installed

    Thank you

    if you need using a postgresql database, I suggest a freebsd 64 bit or OS or linux debian 64 bit.

  3. #3
    Join Date
    Oct 2009
    Posts
    5
    Bonjour,

    Merci pour votre proposition mais je préfère travailler avec postgresql sous la machine AIX.

    Pour mon soucis sur l'option --disable-largefile, j'espère qu'elle ne me posera pas de problème par la suite.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •