bugGNU Octave - Bugs: bug #59412, [octave forge] (ocl) Compile...

 
 

bug #59412: [octave forge] (ocl) Compile package errors with spaces in path

Submitter:  None
Submitted:  Wed 04 Nov 2020 02:14:14 AM UTC
   
 
Category:  Octave Package Severity:  3 - Normal
Priority:  5 - Normal Item Group:  Unexpected Error or Warning
Status:  Need Info Assigned to:  None
Originator Name:  Jinchuan Tang Originator Email:  -email is unavailable-
Open/Closed:  * Open Release:  * other
Operating System:  * Microsoft Windows Fixed Release:  None
Planned Release:  None
* Mandatory Fields

Add a New Comment Rich Markup
   

Jump to the original submission

Mon 09 Nov 2020 07:47:24 AM UTC, comment #11: 


> >> system('dir /X C:\Program*')
> Volume in drive C is Win7
>  Volume Serial Number is 5429-0201
>  Directory of C:\
> The system cannot write to the specified device.
> ans = 255


Afaict, that shouldn't fail on a clean file system.
Could you try if there are any file system errors? You could use this command:

chkdisk C: /f


If that doesn't help, maybe some solution described here helps:
https://windowsreport.com/system-cant-write-to-specified-device/
(Disclaimer: That link is the first hit for a Google search of the above error message. I didn't try or check any of the solutions on that side. Use those instructions on your own responsibility.)

Markus Mützel <mmuetzel>
Group administrator
Mon 09 Nov 2020 06:41:17 AM UTC, comment #10: 


>> system('dir /X C:\Program*')

 Volume in drive C is Win7
 Volume Serial Number is 5429-0201

 Directory of C:\

The system cannot write to the specified device.
ans = 255

>> getenv('PATH')

ans = C:\Program Files\GNUOCT~1\OCTAVE~1.92\mingw64\qt5\bin;C:\Program Files\GNUOCT~1\OCTAVE~1.92\mingw64\bin;C:\Program Files\GNU Octave\Octave-6.0.92\usr\bin;C:\Win
dows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;D:\Program Files\MATLAB\R2013b\runtime\win64;D:\Program Files\MATLAB\R20
13b\bin;D:\CTEX\UserData\miktex\bin;C:\Program Files\MiKTeX\miktex\bin\x64\;D:\CTEX\MiKTeX\miktex\bin;D:\CTEX\CTeX\ctex\bin;D:\CTEX\CTeX\cct\bin;D:\CTEX\CTeX\ty\bin;D
:\CTEX\Ghostscript\gs9.05\bin;D:\CTEX\GSview\gsview;D:\CTEX\WinEdt;C:\Program Files\GNUOCT~1\OCTAVE~1.92\mingw64\libexec\octave\6.0.92\site\exec\x86_64-w64-mingw32;C:
\Program Files\GNUOCT~1\OCTAVE~1.92\mingw64\libexec\octave\api-v55\site\exec\x86_64-w64-mingw32;C:\Program Files\GNUOCT~1\OCTAVE~1.92\mingw64\libexec\octave\site\exec
\x86_64-w64-mingw32;C:\Program Files\GNUOCT~1\OCTAVE~1.92\mingw64\libexec\octave\6.0.92\exec\x86_64-w64-mingw32;C:\Program Files\GNUOCT~1\OCTAVE~1.92\mingw64\bin;C:\P
rogram Files\GNUOCT~1\OCTAVE~1.92\mingw64\notepad++;C:\Program Files\GNUOCT~1\OCTAVE~1.92\mingw64\libexec\octave\6.0.92\site\exec\x86_64-w64-mingw32;C:\Program Files\
GNUOCT~1\OCTAVE~1.92\mingw64\libexec\octave\api-v55\site\exec\x86_64-w64-mingw32;C:\Program Files\GNUOCT~1\OCTAVE~1.92\mingw64\libexec\octave\site\exec\x86_64-w64-min
gw32;C:\Program Files\GNUOCT~1\OCTAVE~1.92\mingw64\libexec\octave\6.0.92\exec\x86_64-w64-mingw32;C:\Program Files\GNUOCT~1\OCTAVE~1.92\mingw64\bin

>>

Jinchuan Tang <jinchuantang>
Fri 06 Nov 2020 12:50:26 PM UTC, comment #9: 

Thank you for providing that information.

Additionally to the command posted by John, could you please also show the output for the following command:

system('dir /X C:\Program*')


Markus Mützel <mmuetzel>
Group administrator
Fri 06 Nov 2020 12:03:38 PM UTC, comment #8: 

And th e putput from command:

getenv('PATH')

John Donoghue <lostbard>
Group Member
Fri 06 Nov 2020 03:57:44 AM UTC, comment #7: 

Dear Markus and John,

I install Octave with the installer downloaded from the alpha ftp page. I tried it both on my windows 10 PC and windows 7 PC ( Chinese genuine versions), they all have the same problem.

To dear Markus:

>> OCTAVE_HOME

ans = C:\Program Files\GNUOCT~1\OCTAVE~1.92\mingw64

>> pkg install -verbose ocl-1.1.1.tar.gz

mkdir (C:\Users\ADMINI~1\AppData\Local\Temp\oct-X4Qr9D)
untar (ocl-1.1.1.tar.gz, C:\Users\ADMINI~1\AppData\Local\Temp\oct-X4Qr9D)
make: Entering directory '/tmp/oct-X4Qr9D/ocl/src'
C:/Program Files/GNUOCT~1/OCTAVE~1.92/mingw64/bin/mkoctfile-6.0.92.exe --verbose -c ocl_constant.cc
C:/Program: line 1: [Paths]: command not found
C:/Program: line 2: Files/GNUOCT~1/OCTAVE~1.92/: No such file or directory
C:/Program: line 3: FilesGNUOCT~1OCTAVE~1.92\binqt.conf: No such file or directory
C:/Program: line 4: FilesGNUOCT~1OCTAVE~1.92\binqt.conf: No such file or directory
C:/Program: line 5: FilesGNUOCT~1OCTAVE~1.92\binqt.conf: No such file or directory
C:/Program: line 6: FilesGNUOCT~1OCTAVE~1.92\binqt.conf: No such file or directory
C:/Program: line 7: FilesGNUOCT~1OCTAVE~1.92\binqt.conf: No such file or directory
make: * [Makefile:75: ocl_constant.o] Error 127
make: Leaving directory '/tmp/oct-X4Qr9D/ocl/src'

error: pkg: error running 'make' for the ocl package.
error: called from
    configure_make at line 110 column 9
    install at line 196 column 7
    pkg at line 568 column 9

>>



Best wishes,
Jinchuan




comment #4:

> I cannot reproduce the error. But it looks like this might be an issue because Octave or the package doesn't handle that short file name don't seem to be stored consistently in your file system.
>
> Could you please show what the following command returns for you?


> OCTAVE_HOME


>
> Could you also please capture the verbose output of the package installation attempt? Please execute the following and copy the output in the command window to a file or show it directly if it isn't too much text:


> pkg install -verbose ocl-1.1.1.tar.gz


>



Jinchuan Tang <jinchuantang>
Wed 04 Nov 2020 06:19:06 PM UTC, comment #6: 

The initial No such file or directory errors seem interesting as not sure  why it could be looking qt.conf etc.

To verify, octave was installed via the windows install file or the zip file ?

How is octave being started ? The installer shortcut or some other method ?

John Donoghue <lostbard>
Group Member
Wed 04 Nov 2020 05:06:17 PM UTC, comment #5: 

I'm pretty sure this is due to spaces in the path that don't disappear by converting to short file names.
The attached patch should be fixing at least one place where we'd probably need to quote the path.

Imho, we shouldn't try to hide issues by using short file names at all. Those aren't guaranteed to exist (at least on the most common file systems, i.e. NTFS).
The commands that create short file names are in MXE Octave IIRC. It is too late for Octave 6. But we should probably remove those commands shortly after the release. Converting to short file names hides issues that we have with missing quotes for many developers and testers (probably most or all of them). And we only come across them if affected users take their time to write reports.

Getting the requested info from the OP would still be interesting.

(file #50204)

Markus Mützel <mmuetzel>
Group administrator
Wed 04 Nov 2020 03:39:24 PM UTC, comment #4: 

I cannot reproduce the error. But it looks like this might be an issue because Octave or the package doesn't handle that short file name don't seem to be stored consistently in your file system.

Could you please show what the following command returns for you?

OCTAVE_HOME


Could you also please capture the verbose output of the package installation attempt? Please execute the following and copy the output in the command window to a file or show it directly if it isn't too much text:

pkg install -verbose ocl-1.1.1.tar.gz


Markus Mützel <mmuetzel>
Group administrator
Wed 04 Nov 2020 03:33:47 PM UTC, comment #3: 

Can you rerun the pkg install as :

pkg install -verbose ocl-1.1.1.tar.gz


and supply the output.

John Donoghue <lostbard>
Group Member
Wed 04 Nov 2020 02:54:55 PM UTC, comment #2: 

Sorry. I mis-read the original message. This is about the "ocl" package, not the "ocs" package.

Markus Mützel <mmuetzel>
Group administrator
Wed 04 Nov 2020 08:59:26 AM UTC, comment #1: 

Thank you for your report.
This might be an error in the Makefile of the ocs package.
CC'ing the package maintainer.

Fwiw: Afaict the current release of the package doesn't compile with the latest Octave versions. However, a patched version of "ocs" that works with Octave 6 is already included in Octave's installer for Windows. Type "pkg list" to see a complete list of all included packages.
Load the "ocs" package with "pkg load ocs".
See also: https://wiki.octave.org/Octave_for_Microsoft_Windows

Markus Mützel <mmuetzel>
Group administrator
Wed 04 Nov 2020 02:14:14 AM UTC, original submission:  

Dear Octave team,

Since the alpha release of 6.0.90, I have encountered the following problems when I am trying to install a forge package on both win 7 and 10 64 bits systems as shown below. This problem can be solved by changing the default install location (e.g. C:\Program Files\GNU Octave\Octave-6.0.92) to a location without any blank space (I tried C:\Octave-6.0.92 and there is no problem while installing a forge package). Since the version 6 of Octave started to use system default location for installation as stated in the welcome page (Octave-6.0.92/README.html). I would suggest anyone could kindly fix this problem. 

Thank you very much!

>> pkg install ocl-1.1.1.tar.gz

C:/Program: line 1: [Paths]: command not found
C:/Program: line 2: Files/GNUOCT~1/OCTAVE~1.92/: No such file or directory
C:/Program: line 3: FilesGNUOCT~1OCTAVE~1.92\binqt.conf: No such file or directory
C:/Program: line 4: FilesGNUOCT~1OCTAVE~1.92\binqt.conf: No such file or directory
C:/Program: line 5: FilesGNUOCT~1OCTAVE~1.92\binqt.conf: No such file or directory
C:/Program: line 6: FilesGNUOCT~1OCTAVE~1.92\binqt.conf: No such file or directory
C:/Program: line 7: FilesGNUOCT~1OCTAVE~1.92\binqt.conf: No such file or directory
make: * [Makefile:75: ocl_constant.o] Error 127
make: Entering directory '/tmp/oct-ouk03R/ocl/src'
C:/Program Files/GNUOCT~1/OCTAVE~1.92/mingw64/bin/mkoctfile-6.0.92.exe -c ocl_constant.cc
make: Leaving directory '/tmp/oct-ouk03R/ocl/src'

error: pkg: error running 'make' for the ocl package.
error: called from
    configure_make at line 110 column 9
    install at line 196 column 7
    pkg at line 568 column 9

>>


Best wishes,
Jinchuan

Anonymous

 

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

Attach Files:
   
   
Comment:
   

Attached Files
file #50202:  octave_bug.png added by None (155KiB - image/png)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by jwe (Updated the item)
  • -email is unavailable- added by jinchuantang (Updated the item)
  • -email is unavailable- added by lostbard (Posted a comment)
  • -email is unavailable- added by mmuetzel
  • -email is unavailable- added by siko1056 (Updated the item)
  • -email is unavailable- added by mmuetzel (Posted a comment)
  • -email is unavailable- added by None (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 11 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2020-11-27 jwe Release6.0.92 other
    2020-11-06 jinchuantang Attached File- Added octave_bug20201106.png, #50213
    2020-11-04 mmuetzel Attached File- Added bug59412_mkoctfile_spaces.patch, #50204
    2020-11-04 mmuetzel StatusNone Need Info
    2020-11-04 mmuetzel Carbon-CopyRemoved cdf -
    2020-11-04 mmuetzel Summary[octave forge] (ocs) Compile package errors with spaces in path [octave forge] (ocl) Compile package errors with spaces in path
        Carbon-Copy- Added -email is unavailable-
    2020-11-04 siko1056 CategoryConfiguration and Build System Octave Package
    2020-11-04 mmuetzel SummaryCompile package errors when installing Octave to the system wide default program installation location [octave forge] (ocs) Compile package errors with spaces in path
        Carbon-Copy- Added cdf
    2020-11-04 None Attached File- Added octave_bug.png, #50202

    Back to the top

    Powered by Savane 3.13-3230.
    Corresponding source code