mersenneforum.org

mersenneforum.org (https://www.mersenneforum.org/index.php)
-   Software (https://www.mersenneforum.org/forumdisplay.php?f=10)
-   -   Error compiling version 30.8b15 on Arch Linux (https://www.mersenneforum.org/showthread.php?t=28094)

graysky 2022-09-24 13:08

Error compiling version 30.8b15 on Arch Linux
 
I am getting errors when building on Arch Linux as shown below. Any thoughts as to what I can do to circumvent?

I modified [b]linux64/makefile[/b] like this:
[code]
-CFLAGS = -I.. -I../gwnum -I/usr/local/include -std=gnu99 -DX86_64 -Wno-unused-result -O2 -DPORT=8
+CFLAGS = -I.. -I../gwnum -march=x86-64 -DX86_64 -O2 -Wno-unused-result -march=x86-64 -DPORT=8

-CPPFLAGS = -I.. -I../gwnum -I../../boost_1_76_0 -DX86_64 -std=c++11 -O2 -DPORT=8
+CPPFLAGS = -I.. -I../gwnum -march=x86-64 -O2 -Wno-unused-result -march=x86-64 -DPORT=8

-LFLAGS = -Wl,-M -Wl,-L/usr/local/lib
+LFLAGS = -Wl,-M

-LIBS = ../gwnum/gwnum.a ../gwnum/gwnum.ld ../gwnum/polymult.a -lm -lpthread -Wl,-Bstatic -lhwloc -Wl,-Bstatic -lcurl -Wl,-Bdynamic -lrt -lstdc++ -ldl -lgmp
+LIBS= ../gwnum/gwnum.a ../gwnum/gwnum.ld -lm -lpthread $(shell pkg-config --libs libcurl) -lstdc++ $(shell pkg-config --static --libs hwloc) -lgmp
[/code]

Build log is [url=https://gist.github.com/graysky2/6e5fd3a2daaf82bfdb2dd9cd32616a6f]here[/url].

Prime95 2022-09-24 15:15

Include ../gwnum/polymult.a in LIBS.

Edit: Nevermind, I see you did that. All the undefined references are from the polymult.a library

graysky 2022-09-24 18:19

No, you were correct. Adding that to the LIBS allows the build to finish. Thanks!

For reference, here is how I modified [b]linux64/makefile[/b] to build on Arch Linux:
[code]diff --git a/linux64/makefile b/linux64/makefile
index 420801f..a319fc1 100644
--- a/linux64/makefile
+++ b/linux64/makefile
@@ -18,15 +18,17 @@
# LFLAGS = -Wl,-M
# LIBS = ../gwnum/gwnum.a ../gwnum/gwnum.ld -lm -lpthread -Wl,-Bstatic $(shell pkg-config --static --libs libhwloc) -Wl,-Bstatic $(shell pkg-config --static --libs libcurl) -lstdc++ -Wl,-Bdynamic -ldl

+ALFLAGS = -I.. -I../gwnum -march=x86-64 -DX86_64 -O2 -Wno-unused-result -march=x86-64 -DPORT=8
+
CC = gcc
-CFLAGS = -I.. -I../gwnum -I/usr/local/include -std=gnu99 -DX86_64 -Wno-unused-result -O2 -DPORT=8
+CFLAGS = ${ALFLAGS}

CPP = g++
-CPPFLAGS = -I.. -I../gwnum -I../../boost_1_76_0 -DX86_64 -std=c++11 -O2 -DPORT=8
+CPPFLAGS = ${ALFLAGS} -std=c++11

-LFLAGS = -Wl,-M -Wl,-L/usr/local/lib
+LFLAGS = -Wl,-M
#LIBS = ../gwnum/gwnum.a ../gwnum/gwnum.ld ../gwnum/polymult.a -lm -lpthread -Wl,-Bstatic -lhwloc -Wl,-Bstatic -lcurl -Wl,-Bdynamic -lrt -lstdc++ -lz -lxml2 -ldl -lgmp
-LIBS = ../gwnum/gwnum.a ../gwnum/gwnum.ld ../gwnum/polymult.a -lm -lpthread -Wl,-Bstatic -lhwloc -Wl,-Bstatic -lcurl -Wl,-Bdynamic -lrt -lstdc++ -ldl -lgmp
+LIBS= ../gwnum/gwnum.a ../gwnum/gwnum.ld ../gwnum/polymult.a -lm -lpthread $(shell pkg-config --libs libcurl) -lstdc++ $(shell pkg-config --static --libs hwloc) -lgmp

FACTOROBJ = factor64.o
LINUXOBJS = prime.o menu.o cJSON.o ecm.o exponentiate.o pair.o pm1prob.o
--
2.37.3
[/code]


All times are UTC. The time now is 07:49.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.