2015-10-07 215 views
0

每當我運行gem install mysql,我得到一個Failed to build gem native extension error告訴我檢查mkmf.log。這是該文件的樣子:爲什麼我安裝mysql gem時出現這個錯誤?

have_library: checking for main() in -llibmysql... -------------------- no 

"x86_64-w64-mingw32-gcc -o conftest.exe -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. -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 -L. -Lc:/Ruby21-x64/lib -L.  -lx64-msvcrt-ruby210 -lshell32 -lws2_32 -liphlpapi -limagehlp -lshlwapi " 
checked program was: 
/* begin */ 
1: #include "ruby.h" 
2: 
3: #include <winsock2.h> 
4: #include <windows.h> 
5: int main(int argc, char **argv) 
6: { 
7: return 0; 
8: } 
/* end */ 

"x86_64-w64-mingw32-gcc -o conftest.exe -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. -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 -L. -Lc:/Ruby21-x64/lib -L.  -lx64-msvcrt-ruby210 -llibmysql -lshell32 -lws2_32 -liphlpapi -limagehlp -lshlwapi " 
conftest.c: In function 't': 
conftest.c:16:32: warning: variable 'p' set but not used [-Wunused-but-set-variable] 
c:/users/compy/desktop/ruby dev/mingw/bin/../lib/gcc/x86_64-w64-mingw32/4.7.2/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -llibmysql 
collect2.exe: error: ld returned 1 exit status 
checked program was: 
/* begin */ 
1: #include "ruby.h" 
2: 
3: #include <winsock2.h> 
4: #include <windows.h> 
5: 
6: /*top*/ 
7: extern int t(void); 
8: int main(int argc, char **argv) 
9: { 
10: if (argc > 1000000) { 
11:  printf("%p", &t); 
12: } 
13: 
14: return 0; 
15: } 
16: int t(void) { void ((*volatile p)()); p = (void ((*)()))main; return 0; } 
/* end */ 

"x86_64-w64-mingw32-gcc -o conftest.exe -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. -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 -L. -Lc:/Ruby21-x64/lib -L.  -lx64-msvcrt-ruby210 -llibmysql -lshell32 -lws2_32 -liphlpapi -limagehlp -lshlwapi " 
conftest.c: In function 't': 
conftest.c:16:1: error: too few arguments to function 'main' 
conftest.c:8:5: note: declared here 
checked program was: 
/* begin */ 
1: #include "ruby.h" 
2: 
3: #include <winsock2.h> 
4: #include <windows.h> 
5: 
6: /*top*/ 
7: extern int t(void); 
8: int main(int argc, char **argv) 
9: { 
10: if (argc > 1000000) { 
11:  printf("%p", &t); 
12: } 
13: 
14: return 0; 
15: } 
16: int t(void) { main(); return 0; } 
/* end */ 

-------------------- 

我在Windows 8,64位版本。我在C:\Ruby21-x64\bin得到libmysql.dll。我已經安裝了MySQL的Connector/C。我也有MySQL運行。

爲什麼不能安裝mysql寶石?

回答

相關問題