lucasjones / cpuminer-multi

Multi-algo CPUMiner & Reference Cryptonote Miner (JSON-RPC 2.0)
Other
640 stars 1.5k forks source link

can't build with statically linked library #28

Open jm33-m0 opened 8 years ago

jm33-m0 commented 8 years ago
0xAliNik commented 7 years ago

Same question !

0xAliNik commented 7 years ago

when use : ./configure CFLAGS="-static"

get this error :

checking for libcurl >= version 7.15.2... yes
checking whether libcurl is usable... no
configure: error: Missing required libcurl >= 7.15.2
0xAliNik commented 7 years ago

Any idea !?

lucasjones commented 7 years ago

If the static libcurl libraries aren't in the centos package repos you'll have to compile them yourself, so that cpuminer can statically link it (instructions: https://curl.haxx.se/docs/install.html)

0xAliNik commented 7 years ago

I'm in ARM (raspberry), and I compile curl manually with : ./configure --disable-shared --enable-static

and use this for cpuminer : ./configure CFLAGS="-static" LDFLAGS="-L/usr/local/lib/libcurl.a" LIBS="-lssl -lcrypto -lssl -lcrypto -lz" CFLAGS="-DCURL_STATICLIB"

but : file minerd : minerd: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-armhf.so.3, for GNU/Linux 2.6.32, BuildID[sha1]=a9541f017f019a12994119910c2f7a72fc427e7d, not stripped

ldd minerd : linux-vdso.so.1 (0x7ecc4000) /usr/lib/arm-linux-gnueabihf/libarmmem.so (0x76fa9000) libcurl.so.4 => /usr/lib/arm-linux-gnueabihf/libcurl.so.4 (0x76f20000) libssl.so.1.0.0 => /usr/lib/arm-linux-gnueabihf/libssl.so.1.0.0 (0x76ec6000) libcrypto.so.1.0.0 => /usr/lib/arm-linux-gnueabihf/libcrypto.so.1.0.0 (0x76d58000) libz.so.1 => /lib/arm-linux-gnueabihf/libz.so.1 (0x76d31000) libjansson.so.4 => /usr/lib/arm-linux-gnueabihf/libjansson.so.4 (0x76d15000) libpthread.so.0 => /lib/arm-linux-gnueabihf/libpthread.so.0 (0x76cec000) libc.so.6 => /lib/arm-linux-gnueabihf/libc.so.6 (0x76bab000) libidn.so.11 => /usr/lib/arm-linux-gnueabihf/libidn.so.11 (0x76b6a000) librtmp.so.1 => /usr/lib/arm-linux-gnueabihf/librtmp.so.1 (0x76b41000) libssh2.so.1 => /usr/lib/arm-linux-gnueabihf/libssh2.so.1 (0x76b1f000) libgssapi_krb5.so.2 => /usr/lib/arm-linux-gnueabihf/libgssapi_krb5.so.2 (0x76ad4000) libkrb5.so.3 => /usr/lib/arm-linux-gnueabihf/libkrb5.so.3 (0x76a20000) libk5crypto.so.3 => /usr/lib/arm-linux-gnueabihf/libk5crypto.so.3 (0x769e2000) libcom_err.so.2 => /lib/arm-linux-gnueabihf/libcom_err.so.2 (0x769cf000) liblber-2.4.so.2 => /usr/lib/arm-linux-gnueabihf/liblber-2.4.so.2 (0x769b3000) libldap_r-2.4.so.2 => /usr/lib/arm-linux-gnueabihf/libldap_r-2.4.so.2 (0x7695e000) /lib/ld-linux-armhf.so.3 (0x54b4b000) libdl.so.2 => /lib/arm-linux-gnueabihf/libdl.so.2 (0x7694b000) libgnutls-deb0.so.28 => /usr/lib/arm-linux-gnueabihf/libgnutls-deb0.so.28 (0x7683e000) libhogweed.so.2 => /usr/lib/arm-linux-gnueabihf/libhogweed.so.2 (0x76805000) libnettle.so.4 => /usr/lib/arm-linux-gnueabihf/libnettle.so.4 (0x767c5000) libgmp.so.10 => /usr/lib/arm-linux-gnueabihf/libgmp.so.10 (0x76752000) libgcrypt.so.20 => /lib/arm-linux-gnueabihf/libgcrypt.so.20 (0x766af000) libkrb5support.so.0 => /usr/lib/arm-linux-gnueabihf/libkrb5support.so.0 (0x76696000) libkeyutils.so.1 => /lib/arm-linux-gnueabihf/libkeyutils.so.1 (0x7668b000) libresolv.so.2 => /lib/arm-linux-gnueabihf/libresolv.so.2 (0x76666000) libsasl2.so.2 => /usr/lib/arm-linux-gnueabihf/libsasl2.so.2 (0x7663e000) libp11-kit.so.0 => /usr/lib/arm-linux-gnueabihf/libp11-kit.so.0 (0x765fd000) libtasn1.so.6 => /usr/lib/arm-linux-gnueabihf/libtasn1.so.6 (0x765dd000) libgpg-error.so.0 => /lib/arm-linux-gnueabihf/libgpg-error.so.0 (0x765bf000) libffi.so.6 => /usr/lib/arm-linux-gnueabihf/libffi.so.6 (0x765ae000) libgcc_s.so.1 => /lib/arm-linux-gnueabihf/libgcc_s.so.1 (0x76581000)

I tried many ways but always get the dynamic lib..help me please.

thanks a lot.

0xAliNik commented 7 years ago

any idea for static build !?

ghost commented 7 years ago

checking whether le32enc is declared... no checking for size_t... yes checking for working alloca.h... yes checking for alloca... yes checking for getopt_long... yes checking for json_loads in -ljansson... no checking for pthread_create in -lpthread... yes checking for OPENSSL_init in -lcrypto... yes checking whether __uint128_t is supported... no checking for gawk... (cached) gawk checking for curl-config... /usr/local/curl/bin/curl-config checking for the version of libcurl... 7.54.1 checking for libcurl >= version 7.15.2... yes checking whether libcurl is usable... no configure: error: Missing required libcurl >= 7.15.2 ubs14@ubuntu14-32:~/cpuminer-multi$ ./configure --with-libcurl=/usr/local/curl LDFLAGS="-static"

compile curl by myself and set curl-config --static-libs but then..