Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 856430 - media-gfx/openscad-2021.01-r4: fatal error: parser.hxx: No such file or directory
Summary: media-gfx/openscad-2021.01-r4: fatal error: parser.hxx: No such file or direc...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Bernd
URL:
Whiteboard:
Keywords: PullRequest
Depends on:
Blocks: parallel-make
  Show dependency tree
 
Reported: 2022-07-04 19:27 UTC by Ben Chaney
Modified: 2022-12-31 17:41 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
output of emerge --info (openscad.emerge.info,6.44 KB, text/plain)
2022-07-04 19:29 UTC, Ben Chaney
Details
openscad build log (build.log.gz,27.82 KB, application/gzip)
2022-07-04 19:29 UTC, Ben Chaney
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Ben Chaney 2022-07-04 19:27:26 UTC
When building media-gfx/openscad-2021.01-r4, the build fails with the following error:

src/lexer.l:36:10: fatal error: parser.hxx: No such file or directory
   36 | #include "parser.hxx"
      |          ^~~~~~~~~~~~
compilation terminated.
make: *** [Makefile:6119: objects/objects/lexer.o] Error 1
make: *** Waiting for unfinished jobs....
 * ERROR: media-gfx/openscad-2021.01-r4::gentoo failed (compile phase):
 *   emake failed


Reproducible: Always
Comment 1 Ben Chaney 2022-07-04 19:29:14 UTC
Created attachment 790073 [details]
output of emerge --info
Comment 2 Ben Chaney 2022-07-04 19:29:58 UTC
Created attachment 790076 [details]
openscad build log

gz compressed
Comment 3 Bernd 2022-07-05 17:02:20 UTC
I can't reproduce this. But I'm wondering why in your build the bison targets are missing.

Your log file has
Compiling source in /var/tmp/portage/media-gfx/openscad-2021.01-r4/work/openscad-2021.01 ...
make -j14 -l 14 
flex -o objects/lexer.cxx --header-file=objects/lexer.hxx src/lexer.l
/usr/lib64/qt5/bin/uic src/PrintInitDialog.ui -o objects/ui_PrintInitDialog.h -tr q_

My log file has
Compiling source in /var/tmp/portage/media-gfx/openscad-2021.01-r4/work/openscad-2021.01 ...
make -j16 
flex -o objects/lexer.cxx --header-file=objects/lexer.hxx src/lexer.l
flex -o objects/comment_lexer.cxx --header-file=objects/comment_lexer.hxx src/comment_lexer.l
bison -d -p parser -o objects/parser.cxx --defines=objects/parser.hxx src/parser.y
bison -d -p comment_parser -o objects/comment_parser.cxx --defines=objects/comment_parser.hxx src/comment_parser.y
/usr/lib64/qt5/bin/uic src/parameter/ParameterEntryWidget.ui -o objects/ui_ParameterEntryWidget.h -tr q_/usr/lib64/qt5/bin/uic src/parameter/ParameterWidget.ui -o objects/ui_ParameterWidget.h -tr q_
/usr/lib64/qt5/bin/uic src/Console.ui -o objects/ui_Console.h -tr q_
/usr/lib64/qt5/bin/uic src/ErrorLog.ui -o objects/ui_ErrorLog.h -tr q_
/usr/lib64/qt5/bin/uic src/input/AxisConfigWidget.ui -o objects/ui_AxisConfigWidget.h -tr q_
/usr/lib64/qt5/bin/uic src/input/ButtonConfigWidget.ui -o objects/ui_ButtonConfigWidget.h -tr q_
/usr/lib64/qt5/bin/uic src/OpenCSGWarningDialog.ui -o objects/ui_OpenCSGWarningDialog.h -tr q_
/usr/lib64/qt5/bin/uic src/AboutDialog.ui -o objects/ui_AboutDialog.h -tr q_
/usr/lib64/qt5/bin/uic src/FontListDialog.ui -o objects/ui_FontListDialog.h -tr q_
/usr/lib64/qt5/bin/uic src/PrintInitDialog.ui -o objects/ui_PrintInitDialog.h -tr q_

Not only the bison files, but also another flex file and a lot of dialog files are not compiled on your build.

Could this be a shell issue? I noticed you're using zsh and don't have an idea currently what could cause this issue.
Comment 4 Bernd 2022-07-06 04:52:07 UTC
The shell seems not to be the case for this issue. I used zsh and exported the SHELL variable to SHELL=/bin/zsh and can install the package successfully.
Comment 5 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-07-06 04:55:22 UTC
Guess is parallel build issue. Ben, does it happen with MAKEOPTS="-j1" ...?
Comment 6 Bernd 2022-07-06 05:04:54 UTC
Don't think so, I've run it with my default -j16, and with -j4 in my test environment.
Comment 7 Ben Chaney 2022-07-06 21:23:33 UTC
It doesn't happen with MAKEOPTS=-j1 on my machine
Comment 8 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-07-07 01:32:13 UTC
(In reply to Bernd from comment #6)
> Don't think so, I've run it with my default -j16, and with -j4 in my test
> environment.

That doesn't prove anything! :)
Comment 9 Bernd 2022-07-07 04:13:30 UTC
(In reply to Sam James from comment #8)
> (In reply to Bernd from comment #6)
> > Don't think so, I've run it with my default -j16, and with -j4 in my test
> > environment.
> 
> That doesn't prove anything! :)

Of course it doesn't :) I didn't say this couldn't be the cause.
Comment 10 Bernd 2022-08-31 18:01:25 UTC
Ben, would you like to test building the -9999 ebuild and see whether the bug is there as well? The live ebuild uses cmake instead of qmake for building, but the cmake based build is still in development upstream which is why it's not used by the 2021.01 package.
Comment 11 Larry the Git Cow gentoo-dev 2022-08-31 18:47:02 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bd249514fecc18fbfbe6836b7da5d3ff1a4229d9

commit bd249514fecc18fbfbe6836b7da5d3ff1a4229d9
Author:     Bernd Waibel <waebbl-gentoo@posteo.net>
AuthorDate: 2022-08-31 18:19:39 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2022-08-31 18:46:53 +0000

    media-gfx/openscad: workaround for parallel build failures
    
    Bug: https://github.com/openscad/openscad/issues/4344
    Closes: https://bugs.gentoo.org/856430
    Signed-off-by: Bernd Waibel <waebbl-gentoo@posteo.net>
    Closes: https://github.com/gentoo/gentoo/pull/27093
    Signed-off-by: Sam James <sam@gentoo.org>

 media-gfx/openscad/openscad-2021.01-r4.ebuild | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
Comment 12 Bernd 2022-08-31 19:29:02 UTC
Upstream just told me, they no longer support qmake builds. Though this release didn't have stable and working cmake build system on the date it was released.
Best bet currently would be to use the live ebuild until upstream releases a new version with cmake build system.

For details, please see the linked upstream issue.
Comment 13 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-08-31 19:30:32 UTC
(In reply to Bernd from comment #12)
> Upstream just told me, they no longer support qmake builds. Though this
> release didn't have stable and working cmake build system on the date it was
> released.
> Best bet currently would be to use the live ebuild until upstream releases a
> new version with cmake build system.
> 
> For details, please see the linked upstream issue.

Oh dear. Thanks for updating!