bugGNU Octave - Bugs: bug #53371, building manual fails due to...

 
 

bug #53371: building manual fails due to missing python module "lxml.html"

Submitter:  Carlo de Falco <cdf>
Submitted:  Sun 18 Mar 2018 08:09:49 AM UTC
   
 
Category:  Configuration and Build System Severity:  5 - Blocker
Priority:  5 - Normal Item Group:  Build Failure
Status:  Fixed Assigned to:  None
Originator Name:  Open/Closed:  * Closed
Release:  * dev Operating System:  * Mac OS
Fixed Release:  None Planned Release:  None
* Mandatory Fields

Add a New Comment Rich Markup
   

Jump to the original submission

Wed 21 Mar 2018 09:35:49 PM UTC, comment #22: 

Great, works for me also after uninstalling lxml again.

Mike Miller <mtmiller>
Group Member
Wed 21 Mar 2018 08:06:10 PM UTC, comment #21: 
Rik <rik5>
Group administrator
Wed 21 Mar 2018 08:03:12 PM UTC, comment #20: 

autodie isn't essential.  I can just remove that.

Rik <rik5>
Group administrator
Wed 21 Mar 2018 08:01:55 PM UTC, comment #19: 

Also this error:


Can't locate autodie.pm in @INC (you may need to install the autodie module) (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5) at ../src/doc/interpreter/mk_qthelp.pl line 11.
BEGIN failed--compilation aborted at ../src/doc/interpreter/mk_qthelp.pl line 11.


My Debian systems have this module in the perl-modules-5.26 package.  I don't know what it is on other systems.

John W. Eaton <jwe>
Group administrator
Wed 21 Mar 2018 07:25:16 PM UTC, comment #18: 

Some of the buildbots are still failing with the following error when running qcollectiongenerator:


QSqlDatabase: QSQLITE driver not loaded
QSqlDatabase: available drivers:
]Cannot open data base file /scratch/buildbot/slaves/jwe-debian-x86_64-2/gcc-7-lto-debian/build/doc/interpreter/octave_interpreter.qch.
Makefile:27808: recipe for target 'doc/interpreter/octave_interpreter.qch' failed
make[2]: *** [doc/interpreter/octave_interpreter.qch] Error 255


I was able to solve the problem on my Debian systems by installing the qt5-assistant package.  It ultimately depends on the libqt5sql5-sqlite package, which is what I think is really needed.

I'm not sure that there is anything we can easily do in the configure script for this problem.

John W. Eaton <jwe>
Group administrator
Wed 21 Mar 2018 06:55:41 PM UTC, comment #17: 

Marking as fixed and closing report.

Rik <rik5>
Group administrator
Wed 21 Mar 2018 06:54:17 PM UTC, comment #16: 

The patch in bug #53394 allows me to build with --disable-qt.  But I have Qt5 installed, so I might not notice if some Qt tools were still used.

The Perl script also appears to work for m.

John W. Eaton <jwe>
Group administrator
Wed 21 Mar 2018 05:58:00 PM UTC, comment #15: 

I am at hgid=(23b5c0678051)
ubuntu 16.06
This is the first time that I was successful at a full compile.
So you changes worked for me.

Doug Stewart <dastew>
Wed 21 Mar 2018 05:19:59 PM UTC, comment #14: 

I checked in a Perl script to the stable branch which now generates the Qt Help files (http://hg.savannah.gnu.org/hgweb/octave/rev/f0a427d09dba).  Marking as ready for test.

Rik <rik5>
Group administrator
Wed 21 Mar 2018 05:11:44 PM UTC, comment #13: 

@Carlo: Does the patch I posted on bug #53394 work for you?  If it does I'll commit it.

Rik <rik5>
Group administrator
Wed 21 Mar 2018 06:31:58 AM UTC, comment #12: 

I just noticed that my comment #7 is displayed incompletely because I messed up with rich markup tags.

anyway Mike seems to have been able to read the missing part anyway (@Mike how did you do that?) and he posted the new
bug #53394 which correctly describes my problem, so I'm adding a dependency


Carlo de Falco <cdf>
Group Member
Wed 21 Mar 2018 12:02:47 AM UTC, comment #11: 

Quite right.  No reason to require qcollectiongenerator if Qt is not used or the docs are disabled.

Rik <rik5>
Group administrator
Tue 20 Mar 2018 11:48:35 PM UTC, comment #10: 

@cdf - you asked

> and the build completes successfully, but the question is, why require qcollectiongenerator when building without QT?


You are right, I think this is the essence of the second error you ran into in this bug, even after the Python lxml error is addressed. I will file a separate bug report for that.

Mike Miller <mtmiller>
Group Member
Mon 19 Mar 2018 04:32:18 PM UTC, comment #9: 

My plan is to rewrite this script in Perl to eliminate the extra dependency on lxml.  This appears feasible as the input is not very difficult HTML and can probably be parsed just with regular expressions.  But, this is still going to take some time (I have a day job after all).

Rik <rik5>
Group administrator
Sun 18 Mar 2018 09:05:05 PM UTC, comment #8: 

I think a fix is described in bug #53368, please try that

Philip Nienhuis <philipnienhuis>
Group Member
Sun 18 Mar 2018 08:16:56 PM UTC, comment #7: 

I can't configure with QT5 but I did with QT4 and I see


ac_cv_prog_ac_ct_QCOLLECTIONGENERATOR=qcollectiongenerator
QCOLLECTIONGENERATOR='qcollectiongenerator'
QCOLLECTIONGENERATOR_QTVER=''
ac_ct_QCOLLECTIONGENERATOR='qcollectiongenerator'
ac_ct_QCOLLECTIONGENERATOR_QTVER=''
-vermbatim-


and the build completes successfully, but the question is, why require qcollectiongenerator when buildting without QT?

Carlo de Falco <cdf>
Group Member
Sun 18 Mar 2018 07:11:33 PM UTC, comment #6: 

There was some commentary on bug #53006 that the Python lxml-based script may change or be replaced by something else.

I am giving it a few days to see if Rik or Pantxo say that this script is going to remain or if it can be rewritten in Perl or Python using some other library.

The "/bin/sh: doc/interpreter/octave_interpreter.qhcp: Permission denied" error means that your $(QCOLLECTIONGENERATOR) variable is empty. Can you try configuring again with Qt 5 and see if there are any messages about that program in the config.log?

Mike Miller <mtmiller>
Group Member
Sun 18 Mar 2018 06:03:25 PM UTC, comment #5: 

indeed if building with --with-qt=4 the build completes correctly

Carlo de Falco <cdf>
Group Member
Sun 18 Mar 2018 03:33:38 PM UTC, comment #4: 

I see now that this looks a lot like bug #53368
for mxe octave.


Carlo de Falco <cdf>
Group Member
Sun 18 Mar 2018 03:21:21 PM UTC, comment #3: 

BTW these results are for building with "--without-qt" the files mentioned below seem to be part of the GUI help browser, aren't they?

So why is this stuff needed when the GUI is disbled?

Carlo de Falco <cdf>
Group Member
Sun 18 Mar 2018 02:24:37 PM UTC, comment #2: 

Actually my build still fails here's the error


/Applications/Xcode.app/Contents/Developer/usr/bin/make  all-recursive
Making all in libgnu
/Applications/Xcode.app/Contents/Developer/usr/bin/make  all-recursive
make[4]: Nothing to be done for `all-am'.
rm -f doc/interpreter/octave_interpreter.qhc doc/interpreter/octave_interpreter.qch && \
        python ../octave/doc/interpreter/prepare_qhelp.py doc/interpreter/octave_interpreter octave.html && \
         doc/interpreter/octave_interpreter.qhcp -o doc/interpreter/octave_interpreter.qhc >/dev/null && \
        rm -f doc/interpreter/octave_interpreter.qhcp doc/interpreter/octave_interpreter.qhp
/bin/sh: doc/interpreter/octave_interpreter.qhcp: Permission denied
make[2]: *** [doc/interpreter/octave_interpreter.qch] Error 126
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2


it seemed the makefile was trying to execute doc/interpreter/octave_interpreter.qhcp as a script
so I tried to change its permission but that doesn't help much ..


guglielmo.local $ chmod u+x doc/interpreter/octave_interpreter.qhcp
guglielmo.local $ make V=1
rm -f bits/stl_algo.h
/Applications/Xcode.app/Contents/Developer/usr/bin/make  all-recursive
Making all in libgnu
/Applications/Xcode.app/Contents/Developer/usr/bin/make  all-recursive
make[4]: Nothing to be done for `all-am'.
rm -f doc/interpreter/octave_interpreter.qhc doc/interpreter/octave_interpreter.qch && \
        python ../octave/doc/interpreter/prepare_qhelp.py doc/interpreter/octave_interpreter octave.html && \
         doc/interpreter/octave_interpreter.qhcp -o doc/interpreter/octave_interpreter.qhc >/dev/null && \
        rm -f doc/interpreter/octave_interpreter.qhcp doc/interpreter/octave_interpreter.qhp
doc/interpreter/octave_interpreter.qhcp: line 1: syntax error near unexpected token `newline'
doc/interpreter/octave_interpreter.qhcp: line 1: `<?xml version="1.0" encoding="UTF-8"?>'
make[2]: *** [doc/interpreter/octave_interpreter.qch] Error 2
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2


Carlo de Falco <cdf>
Group Member
Sun 18 Mar 2018 01:54:14 PM UTC, comment #1: 

It seems there is a macports port for lxml.html that fixes the issue
on my system:

http://lxml.de/installation.html

but there seems to be no homebrew formula for it, so I cannot fix the issue on the reference macos system.

help from homebrew experts welcome here.

Carlo de Falco <cdf>
Group Member
Sun 18 Mar 2018 08:09:49 AM UTC, original submission:  


Hi since the switch to 4.5.0+ I get a build failure on macos
with the following error:


 File "../src/doc/interpreter/prepare_qhelp.py", line 27, in <module>
    import lxml.html as lh
ImportError: No module named lxml.html


The same issue occurs on the buildbot macmini:
http://buildbot.octave.org:8010/builders/clang-osx/builds/939/steps/compile/logs/stdio



Carlo de Falco <cdf>
Group Member

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

No files currently attached

 

Carbon-Copy List
  • -email is unavailable- added by jwe (Posted a comment)
  • -email is unavailable- added by dastew (Posted a comment)
  • -email is unavailable- added by rik5 (Posted a comment)
  • -email is unavailable- added by mtmiller (Posted a comment)
  • -email is unavailable- added by cdf (Submitted the item)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only group members can vote.

     

    Follow 7 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2018-03-21 rik5 Open/ClosedOpen Closed
    2018-03-21 rik5 StatusConfirmed Fixed
    2018-03-21 jwe StatusReady For Test Confirmed
    2018-03-21 rik5 StatusConfirmed Ready For Test
    2018-03-21 cdf Dependencies- Depends on bugs #53394
    2018-03-19 rik5 StatusNone Confirmed
    2018-03-18 cdf Dependencies- Depends on bugs #53368

    Back to the top

    Powered by Savane 3.13-f8d8.
    Corresponding source code