Build error on Mac and Linux Ubuntu

711 views
Skip to first unread message

Ashutosh Pandey

unread,
May 13, 2013, 5:42:08 PM5/13/13
to fast-d...@googlegroups.com
Hi,

I am getting following compilation error. Please help me out in fixing it.


bison -pfct_pddl -bscan-fct_pddl scan-fct_pddl.y
scan-fct_pddl.y: conflicts: 1 shift/reduce
gcc -c -O6 -Wall -g -ansi scan-fct_pddl.tab.c
scan-fct_pddl.tab.c: In function ‘fct_pddlparse’:
scan-fct_pddl.tab.c:1493: warning: implicit declaration of function ‘fct_pddllex’
scan-fct_pddl.y:163: warning: implicit declaration of function ‘fcterr’
scan-fct_pddl.y:191: warning: implicit declaration of function ‘fct_pddlerror’
In file included from scan-fct_pddl.y:701:
lex.fct_pddl.c:660:31: error: macro "fct_pddlwrap" passed 1 arguments, but takes just 0
scan-fct_pddl.y: At top level:
scan-fct_pddl.y:712: warning: conflicting types for ‘fcterr’
scan-fct_pddl.y:163: warning: previous implicit declaration of ‘fcterr’ was here
make: *** [scan-fct_pddl.tab.o] Error 1

Malte Helmert

unread,
May 13, 2013, 5:47:31 PM5/13/13
to fast-d...@googlegroups.com
On 13.05.2013 23:42, Ashutosh Pandey wrote:
> Hi,
>
> I am getting following compilation error. Please help me out in fixing it.
>
>
> bison -pfct_pddl -bscan-fct_pddl scan-fct_pddl.y

[...]

Deas Ashutosh,

this doesn't seem to be related to Fast Downward. Fast Downward doesn't
use flex or bison except for the VAL validator that is included with the
planner, and VAL doesn't use files with the filenames shown in your output.

From the filenames, this looks like FF or some planner derived from FF.
If you can tell us which planner you're trying to build, maybe we can
point you to someone who can help you with this, or maybe someone with
expertise for this planner is even reading along here.

Cheers,
Malte

> scan-fct_pddl.y: conflicts: 1 shift/reduce
> gcc -c -O6 -Wall -g -ansi scan-fct_pddl.tab.c
> scan-fct_pddl.tab.c: In function ‘fct_pddlparse’:
> scan-fct_pddl.tab.c:1493: warning: implicit declaration of function
> ‘fct_pddllex’
> scan-fct_pddl.y:163: warning: implicit declaration of function ‘fcterr’
> scan-fct_pddl.y:191: warning: implicit declaration of function
> ‘fct_pddlerror’
> In file included from scan-fct_pddl.y:701:
> lex.fct_pddl.c:660:31: error: macro "fct_pddlwrap" passed 1 arguments,
> but takes just 0
> scan-fct_pddl.y: At top level:
> scan-fct_pddl.y:712: warning: conflicting types for ‘fcterr’
> scan-fct_pddl.y:163: warning: previous implicit declaration of ‘fcterr’
> was here
> make: *** [scan-fct_pddl.tab.o] Error 1
>
> --
> You received this message because you are subscribed to the Google
> Groups "Fast Downward" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to fast-downwar...@googlegroups.com.
> For more options, visit https://groups.google.com/groups/opt_out.
>
>

Ashutosh Pandey

unread,
May 13, 2013, 10:59:41 PM5/13/13
to fast-d...@googlegroups.com
Yes, you are right. I am trying to build PROBABILISTIC-FF. I have downloaded source code from http://fai.cs.uni-saarland.de/hoffmann/cff.html
Are you aware of any better probability based planner? 

Regards,
Ashutosh

Malte Helmert

unread,
May 13, 2013, 11:09:12 PM5/13/13
to fast-d...@googlegroups.com, Ashutosh Pandey
On 14.05.2013 04:59, Ashutosh Pandey wrote:
> Yes, you are right. I am trying to build PROBABILISTIC-FF. I have
> downloaded source code from http://fai.cs.uni-saarland.de/hoffmann/cff.html

Well, I see that the Probabilistic-FF page contains a disclaimer about
not being able to help out with bison-related compilation issues, so I
fear you're on your own here, unless someone else on this list can help.

> Are you aware of any better probability based planner?

This depends on what you want to do with it. As a first step, it may be
worth checking out the homepages of the International Probabilistic
Planning Competitions. The most recent one is:

http://users.cecs.anu.edu.au/~ssanner/IPPC_2011/

Cheers,
Malte

William Cushing

unread,
May 14, 2013, 12:55:45 AM5/14/13
to fast-d...@googlegroups.com, Ashutosh Pandey
The web page for the competition has prominent links to the source code of four systems; each of which is a working link to an apparently usable web page.
I did not actually verify that downloading the code and building it works on my system (which anyways would be different from your system!), but I strongly suspect you will have better luck with any of those systems.

The FF code is legacy code: it is based on old parser-generator technology that is no longer maintained or supported.  Hoffmann's pages do document (somewhere) versions of bison/yacc that successfully generate the needed C code.  The same versions presumably work with CFF.  Unfortunately, you can't just take the generated parser/lexer from FF itself (as I recall, Hoffmann packages the C generated by the parser generators with FF, in order to mitigate the bitrot), because the syntax for probabilistic problems does differ.  You could of course contact the authors of CFF (which includes Hoffmann).

Newer systems do not (yet) suffer from this source of bitrot (so you should have less trouble).

-Will



Joerg Hoffmann

unread,
May 14, 2013, 6:29:54 AM5/14/13
to fast-d...@googlegroups.com, apand...@gmail.com
Just to note that "Hoffmann" is reading this list :-)

The parser of FF and its sequels is a bit itchy, but I for one would find it a bit funny to take this as a reason to use a different planner. People should be aware that this is not commercial software and it may take a little effort to get it running. (There may, of course, be other reasons to not use PFF... ;-)

There has been some history of what I provided people with to mitigate the bison/flex lack of downwards compatibility. I see some shadows of that history in what was said in this email exchange. The newest information about all this is on the FF (as opposed to CFF) page:

Those of you who have been in contact with FF before may be aware that for many years there has been trouble with the parser, that had been written in 1997 and did no longer comply with up-to-date bison/flex versions. I would like to extend a big fat thank-you to Andrew Coles of Strathclyde University, who took the time to look into this and fix it. The link above gives the new patched version of FF-v2.3. Andrew has tested this with flex 2.5.34 and 2.5.35, as well as bison 2.3 and 2.4.1. The changes needed were, after all, quite simple. Here's Andrew's description:

  • In lex-fct_pddl.l replace "#define fct_pddlwrap() 1" with "int fct_pddlwrap() { return 1; };"
  • In lex-ops_pddl.l replace "#define ops_pddlwrap() 1" with "int ops_pddlwrap() { return 1; };"
Doing these two changes in the corresponding files for PFF could, possibly, resolve the difficulties observed. Although this of course doesn't come with a guarantee. Otherwise, I would recommend to look into which versions of bison and flex are installed.

best,
Joerg

Jakub Gemrot

unread,
Apr 21, 2017, 2:31:53 AM4/21/17
to Fast Downward, apand...@gmail.com
Thanks for the link! I've been just able to compile it under Windows using Cygwin (be sure to install GCC, make, bison, flex to do that) + you need to modify makefile just comment out "$(error FF unsupported on Windows)" when compililng with Cygwin. 
Cheers!

Jakub

Dimitri Joukoff

unread,
Feb 25, 2020, 3:38:59 AM2/25/20
to Fast Downward
Whilst it isn't explicitly stated what platform this is being built on, I ran into the same error when using Apple's CLANG under MacOS 10.14.5 (Mojave).
Though the Makefile calls for GCC, MacOS runs Apple's version of GCC by default, which generates this error.
My solution was to install GCC from Homebrew, any version (I successfully tried 6 - 9).  However, Homebrew's Clang-9 also produces the same error, and I'm yet to test whether earlier/later versions work.

So, in the Makefile, change the line defining CC to:

CC=/usr/local/opt/llvm/bin/clang-9


Hope this helps anyone down the road.

Malte Helmert

unread,
Feb 25, 2020, 3:42:31 AM2/25/20
to fast-d...@googlegroups.com, Dimitri Joukoff
Dear Dimitry,

you are replying to a 7-year old message. :-)

If you encounter this problem, you are using a very old version of Fast
Downward. The mentioned error message comes from the "VAL" tool, which
we have removed from the Fast Downward codebase 4 years ago. We also
stopped using make several years ago, so these days you would configure
the cmake configuration rather than a Makefile.

I think if you switch to a newer version, e.g. version 2019.12 released
in December, things are likely to work out of the box on a reasonably
modern machine. (If not, we are always happy for a heads-up.)

Best regrads,
Malte
> --
> You received this message because you are subscribed to the Google
> Groups "Fast Downward" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to fast-downwar...@googlegroups.com
> <mailto:fast-downwar...@googlegroups.com>.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/fast-downward/b440e7a8-1984-42af-a1fc-ac4fad68d400%40googlegroups.com
> <https://groups.google.com/d/msgid/fast-downward/b440e7a8-1984-42af-a1fc-ac4fad68d400%40googlegroups.com?utm_medium=email&utm_source=footer>.

Reply all
Reply to author
Forward
0 new messages