我正在尝试在我的共享主机上安装一个新的Python环境。我遵循这篇文章中所写的步骤:

mkdir ~/src
wget http://www.python.org/ftp/python/2.7.1/Python-2.7.1.tgz
tar -zxvf Python-2.7.1.tar.gz
cd Python-2.7.1
mkdir ~/.localpython
./configure --prefix=/home/<user>/.localpython
make
make install

进入到。/configure——prefix=/home/<user>/。localpython命令,我得到以下输出:

checking for --enable-universalsdk... no
checking for --with-universal-archs... 32-bit
checking MACHDEP... linux3
checking EXTRAPLATDIR... 
checking machine type as reported by uname -m... x86_64
checking for --without-gcc... no
checking for gcc... no
checking for cc... no
checking for cl.exe... no
configure: error: in `/home3/mikos89/Python-2.7.1':
configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details.

这个问题怎么解决?我已经找了3个小时的解决方法了,但是我仍然卡在一个地方。

更新

Hostgator不允许gcc在他们的共享帐户上:


假设你使用的是debain/ubuntu系统,你首先需要运行以下命令:

sudo apt-get install build-essential

让有权限访问该服务器上的根帐户的人运行sudo apt-get install build-essential。如果您不知道谁拥有根访问权限,请联系共享托管的支持团队并询问他们。

编辑:如果你不被允许访问根目录,你永远不会让它工作。恐怕你得换一个主机供应商。


gcc编译器不在$PATH中。 这意味着要么你没有安装gcc,要么它不在你的$PATH变量中。

要安装gcc,请使用以下命令:(以root身份运行)

Redhat基地: yum groupinstall“开发工具” Debian基地: Apt-get安装build-essential openSUSE基地: Zypper安装——类型模式develop_basis 高山: Apk添加build-base


你需要逃离

yum install gcc

对于Ubuntu / Debian:

sudo apt-get install build-essential

RHEL /被久远

sudo yum install gcc glibc glibc-common gd gd-devel -y

or

 sudo yum groupinstall "Development tools" -y

欲了解更多细节,请参阅此链接。


在Arch Linux上运行如下命令:

sudo pacman -S base-devel


您需要以非根用户身份安装它,因为它是共享主机。下面是一个教程,介绍如何完成这一步。

cd ~/src
wget http://www.netgull.com/gcc/releases/gcc-5.2.0/gcc-5.2.0.tar.gz

或者等效的GCC源

tar -xvf gcc-5.2.0.tar.gz
cd gcc-5.2.0
./contrib/download_prerequisites
cd ..
mkdir objdir
cd objdir
$PWD/../gcc-5.2.0/configure --prefix=$HOME/gcc-5.2.0 --enable-languages=c,c++,fortran,go
make
make install

然后添加到.bashrc,或等价的:

export PATH=~/gcc-5.2.0/bin:$PATH
export LD_LIBRARY_PATH=~/gcc-5.2.0/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=~/gcc-5.2.0/lib64:$LD_LIBRARY_PATH

如果你在docker中使用alphine,这样做:

apk --update add gcc make g++ zlib-dev

Suse Linux下执行apt-get install gcc。


Sudo apt install build-essential是命令。

但是,如果您得到“该包可以找到”类型的错误,则运行

Sudo apt先更新 然后sudo apt安装build-essential

这对我很管用。


问题:

$PATH中没有可接受的C编译器

我通过执行以下命令修复了这个问题:

yum install gcc

安装gcc。


对于Ubuntu/Debian,执行

sudo apt update

sudo apt install -y build-essential

记住,在默认情况下,要添加-y来接受继续。


你只需要在Debian-family上安装build-essential,在RedHat-family上安装Development工具。


在共享主机中,gcc编译器默认是禁用的(在终端中写入gcc——version,如果安装,它必须返回'Permission denied'…)这对下一步非常重要。

现在,联系支持团队并请求将您的用户id添加到“编译器组”。这解决了你的问题和其他-例如,你将能够毫无问题地执行“make”和“make install”,安装枕头库等。

忘掉'sudo'或'apk'命令吧。它们在默认情况下也是禁用的。