Summary: | lilypond ebuild won't compile | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Mark Van den Borre <mark> |
Component: | Current packages | Assignee: | Aron Griffis (RETIRED) <agriffis> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | gentoobugzilla, johan, mike, mwishek, rigo |
Priority: | High | ||
Version: | 1.2 | ||
Hardware: | x86 | ||
OS: | Linux | ||
URL: | http://markvdb.be/lilyponderrors | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
output.lilypond-1.6.0 (GCC 3.2 issue)
lilypond-1.6.0.ebuild lilypond-1.6.1.ebuild lilypond-1.7.0.ebuild guile-1.6.0.ebuild lilypond-1.6.5.ebuild new 1.6.5 ebuild compiles with gcc-3.2 lilypond-1.6.6.ebuild |
Description
Mark Van den Borre
2002-07-08 05:05:55 UTC
For me, lilypond emerge fails when compiling the parser file: rm -f ./out/musical-request.dep; DEPENDENCIES_OUTPUT="./out/musical-request.dep ./out/musical-request.o" c++ -c -DHAVE_CONFIG_H -DSTRING_UTILS_INLINED -Iinclude -I./out -I.././lib/include -I../lib/./out -I.././flower/include -I../flower/./out -I../flower/include -march=i686 -O3 -pipe -O2 -finline-functions -g -march=i686 -O3 -pipe -O2 -finline-functions -g -DSTRING_UTILS_INLINED -I/usr/include -Wall -W -Wmissing-prototypes -Wconversion -o out/musical-request.o musical-request.cc bison -d parser.yy parser.yy:1494: warning: previous rule lacks an ending `;' parser.yy contains 2 shift/reduce conflicts. mv parser.yy.tab.h out/parser.hh mv: cannot stat `parser.yy.tab.h': No such file or directory make[1]: *** [out/parser.hh] Error 1 make[1]: Leaving directory `/var/tmp/portage/lilypond-1.5.15/work/lilypond-1.5.15/lily' make: *** [all] Error 2 Well, I am no musician Mark, but I had the same problem...:'-( but then I found...1.6.0 :-D ! Made a new ebuild to consider my 'special 3.x needs'... This aproach seems to get me quite far in the build, but then I start to get my 3.2 C++ errors again :'-( Can anyone test if it does work on 2.95 ? Rigo Created attachment 3234 [details]
output.lilypond-1.6.0 (GCC 3.2 issue)
Created attachment 3235 [details]
lilypond-1.6.0.ebuild
Sorry 4 the delay....bugs.gentoo.org went down ? ;-/ I have a 1.2 system with GCC 2.95.3. I got the same error as above with the
1.5.15 package. I tried the 1.6.0 ebuild, and it compile without a hitch but
couldn't install, same with 1.6.1.
Here is the install error message:
>>> Install lilypond-1.6.1 into /var/tmp/portage/lilypond-1.6.1/image/
category media-sound
/bin/sh
/var/tmp/portage/lilypond-1.6.1/work/lilypond-1.6.1/stepmake/stepmake/../bin/install-sh
-c -d /usr/share/lilypond/1.6.1
ACCESS DENIED mkdir: /usr/share/lilypond
mkdir: cannot create directory `/usr/share/lilypond': Permission denied
ACCESS DENIED mkdir: /usr/share/lilypond/1.6.1
mkdir: cannot create directory `/usr/share/lilypond/1.6.1': Permission denied
make: [local-install-files] Error 1 (ignored)
/bin/sh
/var/tmp/portage/lilypond-1.6.1/work/lilypond-1.6.1/stepmake/stepmake/../bin/install-sh
-c -m 644 ./config.make /usr/share/lilypond/1.6.1/ && /bin/sh
/var/tmp/portage/lilypond-1.6.1/work/lilypond-1.6.1/stepmake/stepmake/../bin/install-sh
-c -m 644 VERSION /usr/share/lilypond/1.6.1/ &&true
ACCESS DENIED mkdir: /usr/share/lilypond
mkdir: cannot create directory `/usr/share/lilypond': Permission denied
ACCESS DENIED mkdir: /usr/share/lilypond/1.6.1
mkdir: cannot create directory `/usr/share/lilypond/1.6.1': Permission denied
ACCESS DENIED open_wr: /usr/share/lilypond/1.6.1/#inst.17050#
cp: cannot create regular file `/usr/share/lilypond/1.6.1/#inst.17050#':
Permission denied
make: *** [local-install-files] Error 1
!!! ERROR: The ebuild did not complete successfully.
!!! Function src_install, Line 1, Exitcode 2
!!! (no error message)
!!! emerge aborting on
/usr/portage/media-sound/lilypond/lilypond-1.6.1.ebuild .
Created attachment 3692 [details]
lilypond-1.6.1.ebuild
It should install ok for 2.95 now (3.2 still fails :'-(
Created attachment 4254 [details]
lilypond-1.7.0.ebuild
Maybe this helps ?
ps. You need the next (new) ebuild for guile too...I've read somewhere that
this version isn't compatible with the current version of gnucash though...So
it's what you prefer ;-)
Created attachment 4255 [details] guile-1.6.0.ebuild * dev-util/guile Latest version available: 1.6.0 Latest version installed: 1.6.0 Homepage: http://www.gnu.org/software/guile/ Description: Guile is an interpreter for Scheme Needed by lilypond-1.7.0.ebuild...Have no testing-experience yet, so use at your own 'risk' ;-p I found this on the homepage: # Flex (version 2.5.4a or newer). Check out the Flex webpage. WARNING: plain Flex 2.5.4(a) generates invalid C++ code. GCC 3.x chokes on this. If you wish to use GCC 3.x, make sure that your distribution supports g++ 3.x and flex. For workarounds, see lexer-gcc-3.0.patch and lexer-gcc-3.1.sh in the source directory. Exact link here: http://lilypond.org/stable/Documentation/topdocs/out-www/INSTALL.html#TOC7 This is what i have on my system (1.4): gentoo root # flex --version flex version 2.5.4 1.7.x is the current development series. 1.6.x is the current stable series and is quite recent. 1.6.5 is the current stable release. In my opinion, we should ignore 1.7.x until it becomes 1.8 (or maybe provide masked 1.7.x ebuilds in addition to unmasked 1.6.x ebuilds?). Johan - The workaround you bring up has already been included in Rigo's 1.6.x ebuilds. Unfortunately, there are still problems with gcc 3.2. Created attachment 4411 [details]
lilypond-1.6.5.ebuild
This is based on The 1.6.1 ebuild above.
Changes:
- updated to current stable release 1.6.5
- generalized ${MY_PV}
- separated DEPEND and RDEPEND (I know this doesn't do anything now, but
someday. . .)
- added web documentation build with "use doc"
- fixed some sandbox problems in src_install
- updated the dodoc stuff
- automatically runs clean-fonts script
Bugs:
- doc build doesn't quite work yet, but it is close
- still doesn't build with gcc 3.2
Created attachment 4863 [details]
new 1.6.5 ebuild compiles with gcc-3.2
The problems with lilypond and gcc3 have really been flex issues. I got 1.6.5
to compile with flex 2.5.22 (development version) over the weekend, and then
noticed that the new flex-2.5.4a-r5 ebuild includes gcc3 fixes backported
(thanks to Red Hat) to the last official release (2.5.4a). I tried it with
gcc-3.2, and it worked. I've also tested this ebuild with gcc-2.95.3, but I
have not tested it with gcc-3.0/3.1.
Still working on the web doc build. . .
Created attachment 4905 [details]
lilypond-1.6.6.ebuild
version bump
I also removed my gcc-3.2/flex-2.5.22 workaround as it turned out to be
unnecessary with flex-2.5.4a-r5. If anyone gets a chance to test this with
gcc-3.0 or 3.1, that would be great. It may turn out that the 3.1 workaround
is also unnecessary now.
Mike, Nice work on the ebuild. I've made a couple minor additions and I'm testing now on gcc-3.2.1-r5 with flex-2.5.23. I plan to try a couple other combinations including gcc-3.2-r4 with flex-2.5.4a-r5 (1.4 "stable") and gcc-2.95.3-r7 with flex-2.5.4a-r5 (1.2 "stable"). Following that I'll commit the 1.6.6 ebuild. Thanks for your patience. Aron I've tested with the various versions of flex, also with gcc-2.95.3 and gcc-3.2.1. The ebuild seems to work in all cases now. I haven't tested gcc-3.[01] but hopefully it won't matter since neither stream of Gentoo (1.2 or 1.4) is using those versions. Though it would be nice to verify. :-) Committed as lilypond-1.6.6.ebuild Thanks, Aron |