"Fossies" - the Fresh Open Source Software Archive

Member "ncc-2.8/doc/TROUBLES" (9 Jan 2003, 2412 Bytes) of package /linux/privat/old/ncc-2.8.tar.gz:


As a special service "Fossies" has tried to format the requested text file into HTML format (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file.

    1 
    2 GENERAL BUG-HUNTING PROCEDURE
    3 -----------------------------
    4 
    5 			``every new program, reveals more bugs''
    6 
    7 For big and complex projects, it's generally a good idea to run
    8 the compilation in "script". see "man script".
    9 
   10 This way you can detect ncc-errors and segfaults.
   11 
   12 Supposing you see that there was a problem in file drivers/ide/ide-cd.c
   13 
   14 1. Run ncc with the -ncspp option
   15 2. Go to the directory with the problematic file and
   16    "cp ide-cd.i TR.c"
   17 3. Now you can work with "ncc TR.c" w/o worring
   18    about -I/-D options
   19 
   20 - In the case ncc Segfaulted you may jump "YOU DIDN'T FIND IT" below,
   21   instead of working with gdb.
   22 
   23 - Do "gcc TR.c" to see if the file is indeed wrong C
   24   due to nognu macro expansions. If this works then
   25   it's an ncc problem.
   26 
   27 - If you can go to the line where the error occured
   28   and see if this is "normal C" or some really unusual
   29   syntactic trick.
   30 
   31 - Running "ncc -nccc TR.c" is a good way to see the
   32   last expression compiled before the bug.
   33 
   34 SO YOU'VE FOUND IT:
   35 	You can either edit ncc or edit the problematic
   36 	source file to something that gives the same output
   37 	with more correct code.
   38 	That depends on whether you think the compiler should
   39 	adapt to the program or the program should comply
   40 	with the rest of the world.
   41 
   42 YOU DIDN'T FIND IT/YOU ARE BORED TO DO THIS:
   43 	Please send me the TR.c of the offending file
   44 	at <sxanth@ceid.upatras.gr>
   45 
   46 
   47 
   48 
   49 Any program that uses glibc sockets, will probably have the following
   50 problem with glibc header files in the GNU system:
   51 
   52 socket.h troubles in GNU libc
   53 -----------------------------
   54 
   55 The libc header files, are "compiler dependant".
   56 
   57 There is no way around. Either you don't define __GCC__ and
   58 half of the things are missing (go figure which), or you
   59 define __GCC__ and be prepared to come against a
   60 "transparent union" argument to getsockname().
   61 
   62 Do we have to rewrite a clean libc?
   63 
   64 For the good-hearted hacker, some additional work will have to
   65 be done. Please edit /usr/include/socket.h
   66 See the mess. This has nothing to do with programming, and it is
   67 the dreadful perfectionism some people who get excited about their system,
   68 get into and screw everything up. Find 'transparent union'
   69 and where it sais "#if  (!defined __GNUC__ || ..."
   70 make it "#if __NCC__ || (!defined __GNUC__ || .."
   71 
   72 		``people who code too much, tend to get authoritative''
   73 ===========================================================================
   74