Orange Forum • View topic - assoc.cpp error compiling Orange on Fedora

assoc.cpp error compiling Orange on Fedora

Report bugs (or imagined bugs).
(Archived/read-only, please use our ticketing system for reporting bugs and their discussion.)
Forum rules
Archived/read-only, please use our ticketing system for reporting bugs and their discussion.

assoc.cpp error compiling Orange on Fedora

Postby Guest » Mon Dec 06, 2004 20:16

I'm trying to compile Orange on Linux and having some trouble. I get the same error with both and

~/orange/source$ make
{a bunch of output that looks good}
Code: Select all
g++ -fPIC -w -DLINUX -O3 -DNO_NUMERIC -DNO_GSL -c orange/assoc.cpp -o obj/assoc.o
orange/assoc.cpp:36: error: too few template-parameter-lists
orange/assoc.cpp:36: error: expected `,' or `;' before '=' token
make: *** [obj/assoc.o] Error 1

Can anyone help me?

Thank you.

Postby Guest » Tue Dec 07, 2004 16:13

Same user as above, replying to myself.

I'm using Fedora Core 3 which uses gcc-3.4.2, under which Orange will not compile. The workaround is to use gcc-3.3 (called gcc33 and g++33 in FC3).

While this seems to work, it would be really nice if Orange could be compiled with the newest gcc. At least it deserves mention on the known issues page.

Postby Janez » Mon Dec 13, 2004 20:36


for reasons that are probably known to themselves, possibly (but not likely) to the Almighty, and surely not to me, the developers of gcc occassionally decide to take care of some "compatibility issues", which makes gcc more compatible with the standard and less with the existing applications.

I've gone through this twice already and both times it took me a week of programming to make Orange compile under the new gcc. This time they've decided to do something to the templates. I was able to fix the problem you complain about (I had to add a couple of "template <>" or "template" before some declarations), but then ran into some bigger problems. I've seen other peoples' complaints about it, but no working fix. After losing a day searching for a workaround, I got nothing.

And there's nothing wrong with my code! No syntactical ambiguities, nothing, I see absolutely no reason why the compiler shouldn't be able to understand it. It was perfectly able to compile it before, and MS VC 6.0 compiles it without any problems. Do I really need to spend so much time because of some gcc guys that strive to keep their compiler one step ahead of those who use it?

I don't know whether I can promise you anything, at least for the moment. I surely can't invest a week into fixing a code that is perfectly OK each time they decide to change something in the compiler to make it more "standard".

I'll put a notice on the download page ... but only after I cool down. :)


Return to Bugs