hack のためのネタ帳, etc,,,

未解決案件

状況

h5py の cygwin 対応が不完全らしく、インストールに失敗する。
更には、rebase 案件らしき DLL の読み込み障害も。

必要なパッケージ

  • libhdf5-devel
  • libnetcdf-devel

install

以下のコマンド
pip3 install pymc3
でインストールすると h5py のところで止まる。
とりあえず、アドホックな解決方法は以下のページにまとめた。
とりあえず、h5py だけクリアできれば、インストールは出来るのだが、import すると DLL で address error らしきものが出る。
>>> import pymc3
      0 [main] python3.6m 29803 child_info_fork::abort: address space needed by 'period.cpython-36m-x86_64-cygwin.dll' (0x400000) is already occupied
      0 [main] python3.6m 29804 child_info_fork::abort: address space needed by 'period.cpython-36m-x86_64-cygwin.dll' (0x400000) is already occupied
      0 [main] python3.6m 29805 child_info_fork::abort: address space needed by 'period.cpython-36m-x86_64-cygwin.dll' (0x400000) is already occupied
model を作ってみると以下のようにエラーになり動作しなかった
>>> with pymc3.Model() as model:
...   x = pymc3.Normal('x')
...   trace = pymc3.sample(1000)
...
      0 [main] python3.6m 29806 child_info_fork::abort: address space needed by 'period.cpython-36m-x86_64-cygwin.dll' (0x400000) is already occupied
Problem occurred during compilation with the command line below:
/usr/local/bin/g++ -shared -g -O3 -fno-math-errno -Wno-unused-label -Wno-unused-variable -Wno-write-strings -march=skylake -mmmx -mno-3dnow -msse -msse2 -msse3 -mssse3 -mno-sse4a -mcx16 -msahf -mmovbe -maes -mno-sha -mpclmul -mpopcnt -mabm -mno-lwp -mfma -mno-fma4 -mno-xop -mbmi -msgx -mbmi2 -mno-tbm -mavx -mavx2 -msse4.2 -msse4.1 -mlzcnt -mrtm -mhle -mrdrnd -mf16c -mfsgsbase -mrdseed -mprfchw -madx -mfxsr -mxsave -mxsaveopt -mno-avx512f -mno-avx512er -mno-avx512cd -mno-avx512pf -mno-prefetchwt1 -mclflushopt -mxsavec -mxsaves -mno-avx512dq -mno-avx512bw -mno-avx512vl -mno-avx512ifma -mno-avx512vbmi -mno-avx5124fmaps -mno-avx5124vnniw -mno-clwb -mno-mwaitx -mno-clzero -mno-pku -mno-rdpid --param l1-cache-size=32 --param l1-cache-line-size=64 --param l2-cache-size=8192 -mtune=skylake -DNPY_NO_DEPRECATED_API=NPY_1_7_API_VERSION -m64 -fPIC -I/usr/lib/python3.6/site-packages/numpy/core/include -I/usr/include/python3.6m -I/usr/lib/python3.6/site-packages/theano/gof/c_code -L/usr/lib -fvisibility=hidden -o /cygdrive/c/Users/kou/HOME/.theano/compiledir_CYGWIN_NT-10.0-17763-3.1-x86_64-x86_64-64bit-WindowsPE--3.6.9-64/tmpzcurbeyh/m54e1ce4760689129b813fce15fee7f8d468afbe167bc036205eea6bd301309d7.dll /cygdrive/c/Users/kou/HOME/.theano/compiledir_CYGWIN_NT-10.0-17763-3.1-x86_64-x86_64-64bit-WindowsPE--3.6.9-64/tmpzcurbeyh/mod.cpp -lpython3.6m.dll
ERROR (theano.gof.cmodule): [Errno 11] Resource temporarily unavailable
Traceback (most recent call last):
  File "<stdin>", line 2, in <module>
  File "/usr/lib/python3.6/site-packages/pymc3/distributions/distribution.py", line 46, in __new__
    dist = cls.dist(*args, **kwargs)
  File "/usr/lib/python3.6/site-packages/pymc3/distributions/distribution.py", line 57, in dist
    dist.__init__(*args, **kwargs)
  File "/usr/lib/python3.6/site-packages/pymc3/distributions/continuous.py", line 470, in __init__
    self.variance = 1. / self.tau
  File "/usr/lib/python3.6/site-packages/theano/tensor/var.py", line 203, in __rtruediv__
    return theano.tensor.basic.true_div(other, self)
  File "/usr/lib/python3.6/site-packages/theano/gof/op.py", line 670, in __call__
    no_recycling=[])
  File "/usr/lib/python3.6/site-packages/theano/gof/op.py", line 955, in make_thunk
    no_recycling)
  File "/usr/lib/python3.6/site-packages/theano/gof/op.py", line 858, in make_c_thunk
    output_storage=node_output_storage)
  File "/usr/lib/python3.6/site-packages/theano/gof/cc.py", line 1217, in make_thunk
    keep_lock=keep_lock)
  File "/usr/lib/python3.6/site-packages/theano/gof/cc.py", line 1157, in __compile__
    keep_lock=keep_lock)
  File "/usr/lib/python3.6/site-packages/theano/gof/cc.py", line 1624, in cthunk_factory
    key=key, lnk=self, keep_lock=keep_lock)
  File "/usr/lib/python3.6/site-packages/theano/gof/cmodule.py", line 1189, in module_from_key
    module = lnk.compile_cmodule(location)
  File "/usr/lib/python3.6/site-packages/theano/gof/cc.py", line 1527, in compile_cmodule
    preargs=preargs)
  File "/usr/lib/python3.6/site-packages/theano/gof/cmodule.py", line 2351, in compile_str
    p_out = output_subprocess_Popen(cmd)
  File "/usr/lib/python3.6/site-packages/theano/misc/windows.py", line 77, in output_subprocess_Popen
    p = subprocess_Popen(command, **params)
  File "/usr/lib/python3.6/site-packages/theano/misc/windows.py", line 43, in subprocess_Popen
    proc = subprocess.Popen(command, startupinfo=startupinfo, **params)
  File "/usr/lib/python3.6/subprocess.py", line 729, in __init__
    restore_signals, start_new_session)
  File "/usr/lib/python3.6/subprocess.py", line 1295, in _execute_child
    restore_signals, start_new_session, preexec_fn)
BlockingIOError: [Errno 11] Resource temporarily unavailable

これは rebase 案件かな?
pip3 絡んだ rebase はどうすりゃ良いんだっけ?
多分 ruby gem でも同様の事起こりそうな気がするし、apt-cyg の機能拡張すべきだろうか?

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

Wiki内検索

フリーエリア

管理人/副管理人のみ編集できます