Installation of reppy
rock321987 opened this issue · comments
Hi,
NOTE: This is not an issue. Just a question.
I am trying to install reppy, but I am getting following error using pip
gcc -pthread -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -Ireppy/rep-cpp/include -Ireppy/rep-cpp/deps/url-cpp/include -I/data/Python-3.6.5/include/python3.6m -c reppy/rep-cpp/src/agent.cpp -o build/temp.linux-x86_64-3.6/reppy/rep-cpp/src/agent.o -std=c++11
cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++
The problem is that the version of g++ I am using is g++ (GCC) 4.4.7 20120313
and I don't have admin access to server.
I tried installing from source using extra_compile_args=['-std=c++0x'],
. It installs without any error, but when the package is imported, it gives following error
ImportError: /lib64/libc.so.6: version `GLIBC_2.14' not found
Again its stuck due to g++ version. Our sysad reasons that upgrading g++ might unsettle the server, that's the reason for getting stuck.
The simple solution I know is to upgrade g++ version, but is there any other way to do it?
GCC 4.4.7 is a 6 year old compiler and probably predates the creation of this code. It's very unlikely that we support compatibility with such an old version of the compiler. In particular, reppy
depends on some C++ code called rep-cpp
which does rely on C++11 features, and C++11 support wasn't very good in older versions of GCC. It's been a long while, but I think I remember that GCC 4.7 was the first version of GCC that actually supported most of the C++11 standard. (Note that GCC 4.7 was released in 2012, so it's also a very old version of the compiler.)
For what it is worth, you don't need admin access to install your own copy of the compiler. You can install things as a normal user and have them be in a separate path. However, you'll also probably need a newer version of glibc and libstdc++ if you build GCC from scratch.
Also, that warning message about -Wstrict-prototypes
can be ignored since it won't actually prevent anything from being compiled. You're probably missing some other error message.