Bison 3.4.1 Crashes with Error 3328 when Built and Run within Cygwin

0

I have installed Cygwin 3.0.7 to my 64-bit Windows 10 system with the latest version of Flex, GCC, GNU M4, GNU Make, and GnuPG. I also have Strawberry Perl installed, and it exists after Cygwin in the path. I then build Bison using the following sequence of commands:

  • tar -xzf bison-3.4.1.tar.gz
  • cd bison-3.4.1
  • ./configure --disable-dependency-tracking --prefix=/cygdrive/C/some/install/path
  • make
  • make install

Everything in the above sequence appears to complete without issue. However, when I attempt to run Bison against a file that previously worked with Bison 3.0.4 that was bundled with Cygwin, the output file isn't generated and the %ERRORLEVEL% environment variable is set to 3328. I don't see anything in the event logs, nor can I find any information when searching for this error online. My command line is:

bison -d -v -o output.cpp input.ypp

The only output I get is:

input.ypp: warning: 4 shift/reduce conflicts [-Wconflicts-sr]

Can anyone think of a reason this wouldn't work properly, or know what error code 3328 means? Any ideas as to how I can debug this further?

BEGIN EDIT

I discovered some additional information. I was running the above commands within a Cygwin command prompt, then trying to run Bison from a Windows command prompt. If I remove my custom install directory (the --prefix option), then run from within with a Windows (which requires a full path) or Cygwin command prompt, everything works as expected. Therefore, I have narrowed it down to the --prefix argument. I am trying to build now from a Windows command prompt, but changed the --prefix argument to C:\some\install\path in order to see what happens.

Jeff G

Posted 2019-07-12T01:48:08.207

Reputation: 228

No answers