Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Missing -lm in LDFLAGS #15

Closed
p-col opened this issue Aug 27, 2015 · 1 comment
Closed

Missing -lm in LDFLAGS #15

p-col opened this issue Aug 27, 2015 · 1 comment

Comments

@p-col
Copy link

p-col commented Aug 27, 2015

When compiling malheur on my Ubuntu 15.04, I have the following issue:

gcc -DHAVE_CONFIG_H -I. -I.. -g -O2 -DNDEBUG -std=c99 -fgnu89-inline -Wall -fPIC -fopenmp -MT mconfig.o -MD -MP -MF .deps/mconfig.Tpo -c -o mconfig.o mconfig.c
mv -f .deps/export.Tpo .deps/export.Po
gcc -DHAVE_CONFIG_H -I. -I.. -g -O2 -DNDEBUG -std=c99 -fgnu89-inline -Wall -fPIC -fopenmp -MT cluster.o -MD -MP -MF .deps/cluster.Tpo -c -o cluster.o cluster.c
mv -f .deps/fmath.Tpo .deps/fmath.Po
gcc -DHAVE_CONFIG_H -I. -I.. -g -O2 -DNDEBUG -std=c99 -fgnu89-inline -Wall -fPIC -fopenmp -MT quality.o -MD -MP -MF .deps/quality.Tpo -c -o quality.o quality.c
mv -f .deps/mconfig.Tpo .deps/mconfig.Po
gcc -DHAVE_CONFIG_H -I. -I.. -g -O2 -DNDEBUG -std=c99 -fgnu89-inline -Wall -fPIC -fopenmp -MT class.o -MD -MP -MF .deps/class.Tpo -c -o class.o class.c
mv -f .deps/class.Tpo .deps/class.Po
gcc -DHAVE_CONFIG_H -I. -I.. -g -O2 -DNDEBUG -std=c99 -fgnu89-inline -Wall -fPIC -fopenmp -MT murmur.o -MD -MP -MF .deps/murmur.Tpo -c -o murmur.o murmur.c
mv -f .deps/farray.Tpo .deps/farray.Po
gcc -DHAVE_CONFIG_H -I. -I.. -g -O2 -DNDEBUG -std=c99 -fgnu89-inline -Wall -fPIC -fopenmp -MT malheur.o -MD -MP -MF .deps/malheur.Tpo -c -o malheur.o malheur.c
mv -f .deps/murmur.Tpo .deps/murmur.Po
mv -f .deps/quality.Tpo .deps/quality.Po
mv -f .deps/cluster.Tpo .deps/cluster.Po
rm -f libmalheur.a
ar cru libmalheur.a md5.o util.o fvec.o ftable.o mist.o fmath.o export.o farray.o proto.o mconfig.o cluster.o quality.o class.o murmur.o
ranlib libmalheur.a
mv -f .deps/malheur.Tpo .deps/malheur.Po
/bin/bash ../libtool --tag=CC --mode=link gcc -g -O2 -DNDEBUG -std=c99 -fgnu89-inline -Wall -fPIC -fopenmp -static -o malheur md5.o util.o fvec.o ftable.o mist.o fmath.o export.o farray.o proto.o mconfig.o cluster.o quality.o class.o murmur.o malheur.o -lz -lconfig
libtool: link: gcc -g -O2 -DNDEBUG -std=c99 -fgnu89-inline -Wall -fPIC -fopenmp -o malheur md5.o util.o fvec.o ftable.o mist.o fmath.o export.o farray.o proto.o mconfig.o cluster.o quality.o class.o murmur.o malheur.o -lz -lconfig -fopenmp
util.o: In function prog_bar': /tmp/malheur/src/util.c:165: undefined reference tofloor'
/tmp/malheur/src/util.c:165: undefined reference to floor' /tmp/malheur/src/util.c:170: undefined reference toround'
/tmp/malheur/src/util.c:176: undefined reference to floor' /tmp/malheur/src/util.c:176: undefined reference tofloor'
fmath.o: In function fvec_dot': /tmp/malheur/src/fmath.c:299: undefined reference tolog2'
/tmp/malheur/src/fmath.c:299: undefined reference to ceil' fmath.o: In functionfvec_dist':
/tmp/malheur/src/fmath.c:271: undefined reference to sqrt' fmath.o: In functionfvec_norm2':
/tmp/malheur/src/fmath.c:489: undefined reference to sqrt' mconfig.o: In functionconfig_default':
/tmp/malheur/src/mconfig.c:197: undefined reference to lround' cluster.o: In functioncluster_murtagh._omp_fn.1':
/tmp/malheur/src/cluster.c:113: undefined reference to fmin' /tmp/malheur/src/cluster.c:122: undefined reference tofmax'
collect2: error: ld returned 1 exit status
Makefile:419: recipe for target 'malheur' failed
make[3]: *** [malheur] Error 1
make[3]: Leaving directory '/tmp/malheur/src'
Makefile:326: recipe for target 'all' failed
make[2]: *** [all] Error 2
make[2]: Leaving directory '/tmp/malheur/src'
Makefile:395: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/tmp/malheur'
Makefile:326: recipe for target 'all' failed
make: *** [all] Error 2

I think the -lm flags for linking is missing somewhere.
By adding it to LDFLAGS directly into the Makefile I can solve this issue.

Thank you

Pierre

@rieck
Copy link
Owner

rieck commented Aug 27, 2015

Thanks a lot for testing the new code!

@rieck rieck closed this as completed in f04e878 Aug 27, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants