2014-12-20 4 views
1

У меня трудное время установки vowpal wabbit.vowpal wabbit install make file

Проблема, с которой я сталкиваюсь, после клонирования vw, когда я запускаю команду make. Сообщение об ошибке ниже

Был бы очень признателен за любую помощь! ОС: Windows 8.1 64 бит Благодаря

$ make 
Making all in vowpalwabbit 
make[1]: Entering directory '/home/Alejandro/vowpal_wabbit/vowpalwabbit' 
make all-am 
make[2]: Entering directory '/home/Alejandro/vowpal_wabbit/vowpalwabbit' 
/bin/sh ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I/usr/include -I/include   
-O3 -fomit-frame-pointer -ffast-math -fno-strict-aliasing -D_FILE_OFFSET_BITS=64 -DNDEBUG - 
Wall -pedantic -std=c++0x -MT global_data.lo -MD -MP -MF .deps/global_data.Tpo -c -o  global_data.lo global_data.cc 
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I/usr/include -I/include -O3 -fomit-frame-pointer -   ffast-math -fno-strict-aliasing -D_FILE_OFFSET_BITS=64 -DNDEBUG -Wall -pedantic -std=c++0x -MT global_data.lo -MD -MP -MF .deps/global_data.Tpo -c global_data.cc -DDLL_EXPORT -DPIC -o .libs/global_data.o 
In file included from comp_io.h:7:0, 
      from global_data.h:17, 
      from global_data.cc:13: 
io_buf.h: In member function 'virtual int io_buf::open_file(const char*, bool, int)': 
io_buf.h:72:25: error: 'fileno' was not declared in this scope ret = fileno(stdin);       

In file included from global_data.h:17:0, 
      from global_data.cc:13: 
comp_io.h: In member function 'virtual int comp_io_buf::open_file(const char*, bool, int)': 
comp_io.h:28:34: error: 'fileno' was not declared in this scope 
fil = gzdopen(fileno(stdin), "rb"); 
          ^
global_data.cc: In constructor 'vw::vw()': 
global_data.cc:295:32: error: 'fileno' was not declared in this scope 
stdout_fileno = fileno(stdout); 
          ^
Makefile:619: recipe for target 'global_data.lo' failed 
make[2]: *** [global_data.lo] Error 1 
make[2]: Leaving directory '/home/Alejandro/vowpal_wabbit/vowpalwabbit' 
Makefile:390: recipe for target 'all' failed 
make[1]: *** [all] Error 2 
make[1]: Leaving directory '/home/Alejandro/vowpal_wabbit/vowpalwabbit' 
Makefile:503: recipe for target 'all-recursive' failed 
make: *** [all-recursive] Error 1 
+1

Я считаю, что для построения на Windows вам необходимо иметь Visual Studio от Microsoft. Раньше некоторым удалось создать vw с помощью cygwin и GNU/free toolset, но я не уверен, было ли это тривиально и действительно ли это так. См. 'README.windows.txt' в исходном дереве для сборки с помощью Visual studio. Другой возможной возможностью является наличие виртуальной виртуальной машины в Windows и использование в ней простой linux 'make'. – arielf

+0

Я также пытаюсь скомпилировать VW прямо сейчас (используя Cygwin на Windows 8.1 64 бит), и я получаю ту же ошибку. Я следую инструкциям из [здесь] (http://mlwave.com/install-vowpal-wabbit-on-windows-and-cygwin/). Я полностью забыл, как сильно я ненавижу C++ благодаря .NET и его уютной экосистеме. Я вернусь, если найду способ исправить это ... – stmax

+0

Я сдаюсь .. Я исправил ошибки fileno (...), но затем появились новые ошибки, такие как uneclared alloca (которые я исправил), а затем uneclared to_string (который я, кажется, не могу исправить). Я предполагаю, что я буду использовать двоичный файл, который вы связали ниже (он немного устарел) или просто запустите машину Linux на Azure. ; ( – stmax

ответ

0

я не мог решить эту проблему, но, по крайней мере, я могу указать вам на vowpalwabbit исполняемый файл. Так что вам не обязательно это делать.

https://github.com/MLWave/vowpal-wabbit-cygwin-executables

Благородный душа из Kaggle указал мне на эту ссылку. Вам нужно установить Cycwin и выполнить .exe из cygwin.

Существует также чистый Windows, исполняемый файл сборка https://github.com/MLWave/Kaggle_Rotten_Tomatoes

Также предусмотрен Triskelion, тот же народ, который при условии сборки выше. Его совет: для запуска, использующего «cmd», чтобы открыть консоль, не нажимайте на файл.

Смежные вопросы