seomoz / reppy

Modern robots.txt Parser for Python

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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.