Discussion:
compiling xpdf
(too old to reply)
Marc Grober
2003-09-03 17:47:55 UTC
Permalink
I am getting errors compiling xpdf on 7.1.2 and could use some help.

# make
cd goo; make
CC -g -DHAVE_CONFIG_H -I.. -I. -c GHash.cc
"/usr/include/stdio.h", line 392: catastrophic error: could not open
source file "cstdio"
#include <cstdio> /* for namespace std */
^

*** Error code 1 (bu21)
UX:make: ERROR: fatal error.
*** Error code 1 (bu21)
UX:make: ERROR: fatal error.

cstdio is a gcc file at /usr/local/include/g++/cstdio which should not
be referenced unless the configure finds g++ and it shouldn't be (and
the configuration indicates it has not.....

If I set CC to gcc and change PATH and LD_LIBRARY_PATH to include
/usr/local where the gcc stuff lives, I get other errors

checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking for library containing strerror... none required
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking for a BSD-compatible install... /usr/local/bin/install -c
checking for ranlib... :
checking for OS/2 (with EMX)... no
checking for DOS (with DJGPP)... no
checking how to run the C preprocessor... gcc -E
checking for X... libraries /usr/X11R5/lib, headers
checking for dnet_ntoa in -ldnet... no
checking for dnet_ntoa in -ldnet_stub... no
checking for gethostbyname... no
checking for gethostbyname in -lnsl... no
checking for gethostbyname in -lbsd... no
checking for connect... no
checking for connect in -lsocket... yes
checking for remove... yes
checking for shmat... yes
checking for IceConnectionNumber in -lICE... yes
checking for dirent.h that defines DIR... yes
checking for library containing opendir... none required
checking for gethostbyname... (cached) no
checking for gethostbyname in -lbsd... (cached) no

this is the only questionable response from autoconf:
checking select() and fd_set in sys/select.h and sys/bsdtypes.h...
problem

but then I get this

# make
cd goo; make
make[1]: Entering directory `/home/marc/tmp/xpdf-2.02pl1/goo'
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I. -c GHash.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I. -c GList.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I. -c GString.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I. -c gmempp.cc
g++ -g -O2 -DHAVE_CONFIG_H -I.. -I. -c gfile.cc
In file included from gfile.h:28,
from gfile.cc:37:
/usr/include/unistd.h:183: `intptr_t' was not declared in this scope
/usr/include/unistd.h:183: warning: `sbrk' initialized and declared
`extern'
/usr/local/lib/gcc-lib/i486-pc-sysv5/egcs-2.91.60/include/stdlib.h:102:
previous declaration of `void exit(int)' with C linkage
/usr/include/unistd.h:261: conflicts with new declaration with C++
linkage
make[1]: *** [gfile.o] Error 1
make[1]: Leaving directory `/home/marc/tmp/xpdf-2.02pl1/goo'
make: *** [all] Error 2

Apparently I have my environments mixed..... anyone have any
suggestions?
J. L. Schilling
2003-09-04 15:22:04 UTC
Permalink
When Unixware was branded Caldera OpenUnix I did a new install and was then told to
install the old Unixware UDK which as a package, appeared to install correctly.....
My listing of /usr/include/CC is below. How does that compare to yours?
I don't know why someone told you to do that ... it effectively back-rev's
the UDK C++ compiler and puts its header files out of synch with the UDK
C compiler's header files, thus the missing <cstdio>.

Re-install the OUDK from the Open UNIX 8 media kit, or upgrade to the
newer UDK 7.1.3 from UnixWare 7.1.3.

Jonathan Schilling

Loading...