Wednesday, June 20, 2007

Sending a bugreport to the gcc people ...

This is not a howto , just my experience and searching.

After trying to install the new CAPS C Audio Plugin Suite with the developer's version of the Makefile , I got a message that I was asked to submit a full bug report .

I need to send a bugreport but I don't know how to do that, so I keep my own gathered knowledge here .

nr 1 to read : http://gcc.gnu.org/bugs.html
what they want is clear:

  • the exact version of GCC;
  • the system type;
  • the options given when GCC was configured/built;
This can be obtained from the output of gcc -v
peter@ubustudio:~$ gcc -v
Using built-in specs.
Target: i486-linux-gnu
Configured with: ../src/configure -v --enable-languages=c,c++,fortran,objc,obj-c++,treelang --prefix=/usr --enable-shared --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --enable-nls --program-suffix=- 4.1 --enable-__cxa_atexit --enable-clocale=gnu --enable-libstdcxx-debug --enable-mpfr --enable-checking=release i486-linux-gnu
Thread model: posix
gcc version 4.1.2 (Ubuntu 4.1.2-0ubuntu4)

  • the complete command line that triggers the bug;
peter@ubustudio:~$ tar xvfz caps_0.4.0.tar.gz peter@ubustudio:~$ cd caps-0.4.0/ peter@ubustudio:~$ ./configure.py peter@ubustudio:~$ make

  • the compiler output (error messages, warnings, etc.);
At my first attempt I got this :
g++ -O3 -ffast-math -funroll-loops -Wall -fPIC -DPIC -msse -mfpmath=sse -I/usr/local/include -c Amp.cc g++ -O3 -ffast-math -funroll-loops -Wall -fPIC -DPIC -msse -mfpmath=sse -I/usr/local/include -c Cabinet.cc g++ -O3 -ffast-math -funroll-loops -Wall -fPIC -DPIC -msse -mfpmath=sse -I/usr/local/include -c Chorus.cc g++ -O3 -ffast-math -funroll-loops -Wall -fPIC -DPIC -msse -mfpmath=sse -I/usr/local/include -c Click.cc g++ -O3 -ffast-math -funroll-loops -Wall -fPIC -DPIC -msse -mfpmath=sse -I/usr/local/include -c Clip.cc g++ -O3 -ffast-math -funroll-loops -Wall -fPIC -DPIC -msse -mfpmath=sse -I/usr/local/include -c Compress.cc g++ -O3 -ffast-math -funroll-loops -Wall -fPIC -DPIC -msse -mfpmath=sse -I/usr/local/include -c Eq.cc g++ -O3 -ffast-math -funroll-loops -Wall -fPIC -DPIC -msse -mfpmath=sse -I/usr/local/include -c HRTF.cc g++ -O3 -ffast-math -funroll-loops -Wall -fPIC -DPIC -msse -mfpmath=sse -I/usr/local/include -c interface.cc g++ -O3 -ffast-math -funroll-loops -Wall -fPIC -DPIC -msse -mfpmath=sse -I/usr/local/include -c Lorenz.cc g++ -O3 -ffast-math -funroll-loops -Wall -fPIC -DPIC -msse -mfpmath=sse -I/usr/local/include -c Pan.cc g++ -O3 -ffast-math -funroll-loops -Wall -fPIC -DPIC -msse -mfpmath=sse -I/usr/local/include -c Phaser.cc g++ -O3 -ffast-math -funroll-loops -Wall -fPIC -DPIC -msse -mfpmath=sse -I/usr/local/include -c Preamp.cc g++ -O3 -ffast-math -funroll-loops -Wall -fPIC -DPIC -msse -mfpmath=sse -I/usr/local/include -c Reverb.cc g++ -O3 -ffast-math -funroll-loops -Wall -fPIC -DPIC -msse -mfpmath=sse -I/usr/local/include -c Roessler.cc g++ -O3 -ffast-math -funroll-loops -Wall -fPIC -DPIC -msse -mfpmath=sse -I/usr/local/include -c Scape.cc g++ -O3 -ffast-math -funroll-loops -Wall -fPIC -DPIC -msse -mfpmath=sse -I/usr/local/include -c Sin.cc g++ -O3 -ffast-math -funroll-loops -Wall -fPIC -DPIC -msse -mfpmath=sse -I/usr/local/include -c SweepVF.cc g++ -O3 -ffast-math -funroll-loops -Wall -fPIC -DPIC -msse -mfpmath=sse -I/usr/local/include -c ToneControls.cc g++ -O3 -ffast-math -funroll-loops -Wall -fPIC -DPIC -msse -mfpmath=sse -I/usr/local/include -c ToneStack.cc Descriptor.h: In static member function 'static void Descriptor::_run_adding(void*, ulong) [with T = ToneStackLT]': Descriptor.h:209: internal compiler error: in clear_dead_regs, at regrename.c:134 Please submit a full bug report, with preprocessed source if appropriate. See http://gcc.gnu.org/bugs.html> for instructions. For Debian GNU/Linux specific bug reporting instructions, see . Preprocessed source stored into /tmp/ccjwOYnb.out file, please attach this to your bugreport. make: *** [ToneStack.o] Error 1
The workaround was like this :
peter@ubustudio:~$ gedit Makefile
I changed line 4 of Makefile to OPT=-O0
peter@ubustudio:~$ make clean
peter@ubustudio:~$ make
peter@ubustudio:~$ sudo make install

Now I didn't get any bug messages but a clean install and the software works.

  • the preprocessed file (*.i*) that triggers the bug, generated by adding -save-temps to the complete compilation command, or, in the case of a bug report for the GNAT front end, a complete set of source files (see below).
If I understand this well , I have to do the *gcc* command again but like this :
gcc -v -save-temps all-your-options source-file
this is with the -v -save-temps added to the gcc command.


Now I wonder "but the command I gave was make ". So probably the command was given from the Makefile or so. Let's take a look there.

No comments: