Hey guys,
So I was trying to install aerospike by cloning the aerospike-server repository from Github and I am facing some issues. I tried the same with CentOS 6 and Redhat but both were a fail. Can anybody help me out. Here are the issues I am facing while running the make command,
On CentOS 6: These are last few lines…
make[1]: Leaving directory /root/new_aero/aerospike-server/modules/common' make -C /root/new_aero/aerospike-server/cf make[1]: Entering directory
/root/new_aero/aerospike-server/cf’
make -C src all
make[2]: Entering directory /root/new_aero/aerospike-server/cf/src' ../../make_in/Makefile.in:73: *** Cannot find "libcrypto.a". Stop. make[2]: Leaving directory
/root/new_aero/aerospike-server/cf/src’
make[1]: *** [all] Error 2
make[1]: Leaving directory `/root/new_aero/aerospike-server/cf’
make: *** [all] Error 2
Everything seems to working fine until this point.
On Redhat:
mkdir -p ./target/Linux-x86_64/gen ./target/Linux-x86_64/lib ./target/Linux-x86_ 64/bin
mkdir -p ./target/Linux-x86_64/m4/base ./target/Linux-x86_64/m4/fabric ./target/ Linux-x86_64/m4/storage
mkdir -p ./target/Linux-x86_64/obj/base ./target/Linux-x86_64/obj/fabric ./targe t/Linux-x86_64/obj/storage
build/gen_version community Unknown redhat version > ./target/Linux-x86_64/gen/ version.c
cc -o target/Linux-x86_64/obj/version.o -c target/Linux-x86_64/gen/version.c
cd /home/gmane/Aero/aerospike-server/modules/jansson && ./configure
checking for a BSD-compatible install… /usr/bin/install -c
checking whether build environment is sane… yes
checking for a thread-safe mkdir -p… /bin/mkdir -p
checking for gawk… gawk
checking whether make sets $(MAKE)… yes
checking for gcc… gcc
checking for C compiler default output file name…
configure: error: in /home/gmane/Aero/aerospike-server/modules/jansson': configure: error: C compiler cannot create executables See
config.log’ for more details.
make: *** [/home/gmane/Aero/aerospike-server/modules/jansson/Makefile] Error 77
If you scroll down the main page of the repository you’ll get to the README, which has all the information you need about the dependencies and submodules. Please follow those when you try again.
Thank you for your reply. As you suggested there was a library file missing and a environment variable to set. After setting up those, I am able to launch the server successfully.
1 Like
With new git repo now I am getting a couple of warning and few undefined references errors:
warning: sys_errlist' is deprecated; use
strerror’ or `strerror_r’ instead
/home/gmane/newworkdir/aerospike-server/cf/src/fault.c:156: warning: sys_nerr' is deprecated; use
strerror’ or `strerror_r’ instead
And
/home/gmane/newworkdir/aerospike-server/modules/s2-geometry-library/geometry/libs2.a(s2polygon.o): In function _M_range_check': /usr/local/include/c++/4.9.2/bits/stl_vector.h:803: undefined reference to
std::__throw_out_of_range_fmt(char const*, …)’
/usr/local/include/c++/4.9.2/bits/stl_vector.h:803: undefined reference to std::__throw_out_of_range_fmt(char const*, ...)' /usr/local/include/c++/4.9.2/bits/stl_vector.h:803: undefined reference to
std::__throw_out_of_range_fmt(char const*, …)’
/usr/local/include/c++/4.9.2/bits/stl_vector.h:803: undefined reference to std::__throw_out_of_range_fmt(char const*, ...)' /home/gmane/newworkdir/aerospike-server/modules/s2-geometry-library/geometry/libgoogle-strings.a(split.o): In function
_M_check’:
/usr/local/include/c++/4.9.2/bits/basic_string.h:324: undefined reference to std::__throw_out_of_range_fmt(char const*, ...)' /home/gmane/newworkdir/aerospike-server/modules/s2-geometry-library/geometry/libgoogle-strings.a(split.o):/usr/local/include/c++/4.9.2/bits/basic_string.h:324: more undefined references to
std::__throw_out_of_range_fmt(char const*, …)’ follow
collect2: ld returned 1 exit status
I believe here warnings are to be ignored (correct me if I am wrong). For 2nd issue it seems like it has to do with gcc version. Can you please help and take a look at this.
Also is it possible to build without s2-geometry-library module.
Please somebody could help me.
I met the same compile error. My linux version centos release 6.8 and g++ version 4.9.2.
Finally I found the problem is /usr/lib64/libstdc++.so.6.
$ locate libstdc++.so.6
/usr/lib64/libstdc++.so.6
/usr/lib64/libstdc++.so.6.0.13
/usr/local/gcc49/lib64/libstdc++.so.6
/usr/local/gcc49/lib64/libstdc++.so.6.0.20
Default compile use /usr/lib64/libstdc++.so.6 which is /usr/lib64/libstdc++.so.6.0.13.
We should change it to /usr/local/gcc49/lib64/libstdc++.so.6.0.20.
My Solution:
diff --git a/as/src/Makefile b/as/src/Makefile
index 8fc24ea…4277ba8 100644
— a/as/src/Makefile
+++ b/as/src/Makefile
@@ -139,7 +139,7 @@ endif
LIBRARIES += -L$(S2) -ls2 -ls2cellid -lgoogle-strings -lgoogle-base
-lgoogle-util-coding -lgoogle-util-math -lstdc++
-LIBRARIES := $(AS_LIBRARIES) $(LIBRARIES)
+LIBRARIES := $(AS_LIBRARIES) $(LIBRARIES) -L/usr/local/gcc49/lib64/
I hope it’s helpful
1 Like