尝试安装Octave IO软件包时出错

时间:2018-12-03 11:35:26

标签: cygwin heap octave

尝试在Windows 7上安装Octave io软件包时,出现以下错误:

>> pkg install io-2.4.12.tar.gz
          0 [main] us 0 init_cheap: VirtualAlloc pointer is null, Win32 error 487
AllocationBase 0x0, BaseAddress 0x60EA0000, RegionSize 0x190000, State 0x10000
C:\Octave\Octave-4.2.0\bin\perl.exe: *** Couldn't reserve space for cygwin's heap, Win32 error 0
warning: doc_cache_create: unusable help text found in file 'getxmlattv'
For information about changes from previous versions of the io package, run 'news io'.
>>

我阅读了其他一些类似的问题,但是无法找到答案,老实说,我也不理解错误消息。我在Windows的类Unix界面中了解cygwin,但仅此而已。我尝试以管理员身份运行,删除所有临时文件,重新启动等,但无法成功安装pkg。有任何想法吗?

引用的文件'getxmlattv'只是一个函数,而不是如上所述的文本文件,不能作为独立文件运行:

    function [retval] = getxmlattv (xmlnode, att)

  retval = '';

  ## Get end of first tag
  iend = index (xmlnode, ">");
  ## Get start of value string. Concat '="' to ensure minimal ambiguity
  vals = index (xmlnode, [att '="']);
  if (vals == 0)
    ## Attribute not in current tag
    return
  elseif (vals)
    vals = vals + length (att) + 2;
    vale = regexp (xmlnode(vals:end), '"[ >/]');
    if (! isempty (vale))
      retval = xmlnode(vals:vals+vale-2);
    endif
  endif

endfunction

我看不出这有什么用。

1 个答案:

答案 0 :(得分:2)

对于Windows版本的八度,软件包已在安装程序中提供

https://wiki.octave.org/Octave_for_Microsoft_Windows

因此您不需要从源代码包安装io。只需重新运行安装程序 如果您错过了。

请注意,由于您没有使用 cygwin版本的八度,但msys / mingw一个;基于修改后的 他们忘记更新消息的cygwin1.dll版本:

$ strings msys-1.0.dll | grep cygwin
...
%P: *** Couldn't reserve space for cygwin's heap (%p <%p>) in child, %E
...