Eos: mac os 10.13.3, exec ./eosio_build.sh failed

Created on 2 Apr 2018  ·  17Comments  ·  Source: EOSIO/eos

image
I just exec:
# git clone https://github.com/eosio/eos --recursive
and exec:
# cd eos
# ./eosio_build.sh
then, error occured, what should I do next?

Most helpful comment

It looks like home-brew did not symlink get text properly. run the following commands.

brew unlink gettext && brew link --force gettext
find /usr -name libintl* -print 2>/dev/null

The output should now show:
/usr/local/include/libintl.h
/usr/local/lib/libintl.dylib
/usr/local/lib/libintl.8.dylib
/usr/local/lib/libintl.a
/usr/local/Cellar/gettext/0.19.8.1/include/libintl.h
/usr/local/Cellar/gettext/0.19.8.1/lib/libintl.dylib
/usr/local/Cellar/gettext/0.19.8.1/lib/libintl.8.dylib
/usr/local/Cellar/gettext/0.19.8.1/lib/libintl.a
/usr/local/Cellar/gettext/0.19.8.1/share/gettext/intl/libintl.rc

All 17 comments

Can you run the following commands and paste the result here?
find /usr -name libintl* -print 2>/dev/null
brew list --versions gettext
brew list
Thank you.

I get the same error

find /usr -name libintl* -print 2>/dev/null                                                                                                                             255 ↵
brew list --versions gettext
brew list
/usr/local/Cellar/gettext/0.19.8.1/include/libintl.h
/usr/local/Cellar/gettext/0.19.8.1/lib/libintl.dylib
/usr/local/Cellar/gettext/0.19.8.1/lib/libintl.8.dylib
/usr/local/Cellar/gettext/0.19.8.1/lib/libintl.a
/usr/local/Cellar/gettext/0.19.8.1/share/gettext/intl/libintl.rc
gettext 0.19.8.1
autoconf    cmake       gd      gmp     libidn2     libunistring    nvm     readline    wget
automake    doxygen     gdbm        graphviz    libpng      llvm@4      openssl     sqlite      xz
awscli      fontconfig  gettext     jpeg        libtiff     mongodb     pkg-config  tree        zsh
boost       freetype    git     libffi      libtool     mysql       python      webp

@pacificcode
image

Here is the result,what should I do to figure out the problem??

It looks like home-brew did not symlink get text properly. run the following commands.

brew unlink gettext && brew link --force gettext
find /usr -name libintl* -print 2>/dev/null

The output should now show:
/usr/local/include/libintl.h
/usr/local/lib/libintl.dylib
/usr/local/lib/libintl.8.dylib
/usr/local/lib/libintl.a
/usr/local/Cellar/gettext/0.19.8.1/include/libintl.h
/usr/local/Cellar/gettext/0.19.8.1/lib/libintl.dylib
/usr/local/Cellar/gettext/0.19.8.1/lib/libintl.8.dylib
/usr/local/Cellar/gettext/0.19.8.1/lib/libintl.a
/usr/local/Cellar/gettext/0.19.8.1/share/gettext/intl/libintl.rc

Thank @pacificcode. It worked.

I worked, Thanks a lot ! @pacificcode

@pacificcode I encountered the same issue here, tried the solution above, but with no luck, are there any other possible reasons mac build will fail? thanks!

1. build script log

❯ ./eosio_build.sh

    Beginning build version: 1.2
    Wed  2 May 2018 09:09:58 UTC
    git head id: 0a04ff86a6b8ab97a76dce4c9846a9f5c7b0b274
    Current branch: * dawn-v3.0.0

    ARCHITECTURE: Darwin

    OS name: Darwin
    OS Version: 10.13.4
    CPU speed: 220.00Ghz
    CPU cores: 4
    Physical Memory: 16 Gbytes
    Disk space total: 233G
    Disk space available: 37G

    Checking XCode installation
    XCode installation found.

    Checking Ruby installation
    Ruby installation found.

    Checking Home Brew installation
    Home Brew installation found.

    Checking dependencies.
    Checking automake ...        automake found
    Checking Libtool ...         Libtool found
    Checking OpenSSL ...         OpenSSL found
    Checking llvm ...        llvm found
    Checking wget ...        wget found
    Checking CMake ...       CMake found
    Checking Boost ...       Boost found
    Checking GMP ...         GMP found
    Checking gettext ...         gettext found
    Checking MongoDB ...         MongoDB found
    Checking Doxygen ...         Doxygen found
    Checking Graphviz ...        Graphviz found
    Checking Python3 ...         Python3 found

    No required Home Brew dependencies to install.

    Checking MongoDB C++ driver installation.
    Mongo C++ driver found at /usr/local/lib/libmongocxx-static.a.

    Checking secp256k1-zkp installation.
    secp256k1 found at /usr/local/lib/

    Checking LLVM with WASM support.
    WASM found at /usr/local/wasm/bin/


>>>>>>>> ALL dependencies sucessfully found or installed . Installing EOS.IO

-- Using custom FindBoost.cmake
-- Boost version: 1.66.0
-- Found the following Boost libraries:
--   thread
--   date_time
--   filesystem
--   system
--   program_options
--   signals
--   serialization
--   chrono
--   unit_test_framework
--   context
--   locale
--   iostreams
-- Configuring Eos on OS X
CMake Error at /usr/local/Cellar/cmake/3.5.1/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:148 (message):
  Could NOT find Threads (missing: Threads_FOUND)
Call Stack (most recent call first):
  /usr/local/Cellar/cmake/3.5.1/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:388 (_FPHSA_FAILURE_MESSAGE)
  /usr/local/Cellar/cmake/3.5.1/share/cmake/Modules/FindThreads.cmake:223 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
  externals/binaryen/CMakeLists.txt:96 (FIND_PACKAGE)


-- Configuring incomplete, errors occurred!
See also "/Users/wangshijun/Develop/blockchain/eos/build/CMakeFiles/CMakeOutput.log".
See also "/Users/wangshijun/Develop/blockchain/eos/build/CMakeFiles/CMakeError.log".

    >>>>>>>>>>>>>>>>>>>> CMAKE building EOSIO has exited with the above error.

2. CMakeError.log

Determining if the include file pthread.h exists failed with the following output:
Change Dir: /Users/wangshijun/Develop/blockchain/eos/build/CMakeFiles/CMakeTmp

Run Build Command:"/usr/bin/make" "cmTC_32239/fast"
/Applications/Xcode.app/Contents/Developer/usr/bin/make -f CMakeFiles/cmTC_32239.dir/build.make CMakeFiles/cmTC_32239.dir/build
Building C object CMakeFiles/cmTC_32239.dir/CheckIncludeFile.c.o
/usr/local/bin/clang     -o CMakeFiles/cmTC_32239.dir/CheckIncludeFile.c.o   -c /Users/wangshijun/Develop/blockchain/eos/build/CMakeFiles/CMakeTmp/CheckIncludeFile.c
/Users/wangshijun/Develop/blockchain/eos/build/CMakeFiles/CMakeTmp/CheckIncludeFile.c:1:10: fatal error: 'pthread.h' file not found
#include <pthread.h>
         ^~~~~~~~~~~
1 error generated.
make[1]: *** [CMakeFiles/cmTC_32239.dir/CheckIncludeFile.c.o] Error 1
make: *** [cmTC_32239/fast] Error 2

3. gettext seems proper symblinked

❯ find /usr -name libintl* -print 2>/dev/null
/usr/local/include/libintl.h
/usr/local/lib/libintl.dylib
/usr/local/lib/libintl.8.dylib
/usr/local/lib/libintl.a
/usr/local/Cellar/texi2html/5.0/share/texi2html/lib/libintl-perl
/usr/local/Cellar/gettext/0.19.8.1/include/libintl.h
/usr/local/Cellar/gettext/0.19.8.1/lib/libintl.dylib
/usr/local/Cellar/gettext/0.19.8.1/lib/libintl.8.dylib
/usr/local/Cellar/gettext/0.19.8.1/lib/libintl.a
/usr/local/Cellar/gettext/0.19.8.1/share/gettext/intl/libintl.rc

@wangshijun can you run:
find /usr -name pthread.h -print 2>/dev/null

@pacificcode appreciate your help!

❯ find /usr -name pthread.h -print 2>/dev/null
/usr/include/pthread/pthread.h
/usr/include/pthread.h

what should I do next?

image

image

@wangshijun The header file cmake is looking for is clearly located @
/usr/include/pthread/pthread.h
/usr/include/pthread.h

  • I would recommend checking your $PATH
    $ echo $PATH
    /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
  • Reboot your computer and clear your parameter ram
    https://support.apple.com/en-us/HT204063
    I would also run the following:
    cd /path/to/eos
    rm -rf /path/to/eos/build
    git pull
    git submodule update --init --recursive
    ./eosio_build.sh

Capture the output of the script and if you run into any further issues send the output and your CMakeError.log.

@gavinwyf It looks like you have boost and llvm issues. Try running the following:
brew remove --force boost
brew remove --force llvm
cd /path/to/eos
rm -rf build/
git pull
git submodule update --init --recursive
./eosio_build.sh
Capture the output of the script and if you run into any further issues send the output and your CMakeError.log.

@pacificcode
tks,already eosio build is successful

@hoopslb
brew unlink gettext && brew link --force gettext

find /usr -name libintl* -print 2>/dev/null

Your output should be (and you should be good to go):
$ find /usr -name libintl* -print 2>/dev/null
/usr/local/include/musl/upstream/include/libintl.h
/usr/local/include/libintl.h
/usr/local/lib/libintl.dylib
/usr/local/lib/libintl.8.dylib
/usr/local/lib/libintl.a
/usr/local/Cellar/gettext/0.19.8.1/include/libintl.h
/usr/local/Cellar/gettext/0.19.8.1/lib/libintl.dylib
/usr/local/Cellar/gettext/0.19.8.1/lib/libintl.8.dylib
/usr/local/Cellar/gettext/0.19.8.1/lib/libintl.a
/usr/local/Cellar/gettext/0.19.8.1/share/gettext/intl/libintl.rc

@pacificcode now the build succeed! thank you so much! 👍

@pacificcode You're a beast - thanks so much for the fix! working perfectly now.

Was this page helpful?
0 / 5 - 0 ratings