"torch"を"windows 10"の "visual studio 2017"でビルドしてみる(その4)
C:\torch\install>.\luarocks download luaffi C:\torch\install>git clone git://github.com/facebook/luaffifb.git Cloning into 'luaffifb'... remote: Enumerating objects: 963, done. remote: Total 963 (delta 0), reused 0 (delta 0), pack-reused 963R Receiving objects: 100% (963/963), 452.84 KiB | 454.00 KiB/s, done. Resolving deltas: 100% (684/684), done. C:\torch\install>cd luaffifb C:\torch\install\luaffifb>luarocks make ..\luaffi-scm-1.rockspec cl /nologo /MD /O2 -c -Focall.obj -IC:/torch/install/include call.c -Idynasm call.c c:\torch\install\luaffifb\ffi.h(363): error C2061: 構文エラー: 識別子 'complex_double' c:\torch\install\luaffifb\ffi.h(363): error C2059: 構文エラー: ';' c:\torch\install\luaffifb\ffi.h(364): error C2061: 構文エラー: 識別子 'complex_float' c:\torch\install\luaffifb\ffi.h(364): error C2059: 構文エラー: ';' c:\torch\install\luaffifb\ffi.h(365): error C2061: 構文エラー: 識別子 'mk_complex_double' c:\torch\install\luaffifb\ffi.h(365): error C2059: 構文エラー: ';' c:\torch\install\luaffifb\ffi.h(365): error C2059: 構文エラー: '<parameter-list>' c:\torch\install\luaffifb\ffi.h(366): error C2059: 構文エラー: 'サフィックスが無効です。' c:\torch\install\luaffifb\ffi.h(368): error C2061: 構文エラー: 識別子 'mk_complex_float' c:\torch\install\luaffifb\ffi.h(368): error C2059: 構文エラー: ';' c:\torch\install\luaffifb\ffi.h(368): error C2059: 構文エラー: '<parameter-list>' c:\torch\install\luaffifb\ffi.h(369): error C2059: 構文エラー: 'サフィックスが無効です。' c:\torch\install\luaffifb\ffi.h(444): error C2061: 構文エラー: 識別子 'check_complex_double' c:\torch\install\luaffifb\ffi.h(444): error C2059: 構文エラー: ';' c:\torch\install\luaffifb\ffi.h(444): error C2059: 構文エラー: '<parameter-list>' c:\torch\install\luaffifb\ffi.h(445): error C2061: 構文エラー: 識別子 'check_complex_float' c:\torch\install\luaffifb\ffi.h(445): error C2059: 構文エラー: ';' c:\torch\install\luaffifb\ffi.h(445): error C2059: 構文エラー: '<parameter-list>' call.c(163): error C2065: 'check_complex_double': 定義されていない識別子です。 call.c(164): error C2065: 'check_complex_float': 定義されていない識別子です。 Error: Build error: Failed compiling object call.obj
ffi.hを以下のように変更
#ifdef _WIN32
#include
#else
#include
#include
#include
#include
#include
#define HAVE_COMPLEX
#endif
C:\torch\install\luaffifb>luarocks make ..\luaffi-scm-1.rockspec cl /nologo /MD /O2 -c -Focall.obj -IC:/torch/install/include call.c -Idynasm call.c cl /nologo /MD /O2 -c -Foctype.obj -IC:/torch/install/include ctype.c -Idynasm ctype.c cl /nologo /MD /O2 -c -Foffi.obj -IC:/torch/install/include ffi.c -Idynasm ffi.c cl /nologo /MD /O2 -c -Foparser.obj -IC:/torch/install/include parser.c -Idynasm parser.c link -dll -def:ffi.def -out:ffi.dll C:/torch/install/./libluajit.lib call.obj ctype.obj ffi.obj parser.obj Microsoft (R) Incremental Linker Version 14.15.26730.0 Copyright (C) Microsoft Corporation. All rights reserved. ライブラリ ffi.lib とオブジェクト ffi.exp を作成中 Updating manifest for C:/torch/install/luarocks luaffi scm-1 is now built and installed in C:/torch/install/ (license: BSD)