exthereum / libsecp256k1

Erlang NIF bindings for libsecp256k1 ECDSA library
MIT License
8 stars 23 forks source link

Compiled error on mac #17

Open sc0Vu opened 5 years ago

sc0Vu commented 5 years ago

Hi

Thanks for this great library. Recently I got error on my mac pro when I want to compile this library. OS: Mojave 10.14.2 XCODE version: 10.1

  1. The first error: configure error at line 77 After I compiled the source code from bitcoin (clone in another directory), and it worked fine. So I checked the file permission in mix directory, found that it happened because the wrong permission in the cloned repo: c_src/libsecp256k1. Maybe we can put libsecp256k1 in this repo?

  2. The second error: ld: library not found for -lgmp I removed the flag and it worked!. I have no idea how to fix it properly.

Thanks!

tzumby commented 5 years ago

@sc0Vu, to fix #2 you need to install the GMP package

brew install gmp

I think I'm trying to debug #1 in Mac OS as well.

This is the config.log after I run mix compile

configure:3547: checking whether the C compiler works
configure:3569: gcc  -I/usr/local/opt/qt/include -L/usr/local/opt/qt/lib -dynamiclib -undefined dynamic_lookup c_src/secp256k1/.libs/libsecp256k1.a -lgmp conftest.c  >&5
clang: error: no such file or directory: 'c_src/secp256k1/.libs/libsecp256k1.a'

If I cd into deps/libsecp256k1/c_src and run build_deps from there it works.

./build_deps.sh

This tells me the main Makefile executing the build_deps bash script doesn't get access to the same bash environment variables ?

ppraisethesun commented 2 years ago

@sc0Vu, to fix #2 you need to install the GMP package

brew install gmp

I think I'm trying to debug #1 in Mac OS as well.

This is the config.log after I run mix compile

configure:3547: checking whether the C compiler works
configure:3569: gcc  -I/usr/local/opt/qt/include -L/usr/local/opt/qt/lib -dynamiclib -undefined dynamic_lookup c_src/secp256k1/.libs/libsecp256k1.a -lgmp conftest.c  >&5
clang: error: no such file or directory: 'c_src/secp256k1/.libs/libsecp256k1.a'

If I cd into deps/libsecp256k1/c_src and run build_deps from there it works.

./build_deps.sh

This tells me the main Makefile executing the build_deps bash script doesn't get access to the same bash environment variables ?

Having the same issue with gmp. brew install gmp doesn't work, it just says I already have it installed.

Did you manage to solve this issue or is there any alternative?