I also met this failed for pacific branch.
My env in docker(with pyenv):
- Docker 20.10.12
- Ubuntu 20.04
- Pyenv 2.3.14
- Python 3.8.16
- Pip 23.0.1 ( setuptools: 67.5.1 )
Failed:
-- Installing: /home/data/ceph/debian/tmp/usr/lib/python3.8/site-packages/ceph_volume_client.py
usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
or: setup.py --help [cmd1 cmd2 ...]
or: setup.py --help-commands
or: setup.py cmd --help
error: option --install-layout not recognized
CMake Error at src/pybind/rados/cmake_install.cmake:71 (message):
Failed to build and install cython_rados python module
Call Stack (most recent call first):
src/pybind/cmake_install.cmake:58 (include)
src/cmake_install.cmake:381 (include)
cmake_install.cmake:42 (include)
make[2]: *** [Makefile:89: install] Error 1
make[2]: Leaving directory '/home/data/ceph/obj-x86_64-linux-gnu'
dh_auto_install: error: cd obj-x86_64-linux-gnu && make -j100 install DESTDIR=/home/data/ceph/debian/tmp AM_UPDATE_INFO_DIR=no returned exit code 2
make[1]: *** [debian/rules:55: override_dh_auto_install] Error 2
make[1]: Leaving directory '/home/data/ceph'
make: *** [debian/rules:40: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
then i found the similar problems: https://github.com/ros/catkin/issues/863 , but i tried to run.
Test env in docker(without pyenv):
- Docker 20.10.12
- Python 3.8.10
- Pip 20.0.2 ( setuptools 45.2.0 )
Test setup.py:
from setuptools import setup, find_packages
setup(
name="foo",
version="1.0",
packages=find_packages(),
)
Test result:
root@3e8bb30a2ada:/home# python setup.py build --help
Common commands: (see '--help-commands' for more)
setup.py build will build the package underneath 'build/'
setup.py install will install the package
Global options:
--verbose (-v) run verbosely (default)
--quiet (-q) run quietly (turns verbosity off)
--dry-run (-n) don't actually do anything
--help (-h) show detailed help message
--no-user-cfg ignore pydistutils.cfg in your home directory
Options for 'build' command:
--build-base (-b) base directory for build library
--build-purelib build directory for platform-neutral distributions
--build-platlib build directory for platform-specific distributions
--build-lib build directory for all distribution (defaults to either
build-purelib or build-platlib
--build-scripts build directory for scripts
--build-temp (-t) temporary build directory
--plat-name (-p) platform name to build for, if supported (default: linux-
x86_64)
--compiler (-c) specify the compiler type
--parallel (-j) number of parallel build jobs
--debug (-g) compile extensions and libraries with debugging
information
--force (-f) forcibly build everything (ignore file timestamps)
--executable (-e) specify final destination interpreter path (build.py)
--help-compiler list available compilers
usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
or: setup.py --help [cmd1 cmd2 ...]
or: setup.py --help-commands
or: setup.py cmd --help
root@3e8bb30a2ada:/home# python setup.py build --install-layout=deb
usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
or: setup.py --help [cmd1 cmd2 ...]
or: setup.py --help-commands
or: setup.py cmd --help
error: option --install-layout not recognized