FAQ
Greetings;

I just got my shiny new copy of MacOS X 10.2 -- Err. That would be my
fuzzy, spotted new version of MacOS X. :)

In the process of rebuilding my /usr/local tree, postgreSQL failed to
build. I had no trouble with 10.1.

The make bailed with:


========================================================================
============================
gcc -traditional-cpp -g -O2 -Wall -Wmissing-prototypes
-Wmissing-declarations -I../../../../src/include -c -o sem.o sem.c
In file included from sem.c:30:
../../../../src/include/port/darwin/sem.h:66: warning: `union semun'
declared inside parameter list
../../../../src/include/port/darwin/sem.h:66: warning: its scope is
only this definition or declaration, which is probably not what you want
../../../../src/include/port/darwin/sem.h:66: warning: parameter has
incomplete type
sem.c:67: warning: `union semun' declared inside parameter list
sem.c:68: parameter `arg' has incomplete type
make[4]: *** [sem.o] Error 1
make[3]: *** [darwin.dir] Error 2
make[2]: *** [port-recursive] Error 2
make[1]: *** [all] Error 2
make: *** [all] Error 2
========================================================================
============================

I poked around a bit and found semun defined in /usr/include/sem.h. I
tried some obvious things -- like defining the
thing, including the correct file, etc... No luck.

This was postgresql-7.2.2.

Thanx in advance for your efforts.


-mitch richling

PS: I love this database. I was a diehard Oracle user about a year
ago, and now I only use it if someone makes me!
PostgreSQL RULES

Search Discussions

  • Richmit at Aug 25, 2002 at 1:44 pm
    Ok Ok Ok. I didn't look hard enough at the source code!

    I looked at the source code, and figured out that sem.h had
    been added to the src/ tree because 10.1 didn't have one -- why would
    Apple do that? Grr. Anyhow, the
    fix is simple: Undo all the good work that was done to fix the problem
    in 10.1! I got everything working
    by replacing

    #include "port/darwin/sem.h"

    with

    #include <sys/sem.h>

    src/backend/storage/ipc/ipc.c
    src/backend/storage/lmgr/proc.c
    src/backend/storage/lmgr/spin.c

    and by removing the target/dependancy for sem.o in
    src/backend/port/darwin/Makefile.

    I would have sent diffs, but my changes are not appropriate to be
    merged in. All I did was the
    minimum to get it to compile on my system, and not what needs to be
    done in the production
    code. For example, my changes break a compile on 10.1 if that's
    important to you. Someone
    needs to think about how to fix the code up so that it's production
    worthy.

    Anyhow. Thanks for the great DB!


    On Sunday, August 25, 2002, at 01:23 AM, richmit wrote:

    Greetings;

    I just got my shiny new copy of MacOS X 10.2 -- Err. That would be my
    fuzzy, spotted new version of MacOS X. :)

    In the process of rebuilding my /usr/local tree, postgreSQL failed to
    build. I had no trouble with 10.1.

    The make bailed with:


    =======================================================================
    =============================
    gcc -traditional-cpp -g -O2 -Wall -Wmissing-prototypes
    -Wmissing-declarations -I../../../../src/include -c -o sem.o sem.c
    In file included from sem.c:30:
    ../../../../src/include/port/darwin/sem.h:66: warning: `union semun'
    declared inside parameter list
    ../../../../src/include/port/darwin/sem.h:66: warning: its scope is
    only this definition or declaration, which is probably not what you
    want
    ../../../../src/include/port/darwin/sem.h:66: warning: parameter has
    incomplete type
    sem.c:67: warning: `union semun' declared inside parameter list
    sem.c:68: parameter `arg' has incomplete type
    make[4]: *** [sem.o] Error 1
    make[3]: *** [darwin.dir] Error 2
    make[2]: *** [port-recursive] Error 2
    make[1]: *** [all] Error 2
    make: *** [all] Error 2
    =======================================================================
    =============================

    I poked around a bit and found semun defined in /usr/include/sem.h. I
    tried some obvious things -- like defining the
    thing, including the correct file, etc... No luck.

    This was postgresql-7.2.2.

    Thanx in advance for your efforts.


    -mitch richling

    PS: I love this database. I was a diehard Oracle user about a year
    ago, and now I only use it if someone makes me!
    PostgreSQL RULES
  • Henry B. Hotz at Apr 4, 2003 at 6:20 pm
    I'm trying to compile 7.3.2 on Solaris 7 with the built-in Kerberos
    IV support. To avoid conflicts I do not have ssl support turned on.

    Configure goes and looks for libkrb with some routine that is there.
    Then it checks for libdes with des_encrypt. Now first of all there
    is no libdes on Sol7. There's only the one that was put in when I
    added ssl. Second there is no des_encrypt in openssl. Third there
    is no des_encrypt in the Heimdal/KTH-KRB implementation either.

    So is that routine actually one that's used? If so where did it come
    from, and whose implementation of what actually provided it?

    Or has everyone just abandoned K4 and we should forget about it?

    (Yes, I know all about the latest problems found with K4. As long as
    you are using patched/old MIT code and not doing cross-realm
    authentication you're probably better off than with a lot of versions
    of K5.)
    --
    The opinions expressed in this message are mine,
    not those of Caltech, JPL, NASA, or the US Government.
    Henry.B.Hotz@jpl.nasa.gov, or hbhotz@oxy.edu
  • Tom Lane at Apr 4, 2003 at 6:45 pm

    "Henry B. Hotz" <hotz@jpl.nasa.gov> writes:
    Or has everyone just abandoned K4 and we should forget about it?
    It's entirely possible that you're the only one using K4 with PG;
    I can't recall having heard from anyone else recently. If it's
    broken, send us patches ...

    regards, tom lane
  • Henry B. Hotz at Apr 4, 2003 at 8:07 pm

    At 1:45 PM -0500 4/4/03, Tom Lane wrote:
    "Henry B. Hotz" <hotz@jpl.nasa.gov> writes:
    Or has everyone just abandoned K4 and we should forget about it?
    It's entirely possible that you're the only one using K4 with PG;
    I can't recall having heard from anyone else recently. If it's
    broken, send us patches ...
    If I do patching I'll send patches. I didn't want to install K5 on
    this machine when K4 is already there and the KDC I'm using supports
    K4.
    --
    The opinions expressed in this message are mine,
    not those of Caltech, JPL, NASA, or the US Government.
    Henry.B.Hotz@jpl.nasa.gov, or hbhotz@oxy.edu
  • Peter Eisentraut at Apr 4, 2003 at 11:55 pm

    Henry B. Hotz writes:

    Configure goes and looks for libkrb with some routine that is there.
    Then it checks for libdes with des_encrypt. Now first of all there
    is no libdes on Sol7. There's only the one that was put in when I
    added ssl. Second there is no des_encrypt in openssl. Third there
    is no des_encrypt in the Heimdal/KTH-KRB implementation either.

    So is that routine actually one that's used? If so where did it come
    from, and whose implementation of what actually provided it?
    Last time I reworked that code I used the KTH version to check it, so your
    report puzzles me a little. Basically we just want to make sure that the
    Kerberos installation is sufficient before proceeding. Feel free to
    suggest improvements.

    --
    Peter Eisentraut peter_e@gmx.net
  • Henry B. Hotz at Apr 5, 2003 at 2:38 am

    At 1:55 AM +0200 4/5/03, Peter Eisentraut wrote:
    Henry B. Hotz writes:
    Configure goes and looks for libkrb with some routine that is there.
    Then it checks for libdes with des_encrypt. Now first of all there
    is no libdes on Sol7. There's only the one that was put in when I
    added ssl. Second there is no des_encrypt in openssl. Third there
    is no des_encrypt in the Heimdal/KTH-KRB implementation either.

    So is that routine actually one that's used? If so where did it come
    from, and whose implementation of what actually provided it?
    Last time I reworked that code I used the KTH version to check it, so your
    report puzzles me a little. Basically we just want to make sure that the
    Kerberos installation is sufficient before proceeding. Feel free to
    suggest improvements.
    /usr/lib/libdes.a on NetBSD 1.6Q has des_encrypt1, des_encrypt2, and
    des_encrypt3, but no unnumbered one. I don't know for sure if that
    library is from ssl or from Heimdal/KTF-KRB, but I suspect the
    latter. They have definitely done something to rationalize openssl
    with Heimdal so it may be a merger of some kind.

    OSX has an _k5_des_encrypt routine in libdes425.dylib.

    Can't find anything in Solaris 7, which is actually odd because I
    thought there was a cryptsoft libdes included with Solaris 2.6.
    Perhaps my memory is fading though. That was a while ago. Looking
    further on Sol7 I do find:
    nm libcrypto.a | fgrep des_encr
    [67] | 448| 28|FUNC |GLOB |0 |2 |_ossl_old_des_encrypt
    [69] | 480| 28|FUNC |GLOB |0 |2 |_ossl_old_des_encrypt2
    [70] | 512| 32|FUNC |GLOB |0 |2 |_ossl_old_des_encrypt3

    in /usr/local/lib. Interesting. Now back to /usr/lib:
    nm libcrypt.a | fgrep des_encr
    [12] | 0| 0|NOTY |GLOB |0 |UNDEF |_des_encrypt
    libcrypt.a[des_encrypt.o]:
    [6] | 0| 472|FUNC |GLOB |0 |2 |_des_encrypt1
    [1] | 0| 0|FILE |LOCL |0 |ABS |des_encrypt.c
    [5] | 0| 472|FUNC |WEAK |0 |2 |des_encrypt1
    [32] | 604| 40|FUNC |GLOB |0 |2 |_des_encrypt
    [38] | 0| 0|NOTY |GLOB |0 |UNDEF |_des_encrypt1
    [31] | 604| 40|FUNC |WEAK |0 |2 |des_encrypt
    [25] | 444| 160|FUNC |LOCL |0 |2 |des_encrypt_nolock

    Bingo!!!!!!!!!!!!!

    Going back to NetBSD and OSX I find that they both have the numbered
    versions in /usr/lib/libcrypto... Still no unnumbered version.

    Well, if there's built-in kerb5 then I would use that over kerb4
    anyway. Kerberos 4 is only suitable for simple installations with no
    cross-realm authentication needed now.
    --
    The opinions expressed in this message are mine,
    not those of Caltech, JPL, NASA, or the US Government.
    Henry.B.Hotz@jpl.nasa.gov, or hbhotz@oxy.edu

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
grouppgsql-ports @
categoriespostgresql
postedAug 25, '02 at 6:22a
activeApr 5, '03 at 2:38a
posts7
users4
websitepostgresql.org
irc#postgresql

People

Translate

site design / logo © 2022 Grokbase