This is the mail archive of the
cygwin-xfree@sourceware.cygnus.com
mailing list for the Cygwin project.
RE: libXm.a + xmkmf
- To: <cygwin-xfree at sourceware dot cygnus dot com>
- Subject: RE: libXm.a + xmkmf
- From: "Suhaib Siddiqi" <ssiddiqi at inspirepharm dot com>
- Date: Fri, 2 Jun 2000 14:45:24 -0400
You are using X11R6.4 for B20.1. You need the newer binaries from
xc-4-binaries directory. Therefore you get _ctype_ undefined
Second xmkmf is a plain text file, you can always edit it according
to your PATHS.
Suhaib
> -----Original Message-----
> From: Tom Weichmann [mailto:tomcw@localnet.com]
> Sent: Friday, June 02, 2000 4:38 PM
> To: Suhaib Siddiqi; cygwin-xfree@sourceware.cygnus.com
> Subject: RE: libXm.a + xmkmf
>
>
> Hello,
>
>
> > > Hello,
> > >
> > > I am running cygwin 1.1.1 on Win98. I an using the binary release
> > > of the x clients and libs from the cygwin/xfree86 page. I am trying
> > > to compile a x file manager called mfm, and I an getting the
> > > following errors when I xmkmf -a :
> > >
> > > makedepend: warning: pty.c, line 3: cannot find include file
> > > "fcntl.h"
> > > not in /usr/X11R6.4/include/fcntl.h
> > > not in /include/fcntl.h
> > > not in /usr/local/lib/gcc-include/fcntl.h
> > > not in E:/usr/H-i386-cygwin32/i386-cygwin32/include/fcntl.h
> > > not in
> > > E:/usr/H-i386-cygwin32/lib/gcc-lib/i586-cygwin32/egcs-
> > > 2.91.57/inc
> > > lude/fcntl.h
> > >
> > > This error is repeated over and over for every file in the tar ball.
> > > Where does xmkmf get its info from? None of the include
> > > directories which make is looking in exist on my system.
>
> Suhaib Siddiqi wrote:
>
> > "None of the include directories..." <---THIS IS YOUR PROBLEM.
> > You cannot compile a code if you do not
> > have proper headers for it, a full compilation suite (compilers). A
> > proper installation of Cygwin.
> >
> > xmkmf is getting it from your pty.c subroutines, which needs fcntl.h
> > header file.
> >
> > Suhaib
>
> I think that I might need to explain my self better. All of these
> header files *do* exist on my system, but xmkmf/makedepend are
> looking in directories which only existed in the previous version of
> cygwin. Looking at the error, makedepend looked in the following
> directories for these headers:
>
> /usr/X11R6.4/include/
> * I have this dir, but it only contains headers for X
>
> /include/
> * This does not exist in cygwin 1.1.1
>
> /usr/local/lib/gcc-include/
> * This does not exist in cygwin 1.1.1
>
> E:/usr/H-i386-cygwin32/i386-cygwin32/include/
> * This does not exist in 1.1.1, and I do not have an E: drive
>
> E:/usr/H-i386-cygwin32/lib/gcc-lib/i586-cygwin32/egcs-2.91.57/inc
> lude/
> * This does not exist in 1.1.1, I do not have an E: drive, and I do not
> have egcs installed on my system. I compile with gcc 2.95.2
>
> When I asked where does xmkmf get its info from, what I should
> have said is: Why is xmkmf searching these directories for
> headers. On Cygwin 1.1.1 all of the headers exist in the following
> directory:
>
> /usr/i686-pc-cygwin/include
>
> This is the way Cygwin 1.1.1 installed itself on my system. I have
> not modified it at all. I have successfully built many other binaries
> which do not use xmkmf, which leads me to believe that xmkmf is
> reading an old file somewhere which is telling it to look in these old
> B20 style directories for the header files.
>
> As a quick and dirty fix for this I mounted
> /usr/i686-pc-cygwin/include as /include because for what ever
> reason xmkmf was looking in /include for the headers contained in
> /usr/i686-pc-cygwin/include. When I did this xmkmf -a
> successfully completed. Then when I tried to make the binary,
> make died with undefined reference to `_ctype_' errors which
> referred to libXm.a. This shows that even with the proper headers
> there is still a problem with libXm.a. So to sum up
>
> 1. How do I get xmkmf/makedepend to look in the proper
> directories for the needed headers?
>
> 2. Does libXm.a need to be rebuilt for cygwin 1.1.1?
>
> Thanks Again,
>
> Tom Weichmann
>
> > $ make
> >
> > rm -f mfm.exe
> > gcc -o mfm.exe -O2 -s -mpentium -L/usr/X11R6.4/lib
> accels.o
> > dd.o d
> > vices.o fileMgr.o fileSelectionBox.o ftp.o
> > globalLList.o
> > info.o menubar.o mfm.o pty.o
> > typesFile.o
> > util.o -lXm -lXt -lSM -lICE -lXpm -lXext -lX11
> >
> /usr/X11R6.4/lib/libXm.a(ResConvert.o)(.text+0x145d):ResCon
> vert.c:
> > undefined re
> > erence to `_ctype_'
> >
> /usr/X11R6.4/lib/libXm.a(ResConvert.o)(.text+0x1478):ResCon
> vert.c:
> > undefined re
> > erence to `_ctype_'
> >
> /usr/X11R6.4/lib/libXm.a(ResConvert.o)(.text+0x1490):ResCon
> vert.c:
> > undefined re
> > erence to `_ctype_'
> >
> /usr/X11R6.4/lib/libXm.a(ResConvert.o)(.text+0x1b20):ResCon
> vert.c:
> > undefined re
> > erence to `_ctype_'
> >
> /usr/X11R6.4/lib/libXm.a(ResConvert.o)(.text+0x1b26):ResCon
> vert.c:
> > undefined re
> > erence to `_ctype_'
> >
> /usr/X11R6.4/lib/libXm.a(ResConvert.o)(.text+0x1b46):ResCon
> vert.c:
> > more undefin
> > d references to `_ctype_' follow
> > collect2: ld returned 1 exit status
> > make: *** [mfm.exe] Error 1
> >
> > This looks to me like libXm.a needs to be re-compiled with
> the
> > latest cygwin. So this leads me to my next question. Do I
> need to
> > download XC40-1 - XC40-4 from the ftp site just to build
> the libs and
> > clients, or is that for the xserver as well? Is there another,
> smaller
> > source I can use if I just want to build the libs and clients?
> >
> > Thank you for your time,
> >
> > Tom Weichmann
>
>