python-build-standalone
python-build-standalone copied to clipboard
build/versions/VERSION.*: No such file or directory
I try to compile on Debian8.10. Its clean system, just installed. I was install Python3.6 and run this command:
python3.6 ./build-linux.py --python cpython-3.7
But after install some dependencies i catch this error
Makefile:78: .../python-build-standalone/build/versions/VERSION.*: No such file or directory
Makefile:289: warning: overriding recipe for target '.../python-build-standalone/build/cpython--x86_64-unknown-linux-gnu-noopt.tar'
Makefile:286: warning: ignoring old recipe for target '.../python-build-standalone/build/cpython--x86_64-unknown-linux-gnu-noopt.tar'
make: *** No rule to make target '.../python-build-standalone/build/versions/VERSION.*'. Stop.
What i do wrong? Debian8 not supported?
Is this with current master?
Could you please try building with Python 3.7+? I would not be surprised if there is a subtle bug somewhere with Python 3.6.
I cant install Python 3.7 to Debian8. Is unsupported bu default (except docker conda image). I was try to build on Ubuntu 18.4 and Python3.7. Its built OK. But i need Debian 8. So, i will try conda and will try install Py3.7 to Deb8 again.
So, i was successful install Python 3.7 to Debian8.10 and start build standalone. Same error about VERSION.* (((
This is script
# start as sudo
# install ssl
apt-get install -y libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev libffi-dev curl
mkdir ~/dev
cd ~/dev
wget https://www.openssl.org/source/openssl-1.1.1f.tar.gz
tar xzf openssl-1.1.1f.tar.gz
cd openssl-1.1.1f
./config --prefix=${HOME}/openssl --openssldir=${HOME}/openssl
make
make test
make install
# install python
cd ~/dev
wget https://www.python.org/ftp/python/3.7.7/Python-3.7.7.tgz
tar xzf Python-3.7.7.tgz
cd Python-3.7.7
export LD_LIBRARY_PATH=${HOME}/openssl/lib:$LD_LIBRARY_PATH
export LDFLAGS="-L${HOME}/openssl/lib"
export CPPFLAGS="-I${HOME}/openssl/include"
./configure --with-openssl=${HOME}/openssl LDFLAGS="-Wl,-rpath=${HOME}/openssl/lib -L${HOME}/openssl/lib" --with-address-sanitizer --with-undefined-behavior-sanitizer --with-pymalloc --with-ssl
make
make install
# build standalone
cd ~/dev
https://github.com/indygreg/python-build-standalone.git
cd python-build-standalone
python3.7 ./build-linux.py --python cpython-3.7
The error:
Makefile:78: .../python-build-standalone/build/versions/VERSION.*: No such file or directory
Makefile:289: warning: overriding recipe for target '.../python-build-standalone/build/cpython--x86_64-unknown-linux-gnu-noopt.tar'
Makefile:286: warning: ignoring old recipe for target '.../python-build-standalone/build/cpython--x86_64-unknown-linux-gnu-noopt.tar'
make: *** No rule to make target '.../python-build-standalone/build/versions/VERSION.*'. Stop.
I've got the same issue when tried to launch your build scripts from my docker image without root (map host user(not root) uid:guid to image root). The issue was solved when I switched back to root. So, as a workaround try to run it with root (ex.: sudo)
I'm also having trouble with this. I tried on Ubuntu 18.04.4 LTS x86_64 (Python 3.6.9) and 20.04.1 LTS x86_64 (Python 3.8.5) both with exactly the same problem. Even the basic build command ./build-linux.py without arguments fails with this error.
I tested bypassing line 80 of cpython_unix/Makefile (include $(OUTDIR)/versions/VERSION.*) and was met with a stranger error: make: *** No rule to make target '('Connection', needed by 'unable'. Stop.
My end goal is to compile for aarch64 using this pull request but I'm trying to verify the x86_64 build works first (vadimcn's fork suffers the same error with both x86_64 and aarch64 host architecture).
This problem still occurs with 24ced1eedc9a478bd6fdcd13003c420171a82d48. If we could get some basic information on the supported build environment that would be extremely helpful.
I've got the same issue when tried to launch your build scripts from my docker image without root (map host user(not root) uid:guid to image root). The issue was solved when I switched back to root. So, as a workaround try to run it with root (ex.: sudo)
I am building with root permission and still got the same error No rule to make target '.../python-build-standalone/build/versions/VERSION.*. Then I rerun a Docker container on the host and map the Docker socket into the container docker run -it -v /var/run/docker.sock:/var/run/docker.sock your_image. This time ./build-linux.py works fine in the new container.
I think the reason is that by mapping the Docker socket, Docker commands within the container can communicate with the Docker engine on the host, thereby achieving the purpose of running Docker containers inside the container.