octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: Success [WAS: Building Octave w MXE-built dependencies (2)]


From: John D
Subject: RE: Success [WAS: Building Octave w MXE-built dependencies (2)]
Date: Fri, 21 Jun 2013 17:03:10 -0400


-----Original Message-----
From: Philip Nienhuis [mailto:address@hidden 
Sent: Friday, June 21, 2013 4:59 PM
To: John D
Cc: 'John W. Eaton'; 'Octave Maintainers List'
Subject: Success [WAS: Building Octave w MXE-built dependencies (2)]

John D wrote:
>
>
> -----Original Message-----
> From: Philip Nienhuis [mailto:address@hidden
> Sent: Friday, June 21, 2013 9:14 AM
> To: John D
> Cc: 'John W. Eaton'; 'Octave Maintainers List'
> Subject: Re: Building Octave w MXE-built dependencies (2)
>
> John D wrote:
>>
>>
>> -----Original Message-----
>> From: Philip Nienhuis [mailto:address@hidden
>> Sent: Friday, June 21, 2013 8:49 AM
>> To: John D
>> Cc: John W. Eaton; Octave Maintainers List
>> Subject: Building Octave w MXE-built dependencies (2)
>>
>>> John D, did I read you correctly that:
>>>> Also, just for info, I created a script in tools/set_mxe_env.sh you 
>>>> can
>>> run as source tools/set_mxe_env.sh, that sets all the bin/lib/config 
>>> paths that may help.
>>>> I created it for compiling the octave_hg versions of code in mingw 
>>>> after having a working mxe-octave.
>>>> It isn't much use for anything except for native mingw builds.
>>> ... that script is meant to aid exactly that purpose?
>>>
>>> Yes the script is for that - I have successfully built octave 
>>> checked out from octave hg a few times now.
>>> All you need to do is check out the sources, source the 
>>> set_mxe_env.sh script, and then run run bootstrap, configure, make 
>>> like you normally would have to on a unix system.
>>>
>>> It will build octave, but fail at generating all the documentation, 
>>> but the ./run-octave script in the build directory will run the 
>>> latest and greatest from the octave hg repo!
>>
>> Here a fresh clone (parent: 16793:cc1657be1ee7 tip) fails while 
>> building the
>> parser:
>>
>> :
>> /bin/sh ../../octave/build-aux/ylwrap 
>> ../../octave/libinterp/parse-tree/lex.ll lex.octave_.c 
>> parse-tree/lex.cc
>> -- flex -I -I
>> gperf -t -C -D -G -L C++ -Z octave_kw_hash 
>> ../../octave/libinterp/parse-tree/octave.gperf>
>> parse-tree/oct-gperf.h-t1 /bin/sed 's,lookup\[,gperf_lookup[,'< 
>> parse-tree/oct-gperf.h-t1>  parse-tree/oct-gperf.h-t mv 
>> parse-tree/oct-gperf.h-t parse-tree/oct-gperf.h rm -f
> parse-tree/oct-gperf.h-t1 case "" in \
>>              *quote*) quote='"' ;; \
>>              *) quote="" ;; \
>>            esac; \
>>            case "" in \
>>              *dash*) decl="%define api.push-pull 
>> ${quote}both${quote}"; ;;
> \
>>              *underscore*) decl="%define api.push_pull 
>> ${quote}both${quote}"; ;; \
>>            esac; \
>>            /bin/sed "s/%PUSH_PULL_DECL%/$decl/"
>> ../../octave/libinterp/parse-tree/oct-parse.in.yy>
>> parse-tree/oct-parse.yy-t mv parse-tree/oct-parse.yy-t 
>> parse-tree/oct-parse.yy /bin/sh ../../octave/build-aux/ylwrap 
>> parse-tree/oct-parse.yy y.tab.c parse-tree/oct-parse.cc y.tab.
>> h parse-tree/oct-parse.h y.output parse-tree/oct-parse.output --   -dv
>> ../../octave/build-aux/ylwrap: line 108: -dv: command not found
>> make[2]: *** [parse-tree/oct-parse.cc] Error 1
>>
>>
>> I've experimented a bit but I couldn't spot where the offending "-dv"
>> came from.
>> The isolated "--" comes from libinterp/Makefile (L. 9053).
>>
>> Any suggestions?
>>
>> Philip
>>
>> -------------
>>
>> Not sure if it has anything to do with it, but when running each of 
>> the following, what versions are they?
>> bison --version
>> flex --version
>> gperf --version
>
> FYI, flex comes from mingw-get (after updating&  upgrading so I 
> suppose it should be up-to-date).
> bison and gperf have been built using mxe as build-bison and 
> build-gperf
>
>
> address@hidden ~/octave
> $ bison --version
> bison (GNU Bison) 2.7.12-4996
> Written by Robert Corbett and Richard Stallman.
>
> Copyright (C) 2013 Free Software Foundation, Inc.
> This is free software; see the source for copying conditions.  There 
> is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A 
> PARTICULAR PURPOSE.
>
> address@hidden ~/octave
> $ flex --version
> flex 2.5.35
>
> address@hidden ~/octave
> $ gperf --version
> GNU gperf 3.0.4
> Copyright (C) 1989-1998, 2000-2004, 2006-2009 Free Software Foundation,
Inc.
> License GPLv3+: GNU GPL version 3 or later 
> <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.
> Written by Douglas C. Schmidt and Bruno Haible.
>
> -------------
>
>
> Ok - I mentioned in a  previous email the other day about bison that 
> gets built with mxe - at least in native mingw - not sure of why it 
> doesn't work, but the fix is:
>
> Delete usr/bin/bison.exe from the mxe build Run Mingw-get install 
> msys-bison  to get the msys version of bison Bison --version should 
> the give 2.4.2 Rerun the configure and make again

OK, after starting in a new empty build dir and then rerunning configure &
make, the build completes, that is, with having to finally run make -i due
to missing tex.

make -i check:

   PASS     10872
   FAIL        11
   XFAIL        4
   SKIPPED     19

AFAICS the 11 FAILs contain the usual MinGW-specific ones:

- data.cc-tst: Inf vs Nan) (3 X)
- stemleaf "epstool binary is not available ... etc"
- speed.m "All running times were zero"
- error.tst "dir2: No such file or directory"
- system.tst "expected ---------- but got -r--r--r--"
and
- quadgk.m "max_recursion_depth exceeded" - ???
- bug-38236.tst "vr' undefined near line 1 column 36" (also fails on Linux)
- bug-38691.tst "expected 1 but got 0" - I'll investigate
- bug-38576.tst "ls: command exited abnormally with status 127" (looks
MinGW-specific as well)

make -j1 is required initially, once the build has gone past 'cruft' one can
interrupt and restart with make -j2 (or whatever nr of CPU cores available).
(Don't ask why - it just works)

Philip

-----------------

Congratulations on a successful build!




reply via email to

[Prev in Thread] Current Thread [Next in Thread]