![]() |
|
|
#1 |
|
"David Kirkby"
Jan 2021
Althorne, Essex, UK
2·3·61 Posts |
I am running CentOs 7.8 on a Dell 7920 with an Nvdia 2100 graphics card.
I cloned the git repository of gpuowl yesterday, and built gcc 10.2.0, as my gcc was too old. But I run into a problem - see below. I'm not a C++ programmer, so don't know what to look for to be honest. [dkirkby@jackdaw gpuowl]$ make echo "`git describe --tags --long --dirty --always`" > version.new diff -q -N version.new version.inc >/dev/null || mv version.new version.inc echo Version: `cat version.inc` Version: "v7.2-69-g23c14a1" g++ -MT ProofCache.o -MMD -MP -MF .d/ProofCache.Td -Wall -g -O3 -std=gnu++17 -c -o ProofCache.o ProofCache.cpp g++ -MT Proof.o -MMD -MP -MF .d/Proof.Td -Wall -g -O3 -std=gnu++17 -c -o Proof.o Proof.cpp g++ -MT Pm1Plan.o -MMD -MP -MF .d/Pm1Plan.Td -Wall -g -O3 -std=gnu++17 -c -o Pm1Plan.o Pm1Plan.cpp g++ -MT B1Accumulator.o -MMD -MP -MF .d/B1Accumulator.Td -Wall -g -O3 -std=gnu++17 -c -o B1Accumulator.o B1Accumulator.cpp g++ -MT Memlock.o -MMD -MP -MF .d/Memlock.Td -Wall -g -O3 -std=gnu++17 -c -o Memlock.o Memlock.cpp g++ -MT log.o -MMD -MP -MF .d/log.Td -Wall -g -O3 -std=gnu++17 -c -o log.o log.cpp g++ -MT GmpUtil.o -MMD -MP -MF .d/GmpUtil.Td -Wall -g -O3 -std=gnu++17 -c -o GmpUtil.o GmpUtil.cpp GmpUtil.cpp: In function ‘std::string GCD(u32, const std::vector<unsigned int>&, u32)’: GmpUtil.cpp:104:25: error: ‘gcd’ was not declared in this scope 104 | mpz_class resultGcd = gcd((mpz_class{1} << exp) - 1, w - sub); | ^~~ make: *** [GmpUtil.o] Error 1 |
|
|
|
|
|
#2 |
|
"Composite as Heck"
Oct 2017
3·271 Posts |
Looks like the GMP dependency has not been met, "yum install gmp-devel" might do the trick but that's just a guess.
|
|
|
|
|
|
#3 | |
|
"David Kirkby"
Jan 2021
Althorne, Essex, UK
2×3×61 Posts |
Quote:
Code:
[root@jackdaw dkirkby]# yum install gmp-devel Loaded plugins: fastestmirror, langpacks <snip> Package 1:gmp-devel-6.0.0-15.el7.x86_64 already installed and latest version Nothing to do [root@jackdaw dkirkby]# I've noticed in the past that one version of gcc will compile a program, and another one will not. Can anyone suggest a version of gcc that is known to work? If so, I can compile that. |
|
|
|
|
|
|
#4 |
|
"Mike"
Aug 2002
200378 Posts |
|
|
|
|
|
|
#5 | |
|
"David Kirkby"
Jan 2021
Althorne, Essex, UK
2×3×61 Posts |
Quote:
Thank you. It seems at least I will need to install another GMP then. I'm not moving to CentOS 8.x due to the policy changes from Redhat, and I need to run CentOS, Redhat or Suse Enterprise for a bit of commercial software. It would really helpl if gpuowl used autoconf/automake to detect the systems capabilites and report missing libraries, version of gcc that are too old etc. Most software would catch these problems. There's not a readme file to indicate what one needs. |
|
|
|
|
|
|
#6 |
|
"Mike"
Aug 2002
201F16 Posts |
|
|
|
|
|
|
#7 |
|
"Composite as Heck"
Oct 2017
3×271 Posts |
Any chance of using virtualisation to have your cake and eat it too? The commercial software could run in a CentOS/RedHat/whatever VM (easily if the software is not GPU-accelerated) with say a modern Debian 11 host, and for ease gpuowl should probably run on the host (with VFIO the GPU could be passed to a VM but it's finicky). Alternatively you could spin up a VM solely to compile gpuowl with a modern toolchain without having the dice roll of breaking the base system by installing multiple potentially incompatible toolchains around each other. My eyes have recently been opened to QEMU/KVM virtualisation using libvirt (virt-manager/virsh/oVirt for management), if the hardware is relatively modern to allow the use of KVM a guest VM runs at practically native speed.
|
|
|
|
|
|
#8 | |
|
Aug 2015
22×17 Posts |
Quote:
Afaik, gpuowl doesn't have any requirements for GCC, it already provides some workarounds for older gcc versions when possible. GCC 8.x and above should have no issues compiling it. Last fiddled with by UBR47K on 2021-03-27 at 13:22 |
|
|
|
|
|
|
#9 |
|
"Bill Staffen"
Jan 2013
Pittsburgh, PA, USA
1A816 Posts |
I pulled down the gpuowl code because I wanted to upgrade. I pulled down the master branch, did a make, added worktodo.txt and config.txt files, and fired her up. It worked fine, but it said it was on version 6.11. Thinking master might not be on the 7 branch, I deleted the folder, explicitly pulled down the 7.2 zip file, exploded it into my gpuowl folder, did a mek clean (it rm'd a bunch of .o files) and a make. It made again as 6.11. Do I have to upgrade something to make it at 7.2, and can a number running at 6.11 be resumed at 7.2?
aramis@home:~/gpuowl$ make clean rm -f ProofCache.o Proof.o Pm1Plan.o B1Accumulator.o Memlock.o log.o GmpUtil.o Worktodo.o common.o main.o Gpu.o clwrap.o Task.o Saver.o timeutil.o Args.o state.o Signal.o FFTConfig.o AllocTrac.o gpuowl-wrap.o sha3.o md5.o gpuowl gpuowl-win.exe aramis@home:~/gpuowl$ make echo "`git describe --tags --long --dirty --always`" > version.new diff -q -N version.new version.inc >/dev/null || mv version.new version.inc echo Version: `cat version.inc` Version: "v6.11-380-g79ea0cc-dirty" |
|
|
|
|
|
#10 |
|
Sep 2002
Database er0rr
3,739 Posts |
In a new directory, use git clone https://github.com/preda/gpuowl.git Then make.
Last fiddled with by paulunderwood on 2021-05-17 at 05:21 |
|
|
|
|
|
#11 |
|
"Bill Staffen"
Jan 2013
Pittsburgh, PA, USA
42410 Posts |
ty that worked.
|
|
|
|
![]() |
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| OFFICIAL "SERVER PROBLEMS" THREAD | ewmayer | PrimeNet | 2226 | 2021-07-16 08:35 |
| Aouessare-El Haddouchi-Essaaidi "test": "if Mp has no factor, it is prime!" | wildrabbitt | Miscellaneous Math | 11 | 2015-03-06 08:17 |
| Problem E7 of Richard Guy's "Unsolved problems in number theory" | Batalov | Computer Science & Computational Number Theory | 40 | 2013-03-16 09:19 |
| sr2sieve 1.9.3 "problems" | pepi37 | Software | 8 | 2013-03-15 00:58 |
| Would Minimizing "iterations between results file" may reveal "is not prime" earlier? | nitai1999 | Software | 7 | 2004-08-26 18:12 |