MoneroOcean/xmrig

Building from source on Ubuntu 20.10 gives "make[2]: *** No rule to make target '/usr/lib/x86_64-linux-gnu/libuv.a', needed by 'xmrig'. Stop."

mreed911 opened this issue · 7 comments

Error during make step:

make[2]: *** No rule to make target '/usr/lib/x86_64-linux-gnu/libuv.a', needed by 'xmrig'. Stop.
make[1]: *** [CMakeFiles/Makefile2:136: CMakeFiles/xmrig.dir/all] Error 2
make: *** [Makefile:84: all] Error 2

To Reproduce
Update Ubuntu to 20.10. Follow "make from source" instructions, substituting the moneroocean xmrig repo for the xmrig base repo. Version I've cloned is 6.12.2.
Walk through advanced build steps.

Expected behavior
Make completes and creates a binary.

First attempt at building since updating from 20.04 to 20.10. No problems with static/advanced build on 6.10.x on 20.04.

Branch is up to date:
From https://github.com/MoneroOcean/xmrig

  • branch master -> FETCH_HEAD
    Already up to date.

I'd just use the included deps instead of the dev packages from Ubuntu/Debian.

cd scripts && bash ./build_deps.sh

Needs automake, autoconf, libtool...

That's what fails. Actually, it fails either way (tried it on a second box). Note the "Follow "make from source" instructions, substituting the moneroocean xmrig repo for the xmrig base repo" line in the report.

./build_deps appears to complete fine, but make fails looking for libuv.a.

I ended up just grabbing the binary and it's working again, but the build steps don't work on 20.10.

Once you've built deps, add -DXMRIG_DEPS=../scripts/deps to cmake or it won't find the result

We don't seem to be communicating well. I started with the advanced steps here, including that flag:

https://xmrig.com/docs/miner/build/ubuntu

They produce the error above when running make after doing so.

These are the ones linked to on "Build from Source" for MoneroOcean xmrig.

And yes, on the GIT step, I'm using the moneroocean/xmrig not the base xmrig.

Step 5 is wrong, note the ../ missing

Works fine.

[100%] Built target xmrig
make[1]: Leaving directory '/usr/src/xmrig/build/gcc10'
/usr/bin/cmake -E cmake_progress_start /usr/src/xmrig/build/gcc10/CMakeFiles 0
root@groovy:/usr/src/xmrig/build/gcc10# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 20.10
Release:        20.10
Codename:       groovy
root@groovy:/usr/src/xmrig/build/gcc10# ./xmrig --version
XMRig 6.12.3-dev-mo3a
 built on Jun 15 2021 with GCC 10.2.0
 features: 64-bit AES

libuv/1.41.0
OpenSSL/1.1.1k
hwloc/2.4.1

We don't seem to be communicating well. I started with the advanced steps here, including that flag:

https://xmrig.com/docs/miner/build/ubuntu

They produce the error above when running make after doing so.

These are the ones linked to on "Build from Source" for MoneroOcean xmrig.

And yes, on the GIT step, I'm using the moneroocean/xmrig not the base xmrig.

You may need to install cmake as that depends on libuv and is how you build from source.

$ apt-get install cmake -y

Or

$ apt-get install libuv1 libuv1-dev -y

I've built this on Android and Ubuntu by the following:

$ apt-get install autoconf automake cmake libtool -y
$ git clone xmrig
$ cd xmrig && mkdir build && cd build
$ cmake .. <-DOPTIONS> ( where you specify libraries or includes if they are not in the typical place)
$ make

Done.