UPDATE (to the following update): gem-ът работи след сваляне на precompiled binary-то за windows sqlite-dll-win32-x86-3080802.zip
, release build на C файловете през codeblocks, слагането на .dll файла в sqlite/obj/Release и gem install sqlite3-ruby
. (забравих да ъпдейтна по-рано, sorry)
UPDATE: Компилирах си ръчно C файловете и с gem install sqlite3 -- --with-sqlite3-dir=C:sqlite --with-sqlite3-include --with-sqlite3-lib
вече не ми дава, че му липсва конкретния sqlite3.h
файл, а друга грешка в конзолата:
ERROR: Error installing sqlite3:
ERROR: Failed to build gem native extension.
c:/Ruby21-x64/bin/ruby.exe extconf.rb --with-sqlite3-dir=C:sqlite --with-sqlite3-include --with-sqlite3-lib
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers. Check the mkmf.log file for more details. You may
need configuration options.
Provided configuration options:
--with-opt-dir
--without-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=c:/Ruby21-x64/bin/ruby
--with-sqlite3-dir
--with-sqlite3-include=${sqlite3-dir}/include
--with-sqlite3-lib=${sqlite3-dir}/lib
c:/Ruby21-x64/lib/ruby/2.1.0/mkmf.rb:1703:in `dir_config': undefined method `split' for true:TrueClass (NoMethodError)
from extconf.rb:10:in `<main>'
extconf failed, exit code 1
В mkmf.log пише:
"x86_64-w64-mingw32-gcc -E -Ic:/Ruby21-x64/include/ruby-2.1.0/x64-mingw32 -Ic:/Ruby21-x64/include/ruby-2.1.0/ruby/backward -Ic:/Ruby21-x64/include/ruby-2.1.0 -I. -IC:sqlite/include -DFD_SETSIZE=2048 -D_WIN32_WINNT=0x0501 -D__MINGW_USE_VC2005_COMPAT -D_FILE_OFFSET_BITS=64 -O3 -fno-omit-frame-pointer -fno-fast-math -g -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration conftest.c -o conftest.i"
conftest.c:5:21: fatal error: sqlite3.h: No such file or directory
compilation terminated.
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <winsock2.h>
4: #include <windows.h>
5: #include <sqlite3.h>
/* end */
Тоест пак съм до същия проблем, просто изписан в отделен файл, ми не в конзолата...
Преди update-а още прегледах stackoverflow и пробвах това. Пробвах само да задам път към директорията със C файловете на sqlite чрез gem install sqlite3 -- --with-sqlite3-dir=C:\sqlite
. Unfortunately, nothing works.
Конзолата на sqlite3 си работи и мога да си съзадавам и променям неща от нея, но gem-а не мога да си инсталирам, съответно не зная, как иначе да закача и работя с база данни в проекта си. Стискам палци някой друг занимаващ се с уеб да се е преборил с такъв проблем и да види това навреме да помага... мерси преварително!
( работя през cmder )