CryptoGoblin icon indicating copy to clipboard operation
CryptoGoblin copied to clipboard

WARNING: backend plugin CryptoGoblin_opencl contains no entry 'xmrstak_start_backend'

Open Mafaka8 opened this issue 7 years ago • 14 comments
trafficstars

Ubuntu 16.04 LTS

WARNING: backend plugin CryptoGoblin_opencl contains no entry 'xmrstak_start_backend': ./libCryptoGoblin_opencl.so: undefined symbol: xmrstak_start_backend WARNING: AMD Backend disabled

Mafaka8 avatar Apr 30 '18 05:04 Mafaka8

I need more information if I am to understand what is going on here. Does this error appear during compile or when you run it? Did you happen to have an old libcryptogoblin_opencl.so, or is that also updated? Would be nice if you could gist or pastebin the whole compile log and runtime log.

Dead2 avatar Apr 30 '18 08:04 Dead2

When I run the application. no old libcryptogoblin_opencl.so as this is the first time I ever installed your miner. let me try to find the compile and runtime logs.

Mafaka8 avatar Apr 30 '18 22:04 Mafaka8

is the compile log = CMakeOutput.log and the runtime log - where can I find that file?

Mafaka8 avatar Apr 30 '18 22:04 Mafaka8

Just copy-paste the complete output of the compile and the output when you try to run it

Dead2 avatar May 01 '18 10:05 Dead2

Compile Log - https://pastebin.com/hY25r8Ma

Runtime Log - https://pastebin.com/AXyGS1Cm

Mafaka8 avatar May 02 '18 01:05 Mafaka8

I do not see anything wrong in that output unfortunately, except that strip does not find the executable. ls -la build/bin should show both the executable and the library, does it not?

I know there could be problems using GCC 5.x, so you could try to install a newer version. I recommend GCC 7.x. You might need to add the following to cmakeopt to make cmake use the correct compiler: "-DCMAKE_CXX_COMPILER=/path/g++7 -DCMAKE_CC_COMPILER=/path/gcc7" Replace the path and executable names with the correct ones for your distro.

You can also enable verbose in build.sh, that might expose more information needed for debugging.

If things still do not work with the new gcc, then run ldd CryptoGoblin and nm -D libcryptoGoblin_opencl.so and send me the output.

Dead2 avatar May 03 '18 09:05 Dead2

Hello. I faced with same problem. Symbol "xmrstak_start_backend" present in ./build/CMakeFiles/CryptoGoblin_opencl.dir/xmrstak/backend/amd/minethd.cpp.o But libCryptoGoblin_opencl.so not contain that symbol. Build runs with no error (except "strip"). gcc version 7.3.1 20180323 [gcc-7-branch revision 258812] (SUSE Linux) gcc is too new? :-) Switching off LTO - same result. What else to look/try?

KavkaTSR avatar Nov 02 '18 03:11 KavkaTSR

@KavkaTSR How did you build it, and what was the output? (Please run it with verbose enabled in build.sh) After the build, run ldd CryptoGoblin and nm -D libcryptoGoblin_opencl.so and send me the output.

I use GCC 6, 7 and 8 without problems, so it is not the version that is a problem at least.

Dead2 avatar Nov 02 '18 07:11 Dead2

Compile with build.sh. build.sh.txt biuild.log ldd.log nm.log

Object file is fine. "Extern C" works: ./build/CMakeFiles/CryptoGoblin_opencl.dir/xmrstak/backend/amd> objdump -t minethd.cpp.o |grep xmrstak_start_backend 00000000000035c0 g F .text 0000000000000016 .internal xmrstak_start_backend

But ldd libCryptoGoblin_opencl.so |grep xmrstak_start_backend produce empty output.

KavkaTSR avatar Nov 02 '18 08:11 KavkaTSR

I see the problem now. A workaround, for now is to turn LTO off in build.sh. I will need to make some rather complex changes to fix this for the next release. (Press the "watch" button to get notified of releases)

Dead2 avatar Nov 02 '18 16:11 Dead2

I seem to still get the error even with LTO off are their any updates on this issue?

tsrnc2 avatar Feb 06 '19 17:02 tsrnc2

Have same problem, but build xmr-stak - no problems.

[2019-03-10 16:46:00] Mining coin: cryptonight_r WARNING: backend plugin CryptoGoblin_opencl contains no entry 'xmrstak_start_backend': ./libCryptoGoblin_opencl.so: undefined symbol: xmrstak_start_backend [2019-03-10 16:46:00] WARNING: backend AMD (OpenCL) disabled.

ldd CryptoGoblin linux-vdso.so.1 (0x00007fff54aff000) libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f9d5f391000) libmicrohttpd.so.12 => /usr/lib/x86_64-linux-gnu/libmicrohttpd.so.12 (0x00007f9d5f177000) libssl.so.1.1 => /usr/lib/x86_64-linux-gnu/libssl.so.1.1 (0x00007f9d5ef0b000) libcrypto.so.1.1 => /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1 (0x00007f9d5ea72000) libhwloc.so.5 => /usr/lib/x86_64-linux-gnu/libhwloc.so.5 (0x00007f9d5e836000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f9d5e632000) libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f9d5e2b0000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f9d5dfac000) libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f9d5dd95000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f9d5d9f6000) /lib64/ld-linux-x86-64.so.2 (0x00007f9d5fb7e000) libgnutls.so.30 => /usr/lib/x86_64-linux-gnu/libgnutls.so.30 (0x00007f9d5d65d000) libgcrypt.so.20 => /lib/x86_64-linux-gnu/libgcrypt.so.20 (0x00007f9d5d34d000) libnuma.so.1 => /usr/lib/x86_64-linux-gnu/libnuma.so.1 (0x00007f9d5d142000) libltdl.so.7 => /usr/lib/x86_64-linux-gnu/libltdl.so.7 (0x00007f9d5cf38000) libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f9d5cd1e000) libp11-kit.so.0 => /usr/lib/x86_64-linux-gnu/libp11-kit.so.0 (0x00007f9d5cab9000) libidn.so.11 => /lib/x86_64-linux-gnu/libidn.so.11 (0x00007f9d5c885000) libtasn1.so.6 => /usr/lib/x86_64-linux-gnu/libtasn1.so.6 (0x00007f9d5c672000) libnettle.so.6 => /usr/lib/x86_64-linux-gnu/libnettle.so.6 (0x00007f9d5c43b000) libhogweed.so.4 => /usr/lib/x86_64-linux-gnu/libhogweed.so.4 (0x00007f9d5c206000) libgmp.so.10 => /usr/lib/x86_64-linux-gnu/libgmp.so.10 (0x00007f9d5bf83000) libgpg-error.so.0 => /lib/x86_64-linux-gnu/libgpg-error.so.0 (0x00007f9d5bd62000) libffi.so.6 => /usr/lib/x86_64-linux-gnu/libffi.so.6 (0x00007f9d5bb59000)

minzak avatar Mar 10 '19 14:03 minzak

@bizlevel Did you try compiling with lto="OFF" in build.sh? Also, please include compile log (with verbose="ON"), it makes it a lot easier to debug.

If you only plan on CPU mining, opencl/cuda can also be disabled to work around this for now.

Dead2 avatar Mar 10 '19 14:03 Dead2

Still the same problem in last release. But I found the way to build working binaries. Get fresh "git clone", or unpack zip file from github, or do "make clean".

  1. set opencl=ON and cpu=OFF in build.sh, run build.sh take libCryptoGoblin_opencl.so from ./build/bin/
  2. set cpu=ON, run build.sh take CryptoGoblin from ./build/bin/

KavkaTSR avatar Apr 19 '19 02:04 KavkaTSR