如何在MacOS Catalina上使用gcc安装Nokogiri

问题描述 投票:0回答:1

我正在尝试在MacOS Catalina 10.15.1系统上安装Nokogiri。

gem install nokogiri

日志文件中的错误是:

"gcc -o conftest -I/Users/shairyar/.rvm/rubies/ruby-2.6.3/include/ruby-2.6.0/x86_64-darwin18 -I/Users/shairyar/.rvm/rubies/ruby-2.6.3/include/ruby-2.6.0/ruby/backward -I/Users/shairyar/.rvm/rubies/ruby-2.6.3/include/ruby-2.6.0 -I. -I/usr/local/opt/readline/include -I/usr/local/opt/libyaml/include -I/usr/local/opt/readline/include -I/usr/local/opt/libksba/include -I/usr/local/opt/[email protected]/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT   -O3 -ggdb3 -Wall -Wextra -Wdeclaration-after-statement -Wdeprecated-declarations -Wdivision-by-zero -Wimplicit-function-declaration -Wimplicit-int -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wmissing-noreturn -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wunused-variable -Wextra-tokens  -fno-common -pipe  -I /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/libxml2 conftest.c  -L. -L/Users/shairyar/.rvm/rubies/ruby-2.6.3/lib -L/usr/local/opt/libyaml/lib -L/usr/local/opt/readline/lib -L/usr/local/opt/libksba/lib -L/usr/local/opt/[email protected]/lib -L. -L/usr/local/opt/readline/lib -fstack-protector-strong -L/usr/local/lib -L/usr/local/opt/libyaml/lib -L/usr/local/opt/readline/lib -L/usr/local/opt/libksba/lib -L/usr/local/opt/[email protected]/lib     -lruby.2.6    "
    gcc: error: unrecognized command line option '-Wdivision-by-zero'; did you mean '-Wdiv-by-zero'?
    gcc: error: unrecognized command line option '-Wshorten-64-to-32'
    gcc: error: unrecognized command line option '-Wextra-tokens'; did you mean '-Wextra-semi'?
    checked program was:
    /* begin */
    1: #include "ruby.h"
    2:
    3: int main(int argc, char **argv)
    4: {
    5:   return 0;
    6: }
    /* end */

我一直在搜索并尝试使用brew install gccbrew link gcc安装gcc,但这无济于事。

这是我拥有的gcc版本:

$which gcc
/usr/local/bin/gcc

$gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc/x86_64-apple-darwin19/9.2.0/lto-wrapper
Target: x86_64-apple-darwin19
Configured with: ../gcc-9.2.0/configure --build=x86_64-apple-darwin19 --disable-nls --enable-checking=release --with-system-zlib --disable-multilib --with-sysroot=/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk --enable-languages=c,c++,fortran --with-gmp=/usr/local --with-mpc=/usr/local --with-mpfr=/usr/local
Thread model: posix
gcc version 9.2.0 (GCC)

我也尝试了以下无效的方法:

  1. gem install nokogiri -- --use-system-libraries
  2. CC=llvm-gcc gem install nokogiri
ruby gcc nokogiri
1个回答
0
投票
为了解决问题,我删除了我安装的位于/usr/local/bin/gcc的gcc,这似乎已经解决了我的问题。当我运行命令

which gcc

我得到的输出是:

/usr/local/bin/gcc

我需要Apple在/usr/bin/gcc上安装的那个。
© www.soinside.com 2019 - 2024. All rights reserved.