代码之家  ›  专栏  ›  技术社区  ›  JP Silvashy Gautam Rege

GCC未定义符号

  •  1
  • JP Silvashy Gautam Rege  · 技术社区  · 15 年前

    我最近放弃了MacPorts Homebrew ,因此我现在遇到一些问题 make . 即此错误:

    /Developer/usr/bin/llvm-gcc   -rdynamic -o zsh main.o  `cat stamp-modobjs`   -liconv -ldl -ltermcap -lm  -lc
    Undefined symbols:
      "_libiconv_open", referenced from:
          llvm bitcode in utils.o
      "_libiconv_close", referenced from:
          llvm bitcode in utils.o
      "_libiconv", referenced from:
          llvm bitcode in utils.o
    ld: symbol(s) not found
    collect2: ld returned 1 exit status
    make[1]: *** [zsh] Error 1
    make: *** [install.bin] Error 2
    

    这三个图书馆似乎没有联系。老实说,我是一个Ruby开发人员,从不需要编译任何东西,所以不知道该从哪里着手解决这个问题。当我从源代码编译任何东西时,就会发生这种情况。

    在上面的示例中,这是运行时的输出 制作 安装时 zsh

    2 回复  |  直到 11 年前
        1
  •  1
  •   Paul R    15 年前

    为什么要使用llvm gcc?为了获得最大的兼容性,您最好使用GCC-4.0或GCC-4.2,它们都是作为OS X 10.6中开发人员工具的一部分安装的。

        2
  •  2
  •   wich    15 年前

    libiconv似乎没有链接,您需要向命令行提供-liconv,因此在标准位置上,库似乎没有安装,或者至少对链接器不可用。你安装了libiconv吗?