gnu-win32

Paul Kussmaul Paul.Kussmaul@t-online.de
Tue Sep 16 15:08:00 GMT 1997


see attachment
task.txt

-------------- next part --------------
                                       Paul Kussmaul
                                       Jahnstr. 21
                                       D-71126 Gaeufelden 2
                                       Germany

                                       Email: Paul.Kussmaul@t-online.de


                                       25.08.97



Hello Gnu-Win32-Team,

I have tried to compile your gnuwin32-package without success. The make-
files and configure-scripts are in terribly bad repair. They do not run
under CYGWIN32/NT. I have already sent a problem report two weeks ago with-
out getting any feedback (please excuse the non-standard-format, but I have
read the send-pr documentation after I had finished that message).
 
I think the cygwin32-idea is a good approach and I would like to use this
package to do some SW-development on NT and also for an embedded i960
application. So, I'm motivated to help you out.  

A few words to my background:

I am an electronics engineer at Hewlett-Packard, Germany. Currently I am
working in our production engineering department for IC-Test-Systems, but
I started as software engineer in our medical department. Some of my SW-
tasks are listed below:

* realtime data networking (written in Z80-assembler)
* architecture for a realtime-multiprocessor-operatingsystem (based on pSOS)
* some X11 applications (very boring)
* some program generators (based on flex & yacc)
* a flex-clone (Very interesting, but after a completion of 60% my son was
  born, so this project was never completed. Flex is a very smart program.
  It's almot impossible to beat that program.)
* Genetic-Programming (this is the most interesting technology I ever have
  seen in computer science)

Available hardware:

* Pentium PC with WindowsNT Build 1381 SP3
             with Linux 2.0.30 (S.U.S.E-distribution)
* HP-Workstation 715/50 with HP-UX 10.2

I am relatively new to the gnu-community and I have read only a small portion
of the gnu-documents. But I think I can adjust some of the makefiles. It
seems the binary-targets need a $(binext) which should be set to .exe on
MSDOS or Windows-systems. I do not see yet why it is a good idea that the
linker automatically appends a '.exe'-suffix (this should mislead 'make',
because the target beeing made is created under a different name!).

Please let me know what I can contribute.

Best regards,

Paul Kussmaul

Attachement: - problem-report, already sent to info@cygnus.com and 
               noer@cygnus.com 

------------------------------------------------------------------------------
                                       Paul Kussmaul
                                       Jahnstr. 21
                                       D-71126 Gaeufelden 2
                                       Germany

                                       Email: Paul.Kussmaul@t-online.de


                                       25.08.97



Hello CYGNUS-Team,

I have scanned the WWW looking for a Windows-NT-Port of the GNU develop-
ment tools. I think CYGNUS has a lot of experience in this area and pro-
bably you can offer what I am looking for. Let me tell what I need:

1. GNU development tools ported to Windows NT 4.0 (Build 1381, S-Pack 3)
   (host = WinNT, target = WinNT)   
    
2. A GNU cross compiler for the i960 which is able to generate binaries
   for embedded systems (not bound to any specific operating system).
   (host = WinNT, target = i960)

If I have correctlty read your WWW-pages, you offer both versions. However
it's unclear what is included in your 'GNUpro Toolkit' and how much it
costs? A WWW-page from says INTEL says that are offering a 'Developer Kit
for the i960'.


One of your WWW-pages says that you promote 'Open Standards & Sourcecode'.
"This open model is so important to us that we provide GNUPro sourcecode
free of charge. Users can customize sourcecode and redistribute software
within their organizations at no cost". That's a bold statement and I hope
you will demonstrate that you will keep this promise.


Based on this statement I have checked which software you made already
available for download. I have found 'gnuwin32 b18'. This package at least
should should satisfy the first part of my need and probably also the 
second half. I want to do a 3-step approach:

1. Step: Check the binaries for NT
2. Step: Try to recreate these binaries from the sources
3. Step: Take these sources and configure the GNU-Tools for the i960

I have spent almost a week with this package. I would like to give you some
feedback. Normally feedback means additional work - I know this from my
daily business (I am a senior-sofware-engineer at HP) -, but I still hope
that you will appreciate my inputs. I have done all test as 'Administrator'
under Windows NT 4.0 Workstation (Build 1381, Service-Pack 3). 

1st Step:

The most important binaries are okay. I can compile and debug c-programs.
I have not checked all binaries, but some of them do not operate as ex-
pected. Here is a list of what I have found so far:

CDK & USER-TOOLS (exe-packages from gnuwin32 b18):

1. bash

   PROBLEM: * Sometimes the horizontal scrollbar hides the last line.
              If both scrollbars are present, try to start a new process
              (e.g. vim), both scrollbars disappear, and after leaving
              'vim' the scrollbars reappear (mostly), but the last line
              is covered. Resizing the window helps. (May be a NT-prob-
              lem).
            * Commandline-Editing works mostly, but sometimes strange
              'tilde'-characters appear. The EDITOR-Environment-Variable
              has been set to 'vi', but 'bash' ignores this setting. 

2. who

   PROBLEM: * who: /var/run/utmp: No such file or directory

3. whoami

   PROBLEM: * whoami: cannot find username for UID 500

4. kill

   PROBLEM: * Return status is 0, but it does not kill processes (neither
              with PID nor WIN32-PID, and -9 does help either). I did not
              find any documentation.

5. ps 

   PROBLEM: * 'ps' does not see all gnuwin32-processes. Subprocesses from
              other 'bash'-windows are not included. Processes directly
              started by NT are also missing.

6. gdb

   PROBLEM: * CTRL-C does not work properly. Sometimes the windows are
              modified slightly, but the processes do not terminate.
            * Graphical User-Interface seems to be incomplete. Some menu-
              entries terminate the gdb-windows immediately.
            * Sometimes you get strange message-boxes which do not disappear
              (gdb seems to hang)
              

2nd Step:

Performing this step I got a lot of trouble. The 'Makefiles' and 'configure'-
scripts are in bad repair. They do NOT run under 'gnuwin32'. I do not believe
that you have derived the binaries from this source! That's almost impossible.
This is unfair, and strictly speaking that's a violation of the GPL. The
source-packages do not contain everything that is needed to recreate the 
binaries. Now, after I have expressed some of my anger, let me tell you what
went wrong:

USER-TOOLS (source-packages from gnuwin32 b18):


1. PROBLEM: bash - 'yacc' not found 

   The 'Makefile' does not run sucessfully, because the most-inner
   'bash-Makefile' is looking for 'yacc' instead of 'byacc'. The
   'make'-Flag 'BISON=byacc' should be propagated to all deeper
   'Makefiles'. After installing from scratch there is only a 'byacc'
   available.

2. PROBLEM: 'make install' does not work

   The linker is smart enough to know that NT-binaries must have a '.exe'-
   suffix. But the 'install:' does not know this, it tries to install the
   basenames only. Some of the 'Makefiles' have a macro 'X=', but the
   'configure'-script does not make the assignment to 'X=.exe'. Here is the 
   list of tools which suffer on this deficiency:
   bash, fileutils, findutils, grep, gzip, m4, sed, shellutils, textutils,
   time, ncurses

   Some tools try to install binaries and scripts in a common loop. That
   does not work. This problem occurs in shellutils.

   Installing to a different target-directory by setting '--prefix' does
   not work always. It seems that 'configure' does not propagate correctly
   this setting to inner 'Makefiles'. This problem appears in
   'fileutils/src'.

   'install:' terminates, because some 'info'-files are missing. The 
   'makeinfo' does not work always. In some directories it does not produce
   any output. This problem appears in fileutils & time. 
   
3. PROBLEM: autoheader & autoconf

   The 'Makefile' of 'less' make use of these features, but I did not found
   them in the sources.

4. PROBLEM: ncurses

   The 'Makefile' of 'ncurses' terminates, because it cannot compile the
   termcap data base. There are a lot of "<xxx> use resolution failed on
   <yyy>"-messages. This problem occurs, if you do a 'make install'.

5. PROBLEM: tar

   'configure' cannot guess host type. I have tried to set it manually to
   '--host=i386-pc-cygwin32', but this does not help. I have got an internal
   compiler error:
   rtapelib.o: In function `rmt_rexec':
   /gnuwin32.src/user-tools/tar/src/rtapelib.c:228:
     undefined reference to `rexec'
   gcc: Internal compiler error: program ld got fatal signal 1
   make: *** [tar] Error 1
   make: *** [all] Error 1

6. PROBLEM: df

   'df.exe' does not work, it shows the following message:
   "./src/df: cannot read table of mounted filesystems:
   No such file or directory"

7. PROBLEM: gawk

   'Makefile' does not run.
 

CDK (source-packages from gnuwin32 b18):

8. PROBLEM: bfd missing install-directories

   If the '/usr/include'-directory does not exist, the 'Makefile' fails.

9. PROBLEM: cdk top-level 'Makefile'

   The toplevel-Makefile fails, because @DLLTOOL@ is not substituted. The
   problem is located in 'tcl/win' and 'tk/win'.

10.PROBLEM: tcl

   'tcl' is configured for CONFIGDIR=unix which produces include path-
   names like (./../generic/...) which do not exist. Configuring it to
   CONFIGDIR=win (like tk) helps, but later on 'gdb' fails. 'gdb' want to
   see some X11-headers (#include-statements in 'tk.h').

    ---------------------------------------------------------------------
   | That's point where I got lost. I am not sure whether my guesses are |
   | correct or not.                                                     |
    ---------------------------------------------------------------------


3rd Step:

I couldn't do it, because step 2 has failed.



You see there have been a lot of difficulties. I am sure will see the
same problems, if you try to reproduce them. Now I want to remember you
to your promise. I urgently ask you to give me access to working sources.
Please let my know in what time frame you plan fixes and the next release. 



Best regards,

Paul Kussmaul (email: Paul.Kussmaul@t-online.de)


PS: If you need a more detailed problem report, please let me know. If you
    like, I can do some beta-testing for you.


More information about the Cygwin mailing list