代码之家  ›  专栏  ›  技术社区  ›  Marek Küthe

为什么我的mruby代码不能在我的计算机上编译?

  •  0
  • Marek Küthe  · 技术社区  · 6 年前

    我的电脑上有一个叫GCC的。现在我想编译mruby,但是出现了一条错误消息。

    如手册所述,我用make编译了mruby。然后,如手册中所述,我运行了gcc命令,但它返回了一条错误消息:

    gcc -std=c99 -IE:/mruby-1.4.1/include test.c -o test.exe E:/mruby-1.4.1/build/host/lib/libmruby.a -lm
    

    我使用的是windows 1 64位,mruby 1.4.1和gcc 6.3.0。

    错误消息:

    E:/mruby-1.4.1/build/host/lib/libmruby.a(io.o): In function `fptr_finalize':
    E:/mruby-1.4.1/mrbgems/mruby-io/src/io.c:654: undefined reference to `closesocket@4'
    E:/mruby-1.4.1/mrbgems/mruby-io/src/io.c:655: undefined reference to `WSAGetLastError@0'
    E:/mruby-1.4.1/build/host/lib/libmruby.a(io.o): In function `_FD_ISSET':
    c:/mingw/include/winsock.h:138: undefined reference to `__WSAFDIsSet@8'
    c:/mingw/include/winsock.h:138: undefined reference to `__WSAFDIsSet@8'
    c:/mingw/include/winsock.h:138: undefined reference to `__WSAFDIsSet@8'
    c:/mingw/include/winsock.h:138: undefined reference to `__WSAFDIsSet@8'
    c:/mingw/include/winsock.h:138: undefined reference to `__WSAFDIsSet@8'
    E:/mruby-1.4.1/build/host/lib/libmruby.a(io.o):c:/mingw/include/winsock.h:138: more undefined references to `__WSAFDIsSet@8' follow
    E:/mruby-1.4.1/build/host/lib/libmruby.a(io.o): In function `mrb_io_s_select':
    E:/mruby-1.4.1/mrbgems/mruby-io/src/io.c:1147: undefined reference to `select@20'
    E:/mruby-1.4.1/build/host/lib/libmruby.a(io.o): In function `_FD_ISSET':
    c:/mingw/include/winsock.h:138: undefined reference to `__WSAFDIsSet@8'
    c:/mingw/include/winsock.h:138: undefined reference to `__WSAFDIsSet@8'
    c:/mingw/include/winsock.h:138: undefined reference to `__WSAFDIsSet@8'
    c:/mingw/include/winsock.h:138: undefined reference to `__WSAFDIsSet@8'
    c:/mingw/include/winsock.h:138: undefined reference to `__WSAFDIsSet@8'
    E:/mruby-1.4.1/build/host/lib/libmruby.a(io.o):c:/mingw/include/winsock.h:138: more undefined references to `__WSAFDIsSet@8' follow
    collect2.exe: error: ld returned 1 exit status
    
    0 回复  |  直到 6 年前