安装 python 时在 $PATH 中找不到可接受的 C 编译器

问题描述 投票:0回答:15

我正在尝试在我的共享主机上安装新的 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

python compiler-errors virtualenv
15个回答
735
投票

gcc 编译器不在你的

$PATH
中。 这意味着您没有安装 gcc 或者它不在您的 $PATH 变量中。

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

  • Redhat 基础:

     yum groupinstall "Development Tools"
    
  • Debian 基础:

     apt-get install build-essential
    
  • openSUSE 基础:

     zypper install --type pattern devel_basis
    
  • 阿尔卑斯:

     apk add build-base
    

117
投票

你需要跑步

yum install gcc

97
投票

对于 Ubuntu / Debian :

sudo apt-get install build-essential

适用于 RHEL/CentOS

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

 sudo yum groupinstall "Development tools" -y

欲了解更多详情,请参阅此链接


84
投票

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

sudo apt-get install build-essential

27
投票

sudo apt install build-essential
是命令。

但是,如果出现“可以找到包”之类的错误,请运行

    首先
  • sudo apt update
  • 然后
    sudo apt install build-essential

这对我有用。


18
投票

您需要以非 root 身份安装它,因为它是共享主机。 这里是一个教程,介绍如何执行此步骤。

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

16
投票

如果您将 alphine 与 docker 一起使用,请执行以下操作:

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

13
投票

问题:

配置:错误:在 $PATH 中找不到可接受的 C 编译器

我通过执行以下命令解决了该问题:

yum install gcc

安装gcc。


9
投票

让有权访问该服务器上 root 帐户的人来运行

sudo apt-get install build-essential
。如果您不知道谁拥有 root 访问权限,请联系您的共享主机的支持团队并询问他们。

编辑:如果您不被允许访问根目录,您将永远无法让它工作。恐怕您必须更换托管提供商。


9
投票

在 Suse Linux 中运行

apt-get install gcc


7
投票

在 Arch Linux 上运行以下命令:

sudo pacman -S base-devel


4
投票

对于 Ubuntu/Debian,运行

sudo apt update

sudo apt install -y build-essential

请记住添加标志

-y
以接受默认继续。


2
投票

您只需在

Debian-family
上安装 build-essential 并在
RedHat-family
上安装 Development tools


2
投票

在共享主机中,默认情况下禁用 gcc 编译器(在终端中写入

gcc --version
,如果安装,它必须返回“权限被拒绝”...)。这对下一步非常重要。

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

忘记“sudo”或“apk”命令。默认情况下它们也是禁用的。


0
投票

这是一个简单且有效的 docker 文件

FROM python:3.11-slim

# Copy local code
ENV APP_HOME /app
RUN mkdir $APP_HOME

WORKDIR $APP_HOME

# set environment variables
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1

# Set Flask environment variables
ENV FLASK_APP=main.py
ENV FLASK_ENV=development
ENV PORT 5001
ENV RUN CMAKE_ARGS="-DLLAMA_METAL=on" FORCE_CMAKE=1

# Install pip.
RUN pip install --upgrade pip

# Install other dependencies
RUN apt-get update && apt-get install -y \
build-essential 

RUN pip install llama-cpp-python

# Install from requirements.txt files
COPY ./requirements/dev.txt .
RUN pip install -r dev.txt

# copy entrypoint.sh
COPY ./entrypoint.sh .
RUN sed -i 's/\r$//g'  $APP_HOME/entrypoint.sh
RUN chmod +x  $APP_HOME/entrypoint.sh

# Copy project
COPY . .

# run entrypoint.sh
ENTRYPOINT ["/app/entrypoint.sh"]

就是这样。我希望它有帮助

© www.soinside.com 2019 - 2024. All rights reserved.