| Summary: | sci-mathematics/octave-forge-2006.03.17 fails to compile fails in ov-galois.cc | ||
|---|---|---|---|
| Product: | Gentoo Linux | Reporter: | paulphilippe <paulphilippe> |
| Component: | New packages | Assignee: | Gentoo Science Mathematics related packages <sci-mathematics> |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | CC: | gentoo-bugzilla, marat.buharov |
| Priority: | High | ||
| Version: | unspecified | ||
| Hardware: | x86 | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Package list: | Runtime testing required: | --- | |
| Attachments: |
build.log
config.log proposed patch to remove missing variables fix autoload bogus Patch to fix the whitespace problem that causes this failure. Earlier patch #18 is not cure problem, this one is good octave-forge-2006.03.17-r1.ebuild configure-octave-enc.patch |
||
|
Description
paulphilippe
2007-04-03 19:11:59 UTC
Created attachment 115382 [details]
build.log
Created attachment 115383 [details]
config.log
Hi Paul-Philippe, Thanks for your bug report. Could you please elaborate on why you think there is a problem with "PKG_ADD"! By looking at your build.log it seems to me there rather is a compilation problem ------------------------- snip -------------- ov-galois.cc: In member function 'virtual double octave_galois::double_value(bool) const': ov-galois.cc:328: error: 'Vdo_fortran_indexing' was not declared in this scope ov-galois.cc: In member function 'virtual Complex octave_galois::complex_value(bool) const': ov-galois.cc:354: error: 'Vdo_fortran_indexing' was not declared in this scope ------------------------------ That said, could you please try with -O2 instead of -O3. Thanks, Markus Hi Markus,
YOu're right about the error the build log I just saw it as I was compiling again with -O2. Unfortunetely, the compiling process did not continue and stop at the same stage. The error about the PKG_ADD during the configure script :
./configure --prefix=/usr --host=i686-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --with-X --build=i686-pc-linux-gnu
checking for i686-pc-linux-gnu-gcc... i686-pc-linux-gnu-gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether i686-pc-linux-gnu-gcc accepts -g... yes
checking for i686-pc-linux-gnu-gcc option to accept ANSI C... none needed
checking for mkoctfile... mkoctfile
retrieving compile and link flags from mkoctfile
checking for F77_FUNC... yes
checking for SLList.h... no
checking for lo_ieee_nan_value... yes
checking for octave_idx_type... no
checking for quit.h... yes
checking for octave... octave
checking for OCTAVE_VERSION in Octave... error: `autoload' undefined near line 23 column 1
error: near line 23 of file `/usr/share/octave/2.1.73/site/m/octave-forge/comm//PKG_ADD'
error: source: error sourcing file `/usr/share/octave/2.1.73/site/m/octave-forge/comm//PKG_ADD'
2.1.73
checking for octave_config_info('canonical_host_type') in Octave... error: `autoload' undefined near line 23 column 1
error: near line 23 of file `/usr/share/octave/2.1.73/site/m/octave-forge/comm//PKG_ADD'
error: source: error sourcing file `/usr/share/octave/2.1.73/site/m/octave-forge/comm//PKG_ADD'
i686-pc-linux-gnu
checking for octave_config_info('SHLEXT') in Octave... error: `autoload' undefined near line 23 column 1
error: near line 23 of file `/usr/share/octave/2.1.73/site/m/octave-forge/comm//PKG_ADD'
error: source: error sourcing file `/usr/share/octave/2.1.73/site/m/octave-forge/comm//PKG_ADD'
so
checking whether ln -s works... yes
checking for a BSD-compatible install... /usr/bin/install -c
checking for i686-pc-linux-gnu-ranlib... i686-pc-linux-gnu-ranlib
checking for strip... strip
checking how to run the C preprocessor... i686-pc-linux-gnu-gcc -E
checking for X... libraries , headers in standard search path
checking for gethostbyname... yes
checking for connect... yes
checking for remove... yes
checking for shmat... yes
checking for IceConnectionNumber in -lICE... yes
checking for autoload in Octave... error: `autoload' undefined near line 23 column 1
error: near line 23 of file `/usr/share/octave/2.1.73/site/m/octave-forge/comm//PKG_ADD'
error: source: error sourcing file `/usr/share/octave/2.1.73/site/m/octave-forge/comm//PKG_ADD'
yes
checking for do_fortran_indexing in Octave... error: `autoload' undefined near line 23 column 1
error: near line 23 of file `/usr/share/octave/2.1.73/site/m/octave-forge/comm//PKG_ADD'
error: source: error sourcing file `/usr/share/octave/2.1.73/site/m/octave-forge/comm//PKG_ADD'
yes
checking for propagate_empty_matrices in Octave... error: `autoload' undefined near line 23 column 1
error: near line 23 of file `/usr/share/octave/2.1.73/site/m/octave-forge/comm//PKG_ADD'
error: source: error sourcing file `/usr/share/octave/2.1.73/site/m/octave-forge/comm//PKG_ADD'
yes
checking for ok_to_lose_imaginary_part in Octave... error: `autoload' undefined near line 23 column 1
error: near line 23 of file `/usr/share/octave/2.1.73/site/m/octave-forge/comm//PKG_ADD'
error: source: error sourcing file `/usr/share/octave/2.1.73/site/m/octave-forge/comm//PKG_ADD'
yes
checking for N-dim arrays... yes
checking for class in Octave... error: `autoload' undefined near line 23 column 1
error: near line 23 of file `/usr/share/octave/2.1.73/site/m/octave-forge/comm//PKG_ADD'
error: source: error sourcing file `/usr/share/octave/2.1.73/site/m/octave-forge/comm//PKG_ADD'
yes
checking for load/save functions in class... yes
checking for Octave_map indexing... no
checking for old Octave concatenation... no
checking for Octave concatenation... yes
checking for swap_8_bytes... no
checking for op_uplus... yes
checking for makeinfo... makeinfo
checking for makeinfo --no-split... yes
checking for texi2dvi... texi2dvi
checking that texi2dvi runs... yes
checking for texi2dvi --clean... yes
checking for texi2html... texi2html
Sorry for the long output. But the I wonder if that has anything to do with the compiling problem.
Let me know what I can do to help you further.
Thanks!
Paul-Philippe
(In reply to comment #3)
> Hi Paul-Philippe,
>
> Thanks for your bug report. Could you please elaborate on
> why you think there is a problem with "PKG_ADD"!
> By looking at your build.log it seems to me there rather is a
> compilation problem
>
> ------------------------- snip --------------
>
> ov-galois.cc: In member function 'virtual double
> octave_galois::double_value(bool) const':
> ov-galois.cc:328: error: 'Vdo_fortran_indexing' was not declared in this scope
> ov-galois.cc: In member function 'virtual Complex
> octave_galois::complex_value(bool) const':
> ov-galois.cc:354: error: 'Vdo_fortran_indexing' was not declared in this scope
>
> ------------------------------
>
> That said, could you please try with -O2 instead of -O3.
>
> Thanks,
> Markus
>
*** Bug 174065 has been marked as a duplicate of this bug. *** Hi Paul-Philippe, Thanks for confirming. I'll have a look at the problem. Unfortunately, I can't reproduce it here despite a fairly identical setup. cheers, Markus 1. Actually, there is more than one file compile error. There is set of files and errors: ov-galois.cc:328: error: 'Vdo_fortran_indexing' was not declared in this scope ov-galois.cc:354: error: 'Vdo_fortran_indexing' was not declared in this scope ov-fixed-mat.cc:315: error: 'Vdo_fortran_indexing' was not declared in this scope ov-fixed-mat.cc:354: error: 'Vdo_fortran_indexing' was not declared in this scope ov-fixed-complex.cc:80: error: 'Vok_to_lose_imaginary_part' was not declared in this scope ov-fixed-complex.cc:254: error: 'Vok_to_lose_imaginary_part' was not declared in this scope ov-fixed-complex.cc:280: error: 'Vok_to_lose_imaginary_part' was not declared in this scope ov-fixed-cx-mat.cc:101: error: 'Vok_to_lose_imaginary_part' was not declared in this scope ov-fixed-cx-mat.cc:356: error: 'Vok_to_lose_imaginary_part' was not declared in this scope ov-fixed-cx-mat.cc:370: error: 'Vdo_fortran_indexing' was not declared in this scope ov-fixed-cx-mat.cc:399: error: 'Vok_to_lose_imaginary_part' was not declared in this scope ov-fixed-cx-mat.cc:412: error: 'Vdo_fortran_indexing' was not declared in this scope ov-fixed-cx-mat.cc:441: error: 'Vok_to_lose_imaginary_part' was not declared in this scope ov-fixed-cx-mat.cc:467: error: 'Vok_to_lose_imaginary_part' was not declared in this scope ov-fixed-cx-mat.cc:493: error: 'Vdo_fortran_indexing' was not declared in this scope 2. Also, if I do after this errors 'make check' and then continue merging package sci-mathematics/octave-forge, then I faced with problem that /usr/bin/octave starts with such error messages: error: `autoload' undefined near line 23 column 1 error: near line 23 of file `/usr/share/octave/2.1.73/site/m/octave-forge/comm//PKG_ADD' error: source: error sourcing file `/usr/share/octave/2.1.73/site/m/octave-forge/comm//PKG_ADD' That error messages remain if I unmerge sci-mathematics/octave-forge. And only again merging sci-mathematics/octave cure it. It seems like sci-mathematics/octave-forge and sci-mathematics/octave have files (one or more) which intersects with each other. The main reason for your problems is the fact that octave-forge thinks that the installed octave has features that it doesn't in fact provide. E.g. your octave-forge is compiled with -DHAVE_DO_FORTRAN_INDEXING which enables code the needs Vdo_fortran_indexing which is long gone from octave's header files. I don't honestly know why octave-forge mis-detects that. That said, could both of you please completely unmerge octave and octave-forge and re-emerge them. If that works, great! If not, I can try back-porting code from cvs to cure this. Thanks, Markus Tried to emerge -C octave && env-update && . /etc/profile && emerge octave && env-update && . /etc/profile && emerge octave-forge but error remains. :,-( Hmmm, this is very strange:
I try to emulate some line from configure script (changed $OCTAVE to octave):
shmyaka maratik # if test `echo 'disp(exist("do_fortran_indexing"))' | octave -qf`X != 0X ; then
> echo ok
> fi
ok
But(!):
shmyaka maratik # echo 'disp(exist("do_fortran_indexing"))' | octave -qf
0
Seems like "0X != 0X" is TRUE for "test `echo 'disp(exist("do_fortran_indexing"))' | octave -qf`X != 0X"
Created attachment 115972 [details, diff]
proposed patch to remove missing variables
Could you please try the attached patch for octave-forge and see if
that helps!
Thanks,
Markus
With patch octave-forge compiles perfectly, but after emerging I faced with old error: shmyaka ~ # /usr/bin/octave GNU Octave, version 2.1.73 (x86_64-pc-linux-gnu). Copyright (C) 2006 John W. Eaton. This is free software; see the source code for copying conditions. There is ABSOLUTELY NO WARRANTY; not even for MERCHANTIBILITY or FITNESS FOR A PARTICULAR PURPOSE. For details, type `warranty'. Additional information about Octave is available at http://www.octave.org. Please contribute if you find this software useful. For more information, visit http://www.octave.org/help-wanted.html Report bugs to <bug@octave.org> (but first, please read http://www.octave.org/bugs.html to learn how to write a helpful report). error: `autoload' undefined near line 23 column 1 error: near line 23 of file `/usr/share/octave/2.1.73/site/m/octave-forge/comm//PKG_ADD' error: source: error sourcing file `/usr/share/octave/2.1.73/site/m/octave-forge/comm//PKG_ADD' octave:1> Here is file /usr/share/octave/2.1.73/site/m/octave-forge/comm//PKG_ADD:
mark_as_command comms
dispatch ("conv", "gconv", "galois");
dispatch ("convmtx", "gconvmtx", "galois");
dispatch ("deconv", "gdeconv", "galois");
dispatch ("dftmtx", "gdftmtx", "galois");
dispatch ("fft", "gfft", "galois");
dispatch ("ifft", "gifft", "galois");
dispatch ("roots", "groots", "galois");
dispatch ("diag", "gdiag", "galois");
dispatch ("reshape", "greshape", "galois");
dispatch ("prod", "gprod", "galois");
dispatch ("sum", "gsum", "galois");
dispatch ("sumsq", "gsumsq", "galois");
dispatch ("sqrt", "gsqrt", "galois");
dispatch ("log", "glog", "galois");
dispatch ("exp", "gexp", "galois");
dispatch ("filter", "gfilter", "galois");
dispatch ("lu", "glu", "galois");
dispatch ("inv", "ginv", "galois");
dispatch ("inverse", "ginverse", "galois");
dispatch ("det", "gdet", "galois");
dispatch ("rank", "grank", "galois");
autoload ("bchdeco", which ("gf"));
autoload ("bchenco", which ("gf"));
autoload ("gdet", which ("gf"));
autoload ("gdiag", which ("gf"));
autoload ("gexp", which ("gf"));
autoload ("gfilter", which ("gf"));
autoload ("ginverse", which ("gf"));
autoload ("ginv", which ("gf"));
autoload ("glog", which ("gf"));
autoload ("glu", which ("gf"));
autoload ("gprod", which ("gf"));
autoload ("grank", which ("gf"));
autoload ("greshape", which ("gf"));
autoload ("gsqrt", which ("gf"));
autoload ("gsum", which ("gf"));
autoload ("gsumsq", which ("gf"));
autoload ("isgalois", which ("gf"));
autoload ("rsdec", which ("gf"));
autoload ("rsenc", which ("gf"));
Created attachment 115975 [details, diff]
fix autoload bogus
Boy, octave-forge on your box seriously mis-detects a whole
bunch of stuff. Could you please check if the above patch fixes
the autoload bogus!
Thanks,
Markus
there is no autoload in octave, but octave-forge's configure thinks
alternatively:
checking for autoload in Octave... yes
I check it manually:
maratik@shmyaka ~ $ octave
[... skipped ...]
octave:1> exist ("autoload")
ans = 0
octave:2> exist ("class")
ans = 5
I think that there is no need to patch *.cc files. Need to patch
configure.base:
if test `echo 'disp(exist("$1"))' | $OCTAVE -qf`X != 0X
...
works incorrectly
The patch I just posted should do just this. Markus Hi Markus, By applying the patches, octave-forge compiles properly. The only problem is I also get the same error as MaraTik when I launch octave. I will try again and keep you posted Paul-Philippe Created attachment 116023 [details, diff]
Patch to fix the whitespace problem that causes this failure.
Rather than the previous patches, this patch should give you the needed results. It patches with a few offsets because it was against a different version...
Created attachment 116028 [details, diff]
Earlier patch #18 is not cure problem, this one is good
I think, it occures due to encoding (utf8) problem. So, `echo 'disp(0)' | octave -qf` does not give actually ASCII '0', but something other.
Then the comparement 'disp(exist("autoload"))' | $OCTAVE -qf`X with `echo 'disp(0)' | $OCTAVE -qf`X is more reasonable.
Created attachment 116050 [details]
octave-forge-2006.03.17-r1.ebuild
new ebuild with fixed configure and X11 support (configure wants --with-x, not --with-X)
Created attachment 116051 [details, diff]
configure-octave-enc.patch
patch against configure for ebuild provided by me
Hi MaratIK, Thanks a bunch for tracking the problem down; quite a weird one, I must admit ;) Just to make sure that everybody is happy (and since I can't reproduce it here) could you and Paul-Philippe please confirm that by applying ONLY your configure-octave-enc.patch octave-forge compiles and works fine! Thanks a lot, Markus >Just to make sure that everybody is happy (and since I can't reproduce it here)
>could you and Paul-Philippe please confirm that by applying ONLY your
>configure-octave-enc.patch octave-forge compiles and works fine!
For me configure-octave-enc.patch works fine (octave-forge compiles and works perfectly without any other older patches).
Btw, in addition I just want to point out that there is need to fix ebuild with this:
./configure wants --with-x, not --with-X. So, in ebuild $(use_with X) must be replaced with $(use_with X x).
Yes, thanks! I forgot to mention this in my previous post since I mainly wanted to make sure that your patch fixes ALL the problems reported so far. If Paul-Philippe also has his problems resolved by your patch I'll apply it to portage (+your ebuild fix) unless it breaks horribly on my dev boxes ;) Markus Markus, may be it's time to remove !amd64 from the string in ebuild: "!amd64? ( ginac? ( sci-mathematics/ginac ) )" ? I just have reported bug #174318, in which I requested stable mark for sci-mathematics/ginac-1.3.7 for architecture amd64(all tests passed). I've just compiled octave-forge with ginac support on amd64 box. Symbolic mathematics work fine. Hi all, I apologize for the late reply ... I applied the latest patch (configure-octave-enc.patch) with the new ebuild and I still get the undefined autoload error message. I double checked the configure output and it seems that the correct version of Octave still cannot be detected. I'm starting to believe that this maybe and issue with octave installation itself. I'll see if "emerge -eN octave-forge" won't solve the problem. Paul-Philippe (In reply to comment #24) > Yes, thanks! I forgot to mention this in my previous post since I mainly wanted > to make sure that your patch fixes ALL the problems reported so far. > If Paul-Philippe also has his problems resolved by your patch I'll apply it > to portage (+your ebuild fix) unless it breaks horribly on my dev boxes ;) > > Markus > Hi, Paul-Philippe. Just remove all PKG_ADD: maratik@shmyaka ~ $ locate PKG_ADD /usr/share/octave/2.1.73/m/plot/PKG_ADD /usr/share/octave/2.1.73/m/miscellaneous/PKG_ADD /usr/share/octave/2.1.73/site/m/octave-forge/comm/PKG_ADD /usr/share/octave/2.1.73/site/m/octave-forge/fixed/PKG_ADD /usr/share/octave/2.1.73/site/m/octave-forge/miscellaneous/PKG_ADD /usr/share/octave/2.1.73/site/m/octave-forge/testfun/PKG_ADD /usr/share/octave/2.1.73/site/m/octave-forge/sparse/PKG_ADD /usr/share/octave/2.1.73/site/octave-forge-alternatives/m/graceplot/PKG_ADD then reemerge octave and octave-forge. After this all must be good. Hi MaratIK, Thanks for your hint! Using your recent patch and ebuild works perfectly. The source compiled smoothly. Cheers, Paul-Philippe (In reply to comment #27) > Hi, Paul-Philippe. > > Just remove all PKG_ADD: > > maratik@shmyaka ~ $ locate PKG_ADD > /usr/share/octave/2.1.73/m/plot/PKG_ADD > /usr/share/octave/2.1.73/m/miscellaneous/PKG_ADD > /usr/share/octave/2.1.73/site/m/octave-forge/comm/PKG_ADD > /usr/share/octave/2.1.73/site/m/octave-forge/fixed/PKG_ADD > /usr/share/octave/2.1.73/site/m/octave-forge/miscellaneous/PKG_ADD > /usr/share/octave/2.1.73/site/m/octave-forge/testfun/PKG_ADD > /usr/share/octave/2.1.73/site/m/octave-forge/sparse/PKG_ADD > /usr/share/octave/2.1.73/site/octave-forge-alternatives/m/graceplot/PKG_ADD > > then reemerge octave and octave-forge. After this all must be good. > Excellent! I'll see that I test and merge the patch into portage cvs sometime today. Best, Markus Hi all, I've committed octave-forge-2006.03.17-r1 to portage cvs which includes the patch for configure as well as the fixes to the ebuild. Many thanks to MaratIK for tracking down the problem and the patches and to all of you for testing. Have a nice weekend, Markus *** Bug 193468 has been marked as a duplicate of this bug. *** (In reply to comment #31) > *** Bug 193468 has been marked as a duplicate of this bug. *** > I also encountered this bug. Can 2006.03.17-r1 please be marked as stable? 2006.03.17 simply does not compile (and is marked as stable), where 2006.03.17-r1 does compile, and is still marked ~x86 for half a year already. I fear that it may be filed again if it is not _really_ resolved. |