RE: DDD 3.3.8 recipe - was - RE: libtool created import libs brok en? was RE: DDD 3.3.8 (i686-pc-cygwin) gets `Segmentation fault
Resend - got denied because of attachment size, so I've uploaded my diffs to a web page. Ok, I think this is the quickest way to get a working (as far as I can tell, and I didn't play with it all that much, although I did load up the cxxtest.exe, set a breakpoint, run through, etc.) DDD 3.3.8 on cygwin: 1. Get the DDD 3.3.8 source and a gcc 3.3.x source. 2. Copy the gcc/include contents into ddd-3.3.8/include 3. Edit ddd-3.3.8/configure to remove the old_archive_from_expsyms_cmds variable (patch below, which is just in the cygwin section of configure): bash-2.05b$ diff -u ddd-3.3.8-orig/configure ddd-3.3.8/configure --- ddd-3.3.8-orig/configure2003-10-22 15:29:40.0 -0400 +++ ddd-3.3.8/configure 2003-12-05 11:34:05.948423800 -0500 @@ -9492,7 +9492,8 @@ else $CC -o impgen impgen.c ; fi)~ $output_objdir/impgen $dir/$soroot $output_objdir/$soname-def' -old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib' +#old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib' +old_archive_from_expsyms_cmds= # cygwin and mingw dlls have different entry points and sets of symbols # to exclude. 4. bash ./configure 5. Edit all of ddd/*.C ddd/*.h to remove or guard all #pragma interface and #pragma implementation lines. 6. make 7. make install 8. run as normal. The usual disclaimers apply. I have included the output of: diff -u -r -N ddd-3.3.8-orig/ ddd-3.3.8 Available at: http://bellsouthpwp.net/u/l/ulvester/iffs.gz Feel free to play with it if the prospect of handediting 500 .C and .h files doesn't thrill you. -Richard Campbell.
Re: DDD 3.3.8 recipe - was - RE: libtool created import libs brok en? was RE: DDD 3.3.8 (i686-pc-cygwin) gets `Segmentation fault
Subbu, S Iyer wrote: Step no 2 (copying the gcc include files) is no longer necessary as it is subsumed by the diff. So all that needs done to get a working ddd is: 1. cp -r ddd-3.3.8 ddd-3.3.8-orig 2. wget http://bellsouthpwp.net/u/l/ulvester/iffs.gz gunzip -c iffs.gz | patch -p0 3. cd ddd-3.3.8 bash ./configure make make install Thanks to all who got this fixed so quickly, esp to Richard. Thanks for the recipe. Will it be possible to get this into cygwin's setup.exe? Well, I am working on building the package, but I get a silly error: configure: configuring in libiberty configure: running /bin/bash '/home/harold/x-devel/4.3/ports/ddd/ddd-3.3.8/libiberty/configure' --prefix=/usr '--srcdir=/home/harold/x-devel/4.3/ports/ddd/ddd-3.3.8' '--prefix=/usr' '--exec-prefix=/usr' '--sysconfdir=/etc' '--libdir=/usr/lib' '--includedir=/usr/include' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--libexecdir=${sbindir}' '--localstatedir=/var' '--datadir=${prefix}/share' 'CFLAGS=-O2' 'LDFLAGS=' --cache-file=/dev/null --srcdir=/home/harold/x-devel/4.3/ports/ddd/ddd-3.3.8/libiberty configure: warning: CFLAGS=-O2: invalid host type configure: warning: LDFLAGS=: invalid host type configure: error: can only configure for one host and one target at a time configure: error: /bin/bash '/home/harold/x-devel/4.3/ports/ddd/ddd-3.3.8/libiberty/configure' failed for libiberty This is due to the way that the configure script for libiberty is called in configure.ac: if test $ddd_have_libiberty != true; then # Avoid calling config.guess again. In libiberty, this destroys dummy.c. old_ac_configure_args=$ac_configure_args case $ac_configure_args in *--host*) ;; *) ac_configure_args=$ac_configure_args --build=$build --target=$target;; esac AC_CONFIG_SUBDIRS([libiberty]) ac_configure_args=$old_ac_configure_args fi I haven't looked into it enough to fix it at the moment (gotta drive somewhere in a few minutes). I would appreciate it if someone had a fix or suggested fix waiting for me when I plugged into the net again. :) By the way, the packaging script calls configure like so: conf() { (cd ${objdir} \ CFLAGS=${MY_CFLAGS} LDFLAGS=${MY_LDFLAGS} \ ${srcdir}/configure \ --srcdir=${srcdir} --prefix=${prefix} \ --exec-prefix=${prefix} --sysconfdir=${sysconfdir} \ --libdir=${prefix}/lib --includedir=${prefix}/include \ --mandir=${prefix}/share/man --infodir=${prefix}/share/info \ --libexecdir='${sbindir}' --localstatedir=/var \ --datadir='${prefix}/share' ) } Harold
RE: DDD 3.3.8 recipe - was - RE: libtool created import libs brok en? was RE: DDD 3.3.8 (i686-pc-cygwin) gets `Segmentation fault
This is due to the way that the configure script for libiberty is called in configure.ac: If I was paying attention, libiberty uses autoconf 2.13 or similar, and the other pieces use 2.5...That's going to be a real pain to set up, I think... -Richard Campbell.
Re: DDD 3.3.8 recipe - was - RE: libtool created import libs brok en? was RE: DDD 3.3.8 (i686-pc-cygwin) gets `Segmentation fault
Richard Campbell wrote: This is due to the way that the configure script for libiberty is called in configure.ac: If I was paying attention, libiberty uses autoconf 2.13 or similar, and the other pieces use 2.5...That's going to be a real pain to set up, I think... It's just our top-level configure being stupid and passing CFLAGS and LDFLAGS as options instead of as environment variables. I don't think it matters what version of autoconf libiberty is using (at least not for this problem). Harold
Re: DDD 3.3.8 recipe - was - RE: libtool created import libs brok en? was RE: DDD 3.3.8 (i686-pc-cygwin) gets `Segmentation fault
On Fri, 5 Dec 2003, Harold L Hunt II wrote: Richard Campbell wrote: Harold L Hunt II wrote: This is due to the way that the configure script for libiberty is called in configure.ac: If I was paying attention, libiberty uses autoconf 2.13 or similar, and the other pieces use 2.5...That's going to be a real pain to set up, I think... It's just our top-level configure being stupid and passing CFLAGS and LDFLAGS as options instead of as environment variables. I don't think it matters what version of autoconf libiberty is using (at least not for this problem). HTH http://cvs.sourceforge.net/viewcvs.py/ddd/ddd/PROBLEMS?r1=1.106r2=1.107 -- Brian Ford Senior Realtime Software Engineer VITAL - Visual Simulation Systems FlightSafety International Phone: 314-551-8460 Fax: 314-551-8444
Re: DDD 3.3.8 recipe - was - RE: libtool created import libs brok en? was RE: DDD 3.3.8 (i686-pc-cygwin) gets `Segmentation fault
Brian, Brian Ford wrote: On Fri, 5 Dec 2003, Harold L Hunt II wrote: Richard Campbell wrote: Harold L Hunt II wrote: This is due to the way that the configure script for libiberty is called in configure.ac: If I was paying attention, libiberty uses autoconf 2.13 or similar, and the other pieces use 2.5...That's going to be a real pain to set up, I think... It's just our top-level configure being stupid and passing CFLAGS and LDFLAGS as options instead of as environment variables. I don't think it matters what version of autoconf libiberty is using (at least not for this problem). HTH http://cvs.sourceforge.net/viewcvs.py/ddd/ddd/PROBLEMS?r1=1.106r2=1.107 Thanks. That is exactly what I wanted to know. Harold
Re: DDD 3.3.8 recipe - was - RE: libtool created import libs brok en? was RE: DDD 3.3.8 (i686-pc-cygwin) gets `Segmentation fault
Subbu, The patch is no good. It takes the following: #ifdef __GNUG__ #pragma implementation foo.h #endif and turns it into: #ifdef __GNUG__ #ifndef __CYGWIN__ #pragma implementation #endif foo.h #endif Here is an example: #ifdef __GNUG__ +#ifndef __CYGWIN__ #pragma implementation -#pragma implementation Map.h +#endif +#ifndef __CYGWIN__ +#pragma implementation +#endif Map.h #endif The mistake was matching only #pragma implementation (.*) and replacing that with #ifndef __CYGWIN__ #pragma implementation #endif (.*) instead of replacing it with #ifndef __CYGWIN__ #pragma implementation (.*) #endif. Could you send in the original search and replace command (or string of commands) that you used to do this so that I can fix it and run the change again? Harold S Iyer wrote: Step no 2 (copying the gcc include files) is no longer necessary as it is subsumed by the diff. So all that needs done to get a working ddd is: 1. cp -r ddd-3.3.8 ddd-3.3.8-orig 2. wget http://bellsouthpwp.net/u/l/ulvester/iffs.gz gunzip -c iffs.gz | patch -p0 3. cd ddd-3.3.8 bash ./configure make make install Thanks to all who got this fixed so quickly, esp to Richard. Will it be possible to get this into cygwin's setup.exe? Thanks --subbu On Fri, Dec 05, 2003 at 01:39:43PM -0500, Richard Campbell wrote: Resend - got denied because of attachment size, so I've uploaded my diffs to a web page. Ok, I think this is the quickest way to get a working (as far as I can tell, and I didn't play with it all that much, although I did load up the cxxtest.exe, set a breakpoint, run through, etc.) DDD 3.3.8 on cygwin: 1. Get the DDD 3.3.8 source and a gcc 3.3.x source. 2. Copy the gcc/include contents into ddd-3.3.8/include 3. Edit ddd-3.3.8/configure to remove the old_archive_from_expsyms_cmds variable (patch below, which is just in the cygwin section of configure): bash-2.05b$ diff -u ddd-3.3.8-orig/configure ddd-3.3.8/configure --- ddd-3.3.8-orig/configure2003-10-22 15:29:40.0 -0400 +++ ddd-3.3.8/configure 2003-12-05 11:34:05.948423800 -0500 @@ -9492,7 +9492,8 @@ else $CC -o impgen impgen.c ; fi)~ $output_objdir/impgen $dir/$soroot $output_objdir/$soname-def' -old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib' +#old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib' +old_archive_from_expsyms_cmds= # cygwin and mingw dlls have different entry points and sets of symbols # to exclude. 4. bash ./configure 5. Edit all of ddd/*.C ddd/*.h to remove or guard all #pragma interface and #pragma implementation lines. 6. make 7. make install 8. run as normal. The usual disclaimers apply. I have included the output of: diff -u -r -N ddd-3.3.8-orig/ ddd-3.3.8 Available at: http://bellsouthpwp.net/u/l/ulvester/iffs.gz Feel free to play with it if the prospect of handediting 500 .C and .h files doesn't thrill you. -Richard Campbell.
Re: DDD 3.3.8 recipe - was - RE: libtool created import libs brok en? was RE: DDD 3.3.8 (i686-pc-cygwin) gets `Segmentation fault
Odd, Richard's patch seems to work perfectly for me. I don't get any such error! -subbu PS: It is Richard's patch, I only wanted to point out that the move gcc includes to ddd include is unnecessary. On Fri, Dec 05, 2003 at 05:00:54PM -0500, Harold L Hunt II wrote: Date: Fri, 05 Dec 2003 17:00:54 -0500 From: Harold L Hunt II [EMAIL PROTECTED] To: [EMAIL PROTECTED] Subject: Re: DDD 3.3.8 recipe - was - RE: libtool created import libs brok en? was RE: DDD 3.3.8 (i686-pc-cygwin) gets `Segmentation fault Subbu, S Iyer wrote: Step no 2 (copying the gcc include files) is no longer necessary as it is subsumed by the diff. So all that needs done to get a working ddd is: 1. cp -r ddd-3.3.8 ddd-3.3.8-orig 2. wget http://bellsouthpwp.net/u/l/ulvester/iffs.gz gunzip -c iffs.gz | patch -p0 3. cd ddd-3.3.8 bash ./configure make make install Thanks to all who got this fixed so quickly, esp to Richard. Thanks for the recipe. Will it be possible to get this into cygwin's setup.exe? Well, I am working on building the package, but I get a silly error: configure: configuring in libiberty configure: running /bin/bash '/home/harold/x-devel/4.3/ports/ddd/ddd-3.3.8/libiberty/configure' --prefix=/usr '--srcdir=/home/harold/x-devel/4.3/ports/ddd/ddd-3.3.8' '--prefix=/usr' '--exec-prefix=/usr' '--sysconfdir=/etc' '--libdir=/usr/lib' '--includedir=/usr/include' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--libexecdir=${sbindir}' '--localstatedir=/var' '--datadir=${prefix}/share' 'CFLAGS=-O2' 'LDFLAGS=' --cache-file=/dev/null --srcdir=/home/harold/x-devel/4.3/ports/ddd/ddd-3.3.8/libiberty configure: warning: CFLAGS=-O2: invalid host type configure: warning: LDFLAGS=: invalid host type configure: error: can only configure for one host and one target at a time configure: error: /bin/bash '/home/harold/x-devel/4.3/ports/ddd/ddd-3.3.8/libiberty/configure' failed for libiberty This is due to the way that the configure script for libiberty is called in configure.ac: if test $ddd_have_libiberty != true; then # Avoid calling config.guess again. In libiberty, this destroys dummy.c. old_ac_configure_args=$ac_configure_args case $ac_configure_args in *--host*) ;; *) ac_configure_args=$ac_configure_args --build=$build --target=$target;; esac AC_CONFIG_SUBDIRS([libiberty]) ac_configure_args=$old_ac_configure_args fi I haven't looked into it enough to fix it at the moment (gotta drive somewhere in a few minutes). I would appreciate it if someone had a fix or suggested fix waiting for me when I plugged into the net again. :) By the way, the packaging script calls configure like so: conf() { (cd ${objdir} \ CFLAGS=${MY_CFLAGS} LDFLAGS=${MY_LDFLAGS} \ ${srcdir}/configure \ --srcdir=${srcdir} --prefix=${prefix} \ --exec-prefix=${prefix} --sysconfdir=${sysconfdir} \ --libdir=${prefix}/lib --includedir=${prefix}/include \ --mandir=${prefix}/share/man --infodir=${prefix}/share/info \ --libexecdir='${sbindir}' --localstatedir=/var \ --datadir='${prefix}/share' ) } Harold --
Re: DDD 3.3.8 recipe - was - RE: libtool created import libs brok en? was RE: DDD 3.3.8 (i686-pc-cygwin) gets `Segmentation fault
Harold, it is Richard's patch not mine. I was only pointing out that one step in the recipe should be removed - if you move the gcc/include into ddd/include, then patch gets confused on those files. That said, the error is in non-cygwin case, which is why the whole compilation went through flawlessly for me! Richard, can you fix this appropriately? Thanks, --subbu On Fri, Dec 05, 2003 at 08:01:20PM -0500, Harold L Hunt II wrote: Subbu, The patch is no good. It takes the following: #ifdef __GNUG__ #pragma implementation foo.h #endif and turns it into: #ifdef __GNUG__ #ifndef __CYGWIN__ #pragma implementation #endif foo.h #endif Here is an example: #ifdef __GNUG__ +#ifndef __CYGWIN__ #pragma implementation -#pragma implementation Map.h +#endif +#ifndef __CYGWIN__ +#pragma implementation +#endif Map.h #endif The mistake was matching only #pragma implementation (.*) and replacing that with #ifndef __CYGWIN__ #pragma implementation #endif (.*) instead of replacing it with #ifndef __CYGWIN__ #pragma implementation (.*) #endif. Could you send in the original search and replace command (or string of commands) that you used to do this so that I can fix it and run the change again? Harold S Iyer wrote: Step no 2 (copying the gcc include files) is no longer necessary as it is subsumed by the diff. So all that needs done to get a working ddd is: 1. cp -r ddd-3.3.8 ddd-3.3.8-orig 2. wget http://bellsouthpwp.net/u/l/ulvester/iffs.gz gunzip -c iffs.gz | patch -p0 3. cd ddd-3.3.8 bash ./configure make make install Thanks to all who got this fixed so quickly, esp to Richard. Will it be possible to get this into cygwin's setup.exe? Thanks --subbu On Fri, Dec 05, 2003 at 01:39:43PM -0500, Richard Campbell wrote: Resend - got denied because of attachment size, so I've uploaded my diffs to a web page. Ok, I think this is the quickest way to get a working (as far as I can tell, and I didn't play with it all that much, although I did load up the cxxtest.exe, set a breakpoint, run through, etc.) DDD 3.3.8 on cygwin: 1. Get the DDD 3.3.8 source and a gcc 3.3.x source. 2. Copy the gcc/include contents into ddd-3.3.8/include 3. Edit ddd-3.3.8/configure to remove the old_archive_from_expsyms_cmds variable (patch below, which is just in the cygwin section of configure): bash-2.05b$ diff -u ddd-3.3.8-orig/configure ddd-3.3.8/configure --- ddd-3.3.8-orig/configure2003-10-22 15:29:40.0 -0400 +++ ddd-3.3.8/configure 2003-12-05 11:34:05.948423800 -0500 @@ -9492,7 +9492,8 @@ else $CC -o impgen impgen.c ; fi)~ $output_objdir/impgen $dir/$soroot $output_objdir/$soname-def' -old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib' +#old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib' +old_archive_from_expsyms_cmds= # cygwin and mingw dlls have different entry points and sets of symbols # to exclude. 4. bash ./configure 5. Edit all of ddd/*.C ddd/*.h to remove or guard all #pragma interface and #pragma implementation lines. 6. make 7. make install 8. run as normal. The usual disclaimers apply. I have included the output of: diff -u -r -N ddd-3.3.8-orig/ ddd-3.3.8 Available at: http://bellsouthpwp.net/u/l/ulvester/iffs.gz Feel free to play with it if the prospect of handediting 500 .C and .h files doesn't thrill you. -Richard Campbell. --
Re: DDD 3.3.8 recipe - was - RE: libtool created import libs brok en? was RE: DDD 3.3.8 (i686-pc-cygwin) gets `Segmentation fault
No need. I fixed my local version by hand. Harold S Iyer wrote: Harold, it is Richard's patch not mine. I was only pointing out that one step in the recipe should be removed - if you move the gcc/include into ddd/include, then patch gets confused on those files. That said, the error is in non-cygwin case, which is why the whole compilation went through flawlessly for me! Richard, can you fix this appropriately? Thanks, --subbu On Fri, Dec 05, 2003 at 08:01:20PM -0500, Harold L Hunt II wrote: Subbu, The patch is no good. It takes the following: #ifdef __GNUG__ #pragma implementation foo.h #endif and turns it into: #ifdef __GNUG__ #ifndef __CYGWIN__ #pragma implementation #endif foo.h #endif Here is an example: #ifdef __GNUG__ +#ifndef __CYGWIN__ #pragma implementation -#pragma implementation Map.h +#endif +#ifndef __CYGWIN__ +#pragma implementation +#endif Map.h #endif The mistake was matching only #pragma implementation (.*) and replacing that with #ifndef __CYGWIN__ #pragma implementation #endif (.*) instead of replacing it with #ifndef __CYGWIN__ #pragma implementation (.*) #endif. Could you send in the original search and replace command (or string of commands) that you used to do this so that I can fix it and run the change again? Harold S Iyer wrote: Step no 2 (copying the gcc include files) is no longer necessary as it is subsumed by the diff. So all that needs done to get a working ddd is: 1. cp -r ddd-3.3.8 ddd-3.3.8-orig 2. wget http://bellsouthpwp.net/u/l/ulvester/iffs.gz gunzip -c iffs.gz | patch -p0 3. cd ddd-3.3.8 bash ./configure make make install Thanks to all who got this fixed so quickly, esp to Richard. Will it be possible to get this into cygwin's setup.exe? Thanks --subbu On Fri, Dec 05, 2003 at 01:39:43PM -0500, Richard Campbell wrote: Resend - got denied because of attachment size, so I've uploaded my diffs to a web page. Ok, I think this is the quickest way to get a working (as far as I can tell, and I didn't play with it all that much, although I did load up the cxxtest.exe, set a breakpoint, run through, etc.) DDD 3.3.8 on cygwin: 1. Get the DDD 3.3.8 source and a gcc 3.3.x source. 2. Copy the gcc/include contents into ddd-3.3.8/include 3. Edit ddd-3.3.8/configure to remove the old_archive_from_expsyms_cmds variable (patch below, which is just in the cygwin section of configure): bash-2.05b$ diff -u ddd-3.3.8-orig/configure ddd-3.3.8/configure --- ddd-3.3.8-orig/configure2003-10-22 15:29:40.0 -0400 +++ ddd-3.3.8/configure 2003-12-05 11:34:05.948423800 -0500 @@ -9492,7 +9492,8 @@ else $CC -o impgen impgen.c ; fi)~ $output_objdir/impgen $dir/$soroot $output_objdir/$soname-def' -old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib' +#old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib' +old_archive_from_expsyms_cmds= # cygwin and mingw dlls have different entry points and sets of symbols # to exclude. 4. bash ./configure 5. Edit all of ddd/*.C ddd/*.h to remove or guard all #pragma interface and #pragma implementation lines. 6. make 7. make install 8. run as normal. The usual disclaimers apply. I have included the output of: diff -u -r -N ddd-3.3.8-orig/ ddd-3.3.8 Available at: http://bellsouthpwp.net/u/l/ulvester/iffs.gz Feel free to play with it if the prospect of handediting 500 .C and .h files doesn't thrill you. -Richard Campbell.
Re: DDD 3.3.8 recipe - was - RE: libtool created import libs brok en? was RE: DDD 3.3.8 (i686-pc-cygwin) gets `Segmentation fault
Since the required fix seemed to be a simple find and replace, I did it myself: the new patch is at http://www.cs.utexas.edu/~subbuk/cygwin-ddd-patch.gz So the new recipe is as follows: 1. cp -r ddd-3.3.8 ddd-3.3.8-orig 2. wget http://www.cs.utexas.edu/~subbuk/cygwin-ddd-patch.gz gunzip -c cygwin-ddd-patch.gz | patch -p0 3. cd ddd-3.3.8 bash ./configure make make install Thanks, --subbu On Fri, Dec 05, 2003 at 08:08:21PM -0600, S Iyer wrote: Harold, it is Richard's patch not mine. I was only pointing out that one step in the recipe should be removed - if you move the gcc/include into ddd/include, then patch gets confused on those files. That said, the error is in non-cygwin case, which is why the whole compilation went through flawlessly for me! Richard, can you fix this appropriately? Thanks, --subbu On Fri, Dec 05, 2003 at 08:01:20PM -0500, Harold L Hunt II wrote: Subbu, The patch is no good. It takes the following: #ifdef __GNUG__ #pragma implementation foo.h #endif and turns it into: #ifdef __GNUG__ #ifndef __CYGWIN__ #pragma implementation #endif foo.h #endif Here is an example: #ifdef __GNUG__ +#ifndef __CYGWIN__ #pragma implementation -#pragma implementation Map.h +#endif +#ifndef __CYGWIN__ +#pragma implementation +#endif Map.h #endif The mistake was matching only #pragma implementation (.*) and replacing that with #ifndef __CYGWIN__ #pragma implementation #endif (.*) instead of replacing it with #ifndef __CYGWIN__ #pragma implementation (.*) #endif. Could you send in the original search and replace command (or string of commands) that you used to do this so that I can fix it and run the change again? Harold S Iyer wrote: Step no 2 (copying the gcc include files) is no longer necessary as it is subsumed by the diff. So all that needs done to get a working ddd is: 1. cp -r ddd-3.3.8 ddd-3.3.8-orig 2. wget http://bellsouthpwp.net/u/l/ulvester/iffs.gz gunzip -c iffs.gz | patch -p0 3. cd ddd-3.3.8 bash ./configure make make install Thanks to all who got this fixed so quickly, esp to Richard. Will it be possible to get this into cygwin's setup.exe? Thanks --subbu On Fri, Dec 05, 2003 at 01:39:43PM -0500, Richard Campbell wrote: Resend - got denied because of attachment size, so I've uploaded my diffs to a web page. Ok, I think this is the quickest way to get a working (as far as I can tell, and I didn't play with it all that much, although I did load up the cxxtest.exe, set a breakpoint, run through, etc.) DDD 3.3.8 on cygwin: 1. Get the DDD 3.3.8 source and a gcc 3.3.x source. 2. Copy the gcc/include contents into ddd-3.3.8/include 3. Edit ddd-3.3.8/configure to remove the old_archive_from_expsyms_cmds variable (patch below, which is just in the cygwin section of configure): bash-2.05b$ diff -u ddd-3.3.8-orig/configure ddd-3.3.8/configure --- ddd-3.3.8-orig/configure2003-10-22 15:29:40.0 -0400 +++ ddd-3.3.8/configure 2003-12-05 11:34:05.948423800 -0500 @@ -9492,7 +9492,8 @@ else $CC -o impgen impgen.c ; fi)~ $output_objdir/impgen $dir/$soroot $output_objdir/$soname-def' -old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib' +#old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib' +old_archive_from_expsyms_cmds= # cygwin and mingw dlls have different entry points and sets of symbols # to exclude. 4. bash ./configure 5. Edit all of ddd/*.C ddd/*.h to remove or guard all #pragma interface and #pragma implementation lines. 6. make 7. make install 8. run as normal. The usual disclaimers apply. I have included the output of: diff -u -r -N ddd-3.3.8-orig/ ddd-3.3.8 Available at: http://bellsouthpwp.net/u/l/ulvester/iffs.gz Feel free to play with it if the prospect of handediting 500 .C and .h files doesn't thrill you. -Richard Campbell. -- --