我正在尝试在我的共享主机上安装新的 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:
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
你需要跑步
yum install gcc
对于 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
欲了解更多详情,请参阅此链接。
假设您使用的是 debain/ubuntu 系统,您需要先运行以下命令:
sudo apt-get install build-essential
sudo apt install build-essential
是命令。
但是,如果出现“可以找到包”之类的错误,请运行
sudo apt update
sudo apt install build-essential
这对我有用。
您需要以非 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
如果您将 alphine 与 docker 一起使用,请执行以下操作:
apk --update add gcc make g++ zlib-dev
问题:
配置:错误:在 $PATH 中找不到可接受的 C 编译器
我通过执行以下命令解决了该问题:
yum install gcc
安装gcc。
让有权访问该服务器上 root 帐户的人来运行
sudo apt-get install build-essential
。如果您不知道谁拥有 root 访问权限,请联系您的共享主机的支持团队并询问他们。
编辑:如果您不被允许访问根目录,您将永远无法让它工作。恐怕您必须更换托管提供商。
在 Suse Linux 中运行
apt-get install gcc
。
在 Arch Linux 上运行以下命令:
sudo pacman -S base-devel
sudo apt update
sudo apt install -y build-essential
请记住添加标志
-y
以接受默认继续。
您只需在
Debian-family上安装
build-essential
并在 RedHat-family上安装
Development tools
。
在共享主机中,默认情况下禁用 gcc 编译器(在终端中写入
gcc --version
,如果安装,它必须返回“权限被拒绝”...)。这对下一步非常重要。
现在,联系支持团队并请求将您的用户 ID 添加到“编译器组”。这可以解决您的问题和其他问题 - 例如,您将能够毫无问题地执行“make”和“make install”,安装枕头库等。
忘记“sudo”或“apk”命令。默认情况下它们也是禁用的。
这是一个简单且有效的 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"]
就是这样。我希望它有帮助