/usr/include/pgsql/os.h does not exist
Charles Choi (cchoi@sonicsinc.com) reports a bug with a severity of 1
The lower the number the more severe it is.
Short Description
/usr/include/pgsql/os.h does not exist
Long Description
I am trying to install Postgresql 7.0.2 using the RPM
on RedHat 6.2.
In the example code section I have shown the contents of
the directory /usr/include/pgsql
I have used the RPM postgresql-devel-7_0_2-2_i386.rpm.
I have installed both the version on your site and
yet again from the RedHat site. Same problem.
Hope you can fix this - thanks!
-Charles
Sample Code
socworks1 /usr/include/pgsql>ls -al
total 224
drwxr-xr-x 17 root root 4096 Sep 5 20:13 ./
drwxr-xr-x 44 root root 8192 Sep 5 20:13 ../
drwxr-xr-x 2 root root 4096 Sep 5 20:13 access/
-rw-r--r-- 1 root root 19779 Jun 12 14:21 c.h
drwxr-xr-x 2 root root 4096 Sep 5 20:13 catalog/
drwxr-xr-x 2 root root 4096 Sep 5 20:13 commands/
-rw-r--r-- 1 root root 16412 Jun 12 14:21 config.h
-r--r--r-- 1 root root 1261 Jun 12 14:20 ecpgerrno.h
-r--r--r-- 1 root root 1233 Jun 12 14:20 ecpglib.h
-r--r--r-- 1 root root 1856 Jun 12 14:20 ecpgtype.h
drwxr-xr-x 2 root root 4096 Sep 5 20:13 executor/
-r--r--r-- 1 root root 25046 Jun 12 14:20 fmgr.h
drwxr-xr-x 2 root root 4096 Sep 5 20:13 iodbc/
drwxr-xr-x 2 root root 4096 Sep 5 20:13 lib/
-r--r--r-- 1 root root 403 Jun 12 14:20 libpgeasy.h
-r--r--r-- 1 root root 650 Jun 12 14:20 libpgtcl.h
drwxr-xr-x 2 root root 4096 Sep 5 20:13 libpq/
drwxr-xr-x 2 root root 4096 Sep 5 20:13 libpq++/
-r--r--r-- 1 root root 940 Jun 12 14:20 libpq++.h
-r--r--r-- 1 root root 12383 Jun 12 14:20 libpq-fe.h
-r--r--r-- 1 root root 12378 Jun 12 14:20 libpq-int.h
drwxr-xr-x 2 root root 4096 Sep 5 20:13 nodes/
lrwxrwxrwx 1 root root 25 Sep 5 20:13 os.h -> .././include/port/linux.h
drwxr-xr-x 2 root root 4096 Sep 5 20:13 parser/
drwxr-xr-x 3 root root 4096 Sep 5 20:13 port/
-rw-r--r-- 1 root root 7268 Jun 12 14:21 postgres.h
-rw-r--r-- 1 root root 1222 Jun 12 14:21 postgres_ext.h
-r--r--r-- 1 root root 5484 Jun 12 14:20 pqexpbuffer.h
drwxr-xr-x 2 root root 4096 Sep 5 20:13 rewrite/
-r--r--r-- 1 root root 943 Jun 12 14:20 sql3types.h
-r--r--r-- 1 root root 1020 Jun 12 14:20 sqlca.h
drwxr-xr-x 2 root root 4096 Sep 5 20:13 storage/
drwxr-xr-x 2 root root 4096 Sep 5 20:13 tcop/
drwxr-xr-x 2 root root 4096 Sep 5 20:13 utils/
socworks1 /usr/include/pgsql>ls os.h
os.h@
socworks1 /usr/include/pgsql>uname -a
Linux socworks1 2.2.16-3 #1 Mon Jun 19 18:49:25 EDT 2000 i686 unknown
socworks1 /usr/include/pgsql>more os.h
os.h: No such file or directory
No file was uploaded with this report
pgsql-bugs@postgresql.org writes:
/usr/include/pgsql/os.h does not exist
Yeah, this is a recently-noticed defect in the RPM distribution.
A symlink was installed as a symlink, instead of as the referenced
file.
Until a new RPM can be issued, the simplest fix is to replace the
os.h symlink with the correct contents of port/linux.h (attached).
regards, tom lane
/* __USE_POSIX, __USE_BSD, and __USE_BSD_SIGNAL used to be defined either
here or with -D compile options, but __ macros should be set and used by C
library macros, not Postgres code. __USE_POSIX is set by features.h,
__USE_BSD is set by bsd/signal.h, and __USE_BSD_SIGNAL appears not to
be used.
*/
#define JMP_BUF
#define USE_POSIX_TIME
#if defined(__i386__)
typedef unsigned char slock_t;
#define HAS_TEST_AND_SET
#elif defined(__sparc__)
typedef unsigned char slock_t;
#define HAS_TEST_AND_SET
#elif defined(__powerpc__)
typedef unsigned int slock_t;
#define HAS_TEST_AND_SET
#elif defined(__alpha__)
typedef long int slock_t;
#define HAS_TEST_AND_SET
#elif defined(__mips__)
typedef unsigned int slock_t;
#define HAS_TEST_AND_SET
#elif defined(__arm__)
typedef unsigned char slock_t
#define HAS_TEST_AND_SET
#endif
#if defined(__GLIBC__) && (__GLIBC__ >= 2)
#ifdef HAVE_INT_TIMEZONE
#undef HAVE_INT_TIMEZONE
#endif
#endif
#if defined(__powerpc__)
#undef HAVE_INT_TIMEZONE
#endif