From: John P. <jp...@ey...> - 2001-11-21 20:32:53
|
I've abandoned my attempts to get JOE v2.9.6 built on OS/2, but hope to have more success on v2.9.7. Unfortunately, I get a lot of errors when compiling bw.c due to 'dereferncing pointer to incomplete type'... Here are a selection of errors I get:- In file included from ublock.h:24, from bw.c:21: bw.h:39: parse error before `pid_t' bw.h:39: warning: no semicolon at end of struct or union bw.h:42: parse error before `}' bw.c: In function `bwfllw': bw.c:65: dereferencing pointer to incomplete type bw.c: In function `bwins': bw.c:110: dereferencing pointer to incomplete type bw.c: In function `bwdel': bw.c:128: dereferencing pointer to incomplete type bw.c: In function `gennum': bw.c:544: dereferencing pointer to incomplete type bw.c: In function `bwgen': bw.c:562: dereferencing pointer to incomplete type bw.c: In function `bwmove': bw.c:656: dereferencing pointer to incomplete type bw.c: In function `bwresz': bw.c:662: dereferencing pointer to incomplete type bw.c: In function `bwmk': bw.c:670: sizeof applied to an incomplete type bw.c:672: dereferencing pointer to incomplete type bw.c: In function `bwrm': bw.c:706: dereferencing pointer to incomplete type bw.c: In function `ustat': bw.c:715: dereferencing pointer to incomplete type bw.c:721: warning: passing arg 1 of `msgnw' from incompatible pointer type bw.c: In function `ucrawlr': bw.c:727: dereferencing pointer to incomplete type bw.c: In function `ucrawll': bw.c:738: dereferencing pointer to incomplete type bw.c: In function `orphit': bw.c:756: dereferencing pointer to incomplete type make: *** [bw.o] Error 1 I have removed a large number of duplicates of these msgs where they appeared on subsequent lines to the ones mentioned. Can anyone tell me what is wrong? -- John |
From: Pawel K. <pk...@li...> - 2001-11-21 20:59:19
|
On Wed, 21 Nov 2001, John Poltorak wrote: > I have removed a large number of duplicates of these msgs where they > appeared on subsequent lines to the ones mentioned. > > > Can anyone tell me what is wrong? Probably you don't have sys/types.h. Or it is incomplete. pkot -- mailto:pk...@li... :: mailto:pk...@sl... http://kt.linuxnews.pl/ :: Kernel Traffic po polsku http://tfuj.pl/cv.html :: http://tfuj.pl/pgp.asc |
From: John P. <jp...@ey...> - 2001-11-21 21:10:02
|
On Wed, Nov 21, 2001 at 09:58:50PM +0100, Pawel Kot wrote: > On Wed, 21 Nov 2001, John Poltorak wrote: > > > I have removed a large number of duplicates of these msgs where they > > appeared on subsequent lines to the ones mentioned. > > > > > > Can anyone tell me what is wrong? > > Probably you don't have sys/types.h. Or it is incomplete. Not sure what you mean... I don't have #include <sys/types.h> in bw.c. Should it be included here? > pkot > -- > mailto:pk...@li... :: mailto:pk...@sl... > http://kt.linuxnews.pl/ :: Kernel Traffic po polsku > http://tfuj.pl/cv.html :: http://tfuj.pl/pgp.asc > -- John |
From: John P. <jp...@ey...> - 2001-11-21 21:24:02
|
On Wed, Nov 21, 2001 at 09:09:00PM +0000, John Poltorak wrote: > On Wed, Nov 21, 2001 at 09:58:50PM +0100, Pawel Kot wrote: > > On Wed, 21 Nov 2001, John Poltorak wrote: > > > > > I have removed a large number of duplicates of these msgs where they > > > appeared on subsequent lines to the ones mentioned. > > > > > > > > > Can anyone tell me what is wrong? > > > > Probably you don't have sys/types.h. Or it is incomplete. > > Not sure what you mean... > > I don't have > > #include <sys/types.h> > > in bw.c. Should it be included here? I just changed bw.h anyway to this:- //#ifdef HAVE_SYS_TYPES_H #include <sys/types.h> //#endif and that problem disappeared, so something is failing to set HAVE_SYS_TYPES_H. I still get a lot of 'incompatible pointer types' but Make carries on until:- gcc -DHAVE_CONFIG_H -I. -I. -I. -DJOERC="\"c:/usr/etc/\"" -Zomf -O2 -s -Zmt -D__ST_MT_ERRNO__ -c termcap.c where it stops with:- gcc -DHAVE_CONFIG_H -I. -I. -I. -DJOERC="\"c:/usr/etc/\"" -Zomf -O2 -s -Zmt -D__ST_MT_ERRNO__ -c tty.c tty.c:50: sys/termios.h: No such file or directory make: *** [tty.o] Error 1 Is this a standard 'C' header? -- John |
From: Pawel K. <pk...@li...> - 2001-11-21 22:20:18
|
On Wed, 21 Nov 2001, John Poltorak wrote: > I just changed bw.h anyway to this:- > > //#ifdef HAVE_SYS_TYPES_H > #include <sys/types.h> > //#endif > > and that problem disappeared, so something is failing to set > HAVE_SYS_TYPES_H. I had similiar problem with the same define. But it seemed the problem disapeared in 2.9.7-final. It's configure that sets is. > I still get a lot of 'incompatible pointer types' but Make carries on > until:- > > > gcc -DHAVE_CONFIG_H -I. -I. -I. -DJOERC="\"c:/usr/etc/\"" -Zomf -O2 -s > -Zmt -D__ST_MT_ERRNO__ -c termcap.c > > > where it stops with:- > > gcc -DHAVE_CONFIG_H -I. -I. -I. -DJOERC="\"c:/usr/etc/\"" -Zomf -O2 -s > -Zmt -D__ST_MT_ERRNO__ -c tty.c > tty.c:50: sys/termios.h: No such file or directory > make: *** [tty.o] Error 1 > > Is this a standard 'C' header? You can try to replace it with: #include <termios.h> My sys/termios.c contains just #include <termios.h> termios.h is POSIX compliant. pkot -- mailto:pk...@li... :: mailto:pk...@sl... http://kt.linuxnews.pl/ :: Kernel Traffic po polsku http://tfuj.pl/cv.html :: http://tfuj.pl/pgp.asc |
From: John P. <jp...@ey...> - 2001-11-21 22:50:16
|
On Wed, Nov 21, 2001 at 11:19:27PM +0100, Pawel Kot wrote: > On Wed, 21 Nov 2001, John Poltorak wrote: > > > I just changed bw.h anyway to this:- > > > > //#ifdef HAVE_SYS_TYPES_H > > #include <sys/types.h> > > //#endif > > > > and that problem disappeared, so something is failing to set > > HAVE_SYS_TYPES_H. > > I had similiar problem with the same define. But it seemed the problem > disapeared in 2.9.7-final. I'm using:- http://prdownloads.sourceforge.net/joe-editor/joe-2.9.7.tgz Is there something newer? > It's configure that sets is. configure.ac is the input file to autoconf which creates configure. AC_SYS_POSIX_TERMIOS is a check for various termios headers. Either the test is incorrect or my headers are missing something. > You can try to replace it with: > #include <termios.h> > > My sys/termios.c contains just #include <termios.h> > termios.h is POSIX compliant. I've just looked at tty.c and it has:- #ifdef HAVE_POSIX_TERMIOS # include <termios.h> # include <sys/termios.h> #else # ifdef HAVE_SYSV_TERMIO # include <termio.h> # include <sys/termio.h> # else # include <sgtty.h> # endif #endif My system includes:- termio.h termios.h sys/termio.h so I'm not sure which to use. Guess I'll try various combinations... > pkot > -- > mailto:pk...@li... :: mailto:pk...@sl... > http://kt.linuxnews.pl/ :: Kernel Traffic po polsku > http://tfuj.pl/cv.html :: http://tfuj.pl/pgp.asc -- John |
From: John P. <jp...@ey...> - 2001-11-21 23:38:20
|
On Wed, Nov 21, 2001 at 10:49:32PM +0000, John Poltorak wrote: > On Wed, Nov 21, 2001 at 11:19:27PM +0100, Pawel Kot wrote: > > You can try to replace it with: > > #include <termios.h> > > > > My sys/termios.c contains just #include <termios.h> > > termios.h is POSIX compliant. > > I've just looked at tty.c and it has:- > > #ifdef HAVE_POSIX_TERMIOS > # include <termios.h> > # include <sys/termios.h> > #else > # ifdef HAVE_SYSV_TERMIO > # include <termio.h> > # include <sys/termio.h> > # else > # include <sgtty.h> > # endif > #endif I changed it to this:- //#ifdef HAVE_POSIX_TERMIOS //# include <termios.h> //# include <sys/termios.h> //#else //# ifdef HAVE_SYSV_TERMIO include <termio.h> include <sys/termio.h> //# else //# include <sgtty.h> //# endif //#endif and now it stops with:- tty.c:53: parse error before `<' tty.c:179: `B50' undeclared here (not in a function) tty.c:179: initializer element for `speeds[0]' is not constant tty.c:179: `B75' undeclared here (not in a function) tty.c:179: initializer element for `speeds[2]' is not constant tty.c:179: `B110' undeclared here (not in a function) tty.c:179: initializer element for `speeds[4]' is not constant Where are these constants defined? > > > pkot > > -- > > mailto:pk...@li... :: mailto:pk...@sl... > > http://kt.linuxnews.pl/ :: Kernel Traffic po polsku > > http://tfuj.pl/cv.html :: http://tfuj.pl/pgp.asc -- John |
From: Pawel K. <pk...@li...> - 2001-11-22 00:25:24
|
On Wed, 21 Nov 2001, John Poltorak wrote: > tty.c:53: parse error before `<' > tty.c:179: `B50' undeclared here (not in a function) > tty.c:179: initializer element for `speeds[0]' is not constant > tty.c:179: `B75' undeclared here (not in a function) > tty.c:179: initializer element for `speeds[2]' is not constant > tty.c:179: `B110' undeclared here (not in a function) > tty.c:179: initializer element for `speeds[4]' is not constant > > Where are these constants defined? On Linux - in bits/termios.h and asm/termios.h. But I think we are not trying to solve the reason now but workaround the problem ... :/ pkot -- mailto:pk...@li... :: mailto:pk...@sl... http://kt.linuxnews.pl/ :: Kernel Traffic po polsku http://tfuj.pl/cv.html :: http://tfuj.pl/pgp.asc |
From: Pawel K. <pk...@li...> - 2001-11-22 00:20:05
|
On Wed, 21 Nov 2001, John Poltorak wrote: > I'm using:- > > http://prdownloads.sourceforge.net/joe-editor/joe-2.9.7.tgz > > Is there something newer? No. > > You can try to replace it with: > > #include <termios.h> > > > > My sys/termios.c contains just #include <termios.h> > > termios.h is POSIX compliant. > > I've just looked at tty.c and it has:- > > #ifdef HAVE_POSIX_TERMIOS > # include <termios.h> > # include <sys/termios.h> IMHO you can safely remove the second include. > #else > # ifdef HAVE_SYSV_TERMIO > # include <termio.h> > # include <sys/termio.h> > # else > # include <sgtty.h> > # endif > #endif pkot -- mailto:pk...@li... :: mailto:pk...@sl... http://kt.linuxnews.pl/ :: Kernel Traffic po polsku http://tfuj.pl/cv.html :: http://tfuj.pl/pgp.asc |