반응형

대충 아래와 같은 오류를 만났을 때,,

lovapi@lovapis-Mac-mini ~ % sudo gem install cocoapods

Building native extensions. This could take a while...

ERROR:  Error installing cocoapods:

ERROR: Failed to build gem native extension.

 

    current directory: /Library/Ruby/Gems/2.6.0/gems/ffi-1.14.2/ext/ffi_c

/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/ruby -I /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0 -r ./siteconf20210225-19559-1cs3w9s.rb extconf.rb

checking for ffi.h... *** 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=/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/$(RUBY_BASE_NAME)

--with-ffi_c-dir

--without-ffi_c-dir

--with-ffi_c-include

--without-ffi_c-include=${ffi_c-dir}/include

--with-ffi_c-lib

--without-ffi_c-lib=${ffi_c-dir}/lib

--enable-system-libffi

--disable-system-libffi

--with-libffi-config

--without-libffi-config

--with-pkg-config

--without-pkg-config

/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:467:in `try_do': The compiler failed to generate an executable file. (RuntimeError)

You have to install development tools first.

from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:585:in `block in try_compile'

from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:534:in `with_werror'

from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:585:in `try_compile'

from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:1109:in `block in have_header'

from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:959:in `block in checking_for'

from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:361:in `block (2 levels) in postpone'

from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:331:in `open'

from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:361:in `block in postpone'

from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:331:in `open'

from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:357:in `postpone'

from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:958:in `checking_for'

from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/mkmf.rb:1108:in `have_header'

from extconf.rb:10:in `system_libffi_usable?'

from extconf.rb:42:in `<main>'

 

To see why this extension failed to compile, please check the mkmf.log which can be found here:

 

  /Library/Ruby/Gems/2.6.0/extensions/universal-darwin-19/2.6.0/ffi-1.14.2/mkmf.log

 

extconf failed, exit code 1

 

Gem files will remain installed in /Library/Ruby/Gems/2.6.0/gems/ffi-1.14.2 for inspection.

Results logged to /Library/Ruby/Gems/2.6.0/extensions/universal-darwin-19/2.6.0/ffi-1.14.2/gem_make.out

대충 로그 파일을 보면...

 

요모양인데... 

package configuration for libffi is not found

"xcrun clang -o conftest -I/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/include/ruby-2.6.0/universal-darwin19 -I/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/include/ruby-2.6.0/ruby/backward -I/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/include/ruby-2.6.0 -I. -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT    -g -Os -pipe -DHAVE_GCC_ATOMIC_BUILTINS conftest.c  -L. -L/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib -L. -L/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.Internal.sdk/usr/local/lib   -arch x86_64   -lruby.2.6   "

In file included from conftest.c:1:

In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/include/ruby-2.6.0/ruby.h:33:

/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/include/ruby-2.6.0/ruby/ruby.h:24:10: fatal error: 'ruby/config.h' file not found

#include "ruby/config.h"

         ^~~~~~~~~~~~~~~

/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/include/ruby-2.6.0/ruby/ruby.h:24:10: note: did not find header 'config.h' in framework 'ruby' (loaded from '/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/System/Library/Frameworks')

1 error generated.

checked program was:

/* begin */

1: #include "ruby.h"

2:

3: int main(int argc, char **argv)

4: {

5:   return 0;

6: }

/* end */

 

어떻게 해결하냐면...

 

저 모듈을 깔거나... (하지만 또 다른데서 오류가 날 수 도 있으니까...)

 

아몰랑 루비 업뎃 ㄱㄱ! (이게 빠른 방법 되시겠다)

 

lovapi@lovapis-Mac-mini ~ % curl -L https://get.rvm.io | bash -s stable
lovapi@lovapis-Mac-mini ~ % source /Users/lovapi/.rvm/scripts/rvm     #(주황색은 본인 아이디로 치환)
lovapi@lovapis-Mac-mini ~ % rvm install ruby-2.7.2
lovapi@lovapis-Mac-mini ~ % sudo gem install cocoapods

조금 오래 걸리지만..

 

끝!

 

반응형
반응형

대충 아래와 같은 오류를 만났을 때,,

lovapi@lovapis-Mac-mini ios % pod install

Analyzing dependencies

Fetching podspec for `DoubleConversion` from `../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`

Fetching podspec for `Folly` from `../node_modules/react-native/third-party-podspecs/Folly.podspec`

Fetching podspec for `glog` from `../node_modules/react-native/third-party-podspecs/glog.podspec`

Downloading dependencies

Installing CocoaAsyncSocket (7.6.5)

Installing DoubleConversion (1.1.6)

Installing FBLazyVector (0.63.4)

Installing FBReactNativeSpec (0.63.4)

Installing Flipper (0.54.0)

Installing Flipper-DoubleConversion (1.1.7)

Installing Flipper-Folly (2.5.1)

Installing Flipper-Glog (0.3.6)

[!] /bin/bash -c 

set -e

#!/bin/bash

# Copyright (c) Facebook, Inc. and its affiliates.

#

# This source code is licensed under the MIT license found in the

# LICENSE file in the root directory of this source tree.

 

set -e

 

PLATFORM_NAME="${PLATFORM_NAME:-iphoneos}"

CURRENT_ARCH="${CURRENT_ARCH}"

 

if [ -z "$CURRENT_ARCH" ] || [ "$CURRENT_ARCH" == "undefined_arch" ]; then

    # Xcode 10 beta sets CURRENT_ARCH to "undefined_arch", this leads to incorrect linker arg.

    # it's better to rely on platform name as fallback because architecture differs between simulator and device

 

    if [[ "$PLATFORM_NAME" == *"simulator"* ]]; then

        CURRENT_ARCH="x86_64"

    else

        CURRENT_ARCH="armv7"

    fi

fi

 

export CC="$(xcrun -find -sdk $PLATFORM_NAME cc) -arch $CURRENT_ARCH -isysroot $(xcrun -sdk $PLATFORM_NAME --show-sdk-path)"

export CXX="$CC"

 

# Remove automake symlink if it exists

if [ -h "test-driver" ]; then

    rm test-driver

fi

 

./configure --host arm-apple-darwin

 

# Fix build for tvOS

cat << EOF >> src/config.h

/* Add in so we have Apple Target Conditionals */

#ifdef __APPLE__

#include <TargetConditionals.h>

#include <Availability.h>

#endif

/* Special configuration for AppleTVOS */

#if TARGET_OS_TV

#undef HAVE_SYSCALL_H

#undef HAVE_SYS_SYSCALL_H

#undef OS_MACOSX

#endif

/* Special configuration for ucontext */

#undef HAVE_UCONTEXT_H

#undef PC_FROM_UCONTEXT

#if defined(__x86_64__)

#define PC_FROM_UCONTEXT uc_mcontext->__ss.__rip

#elif defined(__i386__)

#define PC_FROM_UCONTEXT uc_mcontext->__ss.__eip

#endif

EOF

 

# Prepare exported header include

EXPORTED_INCLUDE_DIR="exported/glog"

mkdir -p exported/glog

cp -f src/glog/log_severity.h "$EXPORTED_INCLUDE_DIR/"

cp -f src/glog/logging.h "$EXPORTED_INCLUDE_DIR/"

cp -f src/glog/raw_logging.h "$EXPORTED_INCLUDE_DIR/"

cp -f src/glog/stl_logging.h "$EXPORTED_INCLUDE_DIR/"

cp -f src/glog/vlog_is_on.h "$EXPORTED_INCLUDE_DIR/"

 

checking for a BSD-compatible install... /usr/local/bin/ginstall -c

checking whether build environment is sane... yes

checking for arm-apple-darwin-strip... no

checking for strip... strip

checking for a thread-safe mkdir -p... /usr/local/bin/gmkdir -p

checking for gawk... no

checking for mawk... no

checking for nawk... no

checking for awk... awk

checking whether make sets $(MAKE)... yes

checking whether make supports nested variables... yes

checking for arm-apple-darwin-gcc... /Library/Developer/CommandLineTools/usr/bin/cc -arch armv7 -isysroot 

checking whether the C compiler works... no

xcrun: error: SDK "iphoneos" cannot be located

xcrun: error: SDK "iphoneos" cannot be located

xcrun: error: SDK "iphoneos" cannot be located

xcrun: error: unable to lookup item 'Path' in SDK 'iphoneos'

/Users/lovapi/Library/Caches/CocoaPods/Pods/Release/Flipper-Glog/0.3.6-1dfd6/missing: Unknown `--is-lightweight' option

Try `/Users/lovapi/Library/Caches/CocoaPods/Pods/Release/Flipper-Glog/0.3.6-1dfd6/missing --help' for more information

configure: WARNING: 'missing' script is too old or missing

configure: error: in `/Users/lovapi/Library/Caches/CocoaPods/Pods/Release/Flipper-Glog/0.3.6-1dfd6':

configure: error: C compiler cannot create executables

See `config.log' for more details

 

 

요로케 

lovapi@lovapis-Mac-mini ios % sudo xcode-select --switch /Applications/Xcode.app
lovapi@lovapis-Mac-mini ios % pod install

반응형

+ Recent posts