Beta Compilier Errors - Best Path Forward?


#1

Following the Beta User Guide, but got some errors during the compile process (running Ubuntu 16.04 LTS) using ./zcutil/build.sh -j$(nproc)

undefined reference to `uiInterface'
collect2: error: ld returned 1 exit status
Makefile:3074: recipe for target 'zcashd' failed
make[2]: *** [zcashd] Error 1
make[2]: Leaving directory '/home/anonymous/zcash/src'
Makefile:7325: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/anonymous/zcash/src'
Makefile:644: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1

What's my best path forward here? Blow the ~/zcash folder structure away and try again, or is there something that might be done to put this right?

Scott


#2

You may try running the build.sh without the processor argument ./zcutil/build.sh

That helped on an older PC I was testing that had a slow processor and little RAM, otherwise it may be a permissions issue.

Also be sure you have at least 4-6GB free for the compilation


#3

I did use ./zcutil/build.sh too, and got the same error.

However, I checked my RAM and found it too low (MemTotal: 3721920 kB)

This is a newly built machine and I thought I had the RAM in there - oops! I'll install it and try again.

Thanks for the reminder,

Scott


#4

Also, unless you re-launch the compilation and it's always the same problem, you can re-launch it until it succeeds.

I've done that on a modest server (Digital Ocean 2 cores 2Gb), and I relaunched like 10 times until compilation success.

What did not work because of the lack of memory was the tests, the zbenchmark and the JointSplits (private transactions). But mining and unprotected transaction worked fine with the binary compiled that way.

Maybe that's because of the low difficulty though :slight_smile:


#5

I also had a problem trying to compile with

zcash/zcutil/build.sh -j$(nproc)

Apparently because my 4-core intel advertises it has 8 processors. The old method worked:

zcash/zcutil/build.sh -j4

This is the only way I could output a single number to tell me the real number of cores:

cat /proc/cpuinfo | grep -o -m1 "cpu cores.*" | sed "s/.*: //"

#6

Tried zcash/zcutil/build.sh a bunch of times as well as zcash/zcutil/build.sh -j2 (I have two processors) and I always get the same error.

If I remove the zcash folders, wil that be enought to start again, or is there a better way to do it over?


#7

You can also try make clean


#8

If I need to start over I just delete the entire folders:
zcash
.zcash-params
.zcash
And just re-start installing from the
git clone https://github.com/zcash/zcash.git step


#9

I have not had any problem keeping .zcash-params (on many re-installs) and it saves a lot of downloading time. I just do this before re-installing:

rm -rf .zcash/testnet3
rm -rf zcash

I would place it my home folder in case it has some weirdness from you putting it in a subfolder like that.


#10

OK - thanks for the advice - I'm going to start over and give it another try!


#11

I had the same error and wasn't able to resolve it. Fortunately I am working on a VirtualBox image dedicated to zcash so I just wiped it and installed a fresh OS which solved everything.

Crude but it's a first step!


#12

i have the same error? how did you resolve the problem?


#13

how to delete the folder? and star again? pleaaase s by step i am new in linux


#14

I was never able to get it going, so I wiped my machine, reinstalled Ubuntu and will start over again. Please let me know if you are successful and if you did anything special to get it going!