nevillegrech / gigahorse-toolchain

A binary lifter and analysis framework for Ethereum smart contracts
Other
290 stars 59 forks source link

Encountered a problem when installing the Souffle custom functors #105

Closed Stamp9 closed 1 year ago

Stamp9 commented 1 year ago

Hey, I am trying to install Gigahorse from a local clone by following the instructions in the README file, but encountered make: *** [num256.o] Error 1 error. The souffle version is 2.3 and cpp_int.hpp exists in boost, so I am not sure why it happened and if it is the same reason caused #67. I am using a Macbook with Apple M1 Pro chips, the operating system is macOS Monterey 12.4. It encountered the same error when I tried to install it on ssh with Ubuntu 20.04.6 LTS. Any suggestion is appreciated, thanks in advance!

➜  souffle-addon git:(b2ef95b) make
g++ -std=c++17 -O2 num256.cpp -c -fPIC -o num256.o
num256.cpp:3:10: fatal error: 'boost/multiprecision/cpp_int.hpp' file not found
#include <boost/multiprecision/cpp_int.hpp>
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
make: *** [num256.o] Error 1
➜  souffle-addon git:(b2ef95b) souffle --version
----------------------------------------------------------------------------
Version: 2.3
----------------------------------------------------------------------------
Copyright (c) 2016-22 The Souffle Developers.
Copyright (c) 2013-16 Oracle and/or its affiliates.
All rights reserved.
============================================================================
➜  multiprecision git:(stable) pwd
/opt/homebrew/Cellar/boost/1.82.0_1/include/boost/multiprecision
➜  multiprecision git:(stable) ls
complex128.hpp       debug_adaptor.hpp    mpc.hpp
complex_adaptor.hpp  detail               mpfi.hpp
concepts             eigen.hpp            mpfr.hpp
cpp_bin_float        float128.hpp         number.hpp
cpp_bin_float.hpp    fwd.hpp              random.hpp
cpp_complex.hpp      gmp.hpp              rational_adaptor.hpp
cpp_dec_float.hpp    integer.hpp          tommath.hpp
cpp_int              logged_adaptor.hpp   traits
cpp_int.hpp          miller_rabin.hpp
sifislag commented 1 year ago

Hi,

I (or anyone in the core team) do not have an M1 macbook to test gigahorse. What we've been doing for the past years is having basic support for m1 macs using docker. I tested it a few months ago and it was working as expected.

For ubuntu 20.04 did you install the boost libs using apt install libboost-all-dev? You can see how we setup the environment of our linux Dockerfile to ensure you're not missing anything else.

I hope I was able to help, let me know if you need anything else.

Sifis.

Stamp9 commented 1 year ago

Hi, Sifis

Thanks for your quick reply! It works by using docker, thanks again :>