Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

'glog/logging.h' file not found

some time ago, every time I start a new project of react-native or when I install the modules I present this error.

'glog/logging.h' file not found.

I found a way to solve it

cd node_modules/react-native/third-party/glog-0.3.4
../../scripts/ios-configure-glog.sh

but it is very tedious to be running this every time.

It seems to be some bad configuration of node or something like that

like image 434
jose920405 Avatar asked Apr 04 '18 17:04

jose920405


3 Answers

Assuming you are starting at your projects root

cd node_modules/react-native/third-party/glog-0.3.4

sh ../../scripts/ios-configure-glog.sh

ios-configure-glog.sh uses a relative path to ./configure so you have to change this or cd first or else it will error.

All props to @jose920405!

like image 130
Justin Avatar answered Nov 02 '22 20:11

Justin


Just try cd ios && pod install

may it works

like image 20
S Mohan Avatar answered Nov 02 '22 19:11

S Mohan


Hello the problem come from the ios-configure-glog.sh you need to remplace this file with a newer version because on the 0.034 the test of simulator is missing...

The good code is

#!/bin/bash
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
like image 2
Mike Avatar answered Nov 02 '22 21:11

Mike