[aspectc-user] Problems building SVN version of Puma
vimml at selgrad.org
vimml at selgrad.org
Mon Mar 23 23:01:08 CET 2009
thank you for your feedback!
I tried a real clean build, but that failed, too. In the following I will comment on
what I did.
1. I created a clean directory and downloaded the aspectc stuff.
$ mkdir aspectc
$ cd aspectc/
$ wget http://www.aspectc.org/fileadmin/downloads/ac/1.0pre3/ac-bin-linux-1.0pre3.tar.gz
$ tar xfz ac-bin-linux-1.0pre3.tar.g
$ svn checkout https://svn.aspectc.org/repos/AspectC++-Project/trunk AspectC++-Project
2. I verified that I don't accidentally use a system version of ac++/ag++.
bash: ac++: command not found
bash: ag++: command not found
3. Some system information for you:
$ g++ --version
g++ (GCC) 4.1.2 (Gentoo 4.1.2 p1.1)
$ uname -msr
Linux 2.6.22-suspend2-r2 i686
4. I added the binary distribution to my PATH:
$ export PATH=$PATH:/home/kai/aspectc/ac-1.0pre3/
$ ac++ --version
ac++ 1.0pre3 (Mar 16 2006)
$ ag++ --version
ag++ 0.6 built: Mar 16 2006
5. Buiding Puma:
$ cd AspectC++-Project/Puma/
Copying sources not to weave...
Weaving aspects into PreFileIncluder.cc...
make: *** [/home/kai/aspectc/AspectC++-Project/Puma/gen-release/step2/src/PreFileIncluder.cc] Segmentation fault
make: *** [step2] Error 2
make: *** [src] Error 2
Setting EXTENSIONS="" there is no difference except that it crashes on gen-release/step2/src/CCSemVisitor.cc
(which is the first file to be processed in this case).
Setting AC=... does not help either.
6. I found the corresponding Make rule in src/weave.mk
The command line that segfaults is:
ac++ -DNDEBUG -I Puma/gen-release/step1/inc -I Puma/gen-release/step1/aspects -I Puma/gen-release/step1/src -r Puma/gen-release/puma.acp --config Puma/gen-release/puma.cfg --gen_size_type __SIZE_TYPE__ -p Puma/gen-release/step1 -c Puma/gen-release/step1/src/PreFileIncluder.cc -o Puma/gen-release/step2/src/PreFileIncluder.cc
For readability I removed all "-a ..." switches, as well as the path-prefix /home/kai/aspects/AspectC++-Project/.
Copying the line to the command line segfaults, too, as expected.
If you have a debug build I could tell you where it crashes using gdb.
Could this be a platform issue? My whole system is build for pentium3 (incl. g++). I don't have another machine available to test it on
a generic debian installation. If you think that the problem could be caused by this I'll set up a virtual machine, but since
this consumes a lot of time I would like to defer it, until I can be sure to know that it will show something interesting.
This in mind I tried to build http://www.aspectc.org/fileadmin/downloads/ac/1.0pre3/ac-woven-1.0pre3.tar.gz.
- It spits out a lot of 'incompatible implicit declaration of built-in function ‘exit’'
- Fails to build, because 'automaton.h:116: error: extra qualification ‘Automaton::’ on member ‘ScanStates’'
- Puma needs ac++, I guess I should try ac++ first.
- But making ac++ fails, too:
Making object file ObjFiles/linux-release/ACConfig.o.
Making object file ObjFiles/linux-release/ACProject.o.
Making object file ObjFiles/linux-release/ACWeaver.o.
IncludeExpander.h:70: error: extra qualification ‘IncludeExpander::’ on member ‘finish’
../Puma/include/Puma/PtrStack.h: In member function ‘void Puma::PtrStack<T>::Destroy() [with T = Puma::CTree]’:
../Puma/include/Puma/Builder.h:188: instantiated from here
../Puma/include/Puma/PtrStack.h:225: error: invalid conversion from ‘long int’ to ‘const char*’
../Puma/include/Puma/PtrStack.h:225: error: initializing argument 1 of ‘int remove(const char*)’
Slowly I'm getting the impression that I'm doing something terribly wrong... :(
I hope the information provided is useful to you guys, and in turn helps you giving me a clue on what's going on :)
Thank you for your time :)
More information about the aspectc-user