PIP Install Issue on Debian 12
ahmdzaki18 opened this issue · comments
Hi Pim,
i tested this repo on Debian 12 and got issue when make install-deps.
usually i issued pip with venv or --break-system-packages.
i know its known works on Debian Bullseye, but can it also working on Debian Bookworm?
if i tried to manually install all pip dependencies, its got another error when build.
Seconding this issue.
Although I did manage to kinda solve it by building it in a venv. vppctl did run, but wasn't applying configuration for me.
Builds fine for me -
python3 -m build
* Creating isolated environment: venv+pip...
* Installing packages in isolated environment:
- setuptools >= 40.8.0
* Getting build dependencies for sdist...
running egg_info
writing vppcfg.egg-info/PKG-INFO
writing dependency_links to vppcfg.egg-info/dependency_links.txt
writing entry points to vppcfg.egg-info/entry_points.txt
writing requirements to vppcfg.egg-info/requires.txt
writing top-level names to vppcfg.egg-info/top_level.txt
reading manifest file 'vppcfg.egg-info/SOURCES.txt'
adding license file 'LICENSE'
writing manifest file 'vppcfg.egg-info/SOURCES.txt'
* Building sdist...
running sdist
running egg_info
writing vppcfg.egg-info/PKG-INFO
writing dependency_links to vppcfg.egg-info/dependency_links.txt
writing entry points to vppcfg.egg-info/entry_points.txt
writing requirements to vppcfg.egg-info/requires.txt
writing top-level names to vppcfg.egg-info/top_level.txt
reading manifest file 'vppcfg.egg-info/SOURCES.txt'
adding license file 'LICENSE'
writing manifest file 'vppcfg.egg-info/SOURCES.txt'
running check
creating vppcfg-0.0.6
creating vppcfg-0.0.6/vppcfg
creating vppcfg-0.0.6/vppcfg.egg-info
creating vppcfg-0.0.6/vppcfg/config
creating vppcfg-0.0.6/vppcfg/vpp
copying files to vppcfg-0.0.6...
copying LICENSE -> vppcfg-0.0.6
copying README.md -> vppcfg-0.0.6
copying setup.py -> vppcfg-0.0.6
copying vppcfg/__init__.py -> vppcfg-0.0.6/vppcfg
copying vppcfg/example.yaml -> vppcfg-0.0.6/vppcfg
copying vppcfg/schema.yaml -> vppcfg-0.0.6/vppcfg
copying vppcfg/tests.py -> vppcfg-0.0.6/vppcfg
copying vppcfg/vppcfg.py -> vppcfg-0.0.6/vppcfg
copying vppcfg.egg-info/PKG-INFO -> vppcfg-0.0.6/vppcfg.egg-info
copying vppcfg.egg-info/SOURCES.txt -> vppcfg-0.0.6/vppcfg.egg-info
copying vppcfg.egg-info/dependency_links.txt -> vppcfg-0.0.6/vppcfg.egg-info
copying vppcfg.egg-info/entry_points.txt -> vppcfg-0.0.6/vppcfg.egg-info
copying vppcfg.egg-info/requires.txt -> vppcfg-0.0.6/vppcfg.egg-info
copying vppcfg.egg-info/top_level.txt -> vppcfg-0.0.6/vppcfg.egg-info
copying vppcfg/config/__init__.py -> vppcfg-0.0.6/vppcfg/config
copying vppcfg/config/acl.py -> vppcfg-0.0.6/vppcfg/config
copying vppcfg/config/address.py -> vppcfg-0.0.6/vppcfg/config
copying vppcfg/config/bondethernet.py -> vppcfg-0.0.6/vppcfg/config
copying vppcfg/config/bridgedomain.py -> vppcfg-0.0.6/vppcfg/config
copying vppcfg/config/interface.py -> vppcfg-0.0.6/vppcfg/config
copying vppcfg/config/lcp.py -> vppcfg-0.0.6/vppcfg/config
copying vppcfg/config/loopback.py -> vppcfg-0.0.6/vppcfg/config
copying vppcfg/config/mac.py -> vppcfg-0.0.6/vppcfg/config
copying vppcfg/config/prefixlist.py -> vppcfg-0.0.6/vppcfg/config
copying vppcfg/config/tap.py -> vppcfg-0.0.6/vppcfg/config
copying vppcfg/config/test_acl.py -> vppcfg-0.0.6/vppcfg/config
copying vppcfg/config/test_address.py -> vppcfg-0.0.6/vppcfg/config
copying vppcfg/config/test_bondethernet.py -> vppcfg-0.0.6/vppcfg/config
copying vppcfg/config/test_bridgedomain.py -> vppcfg-0.0.6/vppcfg/config
copying vppcfg/config/test_interface.py -> vppcfg-0.0.6/vppcfg/config
copying vppcfg/config/test_lcp.py -> vppcfg-0.0.6/vppcfg/config
copying vppcfg/config/test_loopback.py -> vppcfg-0.0.6/vppcfg/config
copying vppcfg/config/test_mac.py -> vppcfg-0.0.6/vppcfg/config
copying vppcfg/config/test_prefixlist.py -> vppcfg-0.0.6/vppcfg/config
copying vppcfg/config/test_tap.py -> vppcfg-0.0.6/vppcfg/config
copying vppcfg/config/test_vxlan_tunnel.py -> vppcfg-0.0.6/vppcfg/config
copying vppcfg/config/unittestyaml.py -> vppcfg-0.0.6/vppcfg/config
copying vppcfg/config/vxlan_tunnel.py -> vppcfg-0.0.6/vppcfg/config
copying vppcfg/vpp/__init__.py -> vppcfg-0.0.6/vppcfg/vpp
copying vppcfg/vpp/applier.py -> vppcfg-0.0.6/vppcfg/vpp
copying vppcfg/vpp/dumper.py -> vppcfg-0.0.6/vppcfg/vpp
copying vppcfg/vpp/reconciler.py -> vppcfg-0.0.6/vppcfg/vpp
copying vppcfg/vpp/vppapi.py -> vppcfg-0.0.6/vppcfg/vpp
copying vppcfg.egg-info/SOURCES.txt -> vppcfg-0.0.6/vppcfg.egg-info
Writing vppcfg-0.0.6/setup.cfg
Creating tar archive
removing 'vppcfg-0.0.6' (and everything under it)
* Building wheel from sdist
* Creating isolated environment: venv+pip...
* Installing packages in isolated environment:
- setuptools >= 40.8.0
* Getting build dependencies for wheel...
running egg_info
writing vppcfg.egg-info/PKG-INFO
writing dependency_links to vppcfg.egg-info/dependency_links.txt
writing entry points to vppcfg.egg-info/entry_points.txt
writing requirements to vppcfg.egg-info/requires.txt
writing top-level names to vppcfg.egg-info/top_level.txt
reading manifest file 'vppcfg.egg-info/SOURCES.txt'
adding license file 'LICENSE'
writing manifest file 'vppcfg.egg-info/SOURCES.txt'
* Installing packages in isolated environment:
- wheel
* Building wheel...
running bdist_wheel
running build
running build_py
creating build
creating build/lib
creating build/lib/vppcfg
copying vppcfg/vppcfg.py -> build/lib/vppcfg
copying vppcfg/__init__.py -> build/lib/vppcfg
copying vppcfg/tests.py -> build/lib/vppcfg
creating build/lib/vppcfg/config
copying vppcfg/config/test_tap.py -> build/lib/vppcfg/config
copying vppcfg/config/test_lcp.py -> build/lib/vppcfg/config
copying vppcfg/config/test_bondethernet.py -> build/lib/vppcfg/config
copying vppcfg/config/tap.py -> build/lib/vppcfg/config
copying vppcfg/config/bridgedomain.py -> build/lib/vppcfg/config
copying vppcfg/config/test_vxlan_tunnel.py -> build/lib/vppcfg/config
copying vppcfg/config/__init__.py -> build/lib/vppcfg/config
copying vppcfg/config/interface.py -> build/lib/vppcfg/config
copying vppcfg/config/test_address.py -> build/lib/vppcfg/config
copying vppcfg/config/test_mac.py -> build/lib/vppcfg/config
copying vppcfg/config/address.py -> build/lib/vppcfg/config
copying vppcfg/config/test_acl.py -> build/lib/vppcfg/config
copying vppcfg/config/mac.py -> build/lib/vppcfg/config
copying vppcfg/config/test_interface.py -> build/lib/vppcfg/config
copying vppcfg/config/test_prefixlist.py -> build/lib/vppcfg/config
copying vppcfg/config/unittestyaml.py -> build/lib/vppcfg/config
copying vppcfg/config/vxlan_tunnel.py -> build/lib/vppcfg/config
copying vppcfg/config/bondethernet.py -> build/lib/vppcfg/config
copying vppcfg/config/lcp.py -> build/lib/vppcfg/config
copying vppcfg/config/acl.py -> build/lib/vppcfg/config
copying vppcfg/config/loopback.py -> build/lib/vppcfg/config
copying vppcfg/config/prefixlist.py -> build/lib/vppcfg/config
copying vppcfg/config/test_bridgedomain.py -> build/lib/vppcfg/config
copying vppcfg/config/test_loopback.py -> build/lib/vppcfg/config
creating build/lib/vppcfg/vpp
copying vppcfg/vpp/applier.py -> build/lib/vppcfg/vpp
copying vppcfg/vpp/vppapi.py -> build/lib/vppcfg/vpp
copying vppcfg/vpp/reconciler.py -> build/lib/vppcfg/vpp
copying vppcfg/vpp/__init__.py -> build/lib/vppcfg/vpp
copying vppcfg/vpp/dumper.py -> build/lib/vppcfg/vpp
copying vppcfg/example.yaml -> build/lib/vppcfg
copying vppcfg/schema.yaml -> build/lib/vppcfg
installing to build/bdist.linux-x86_64/wheel
running install
running install_lib
creating build/bdist.linux-x86_64
creating build/bdist.linux-x86_64/wheel
creating build/bdist.linux-x86_64/wheel/vppcfg
creating build/bdist.linux-x86_64/wheel/vppcfg/config
copying build/lib/vppcfg/config/test_tap.py -> build/bdist.linux-x86_64/wheel/vppcfg/config
copying build/lib/vppcfg/config/test_lcp.py -> build/bdist.linux-x86_64/wheel/vppcfg/config
copying build/lib/vppcfg/config/test_bondethernet.py -> build/bdist.linux-x86_64/wheel/vppcfg/config
copying build/lib/vppcfg/config/tap.py -> build/bdist.linux-x86_64/wheel/vppcfg/config
copying build/lib/vppcfg/config/bridgedomain.py -> build/bdist.linux-x86_64/wheel/vppcfg/config
copying build/lib/vppcfg/config/test_vxlan_tunnel.py -> build/bdist.linux-x86_64/wheel/vppcfg/config
copying build/lib/vppcfg/config/__init__.py -> build/bdist.linux-x86_64/wheel/vppcfg/config
copying build/lib/vppcfg/config/interface.py -> build/bdist.linux-x86_64/wheel/vppcfg/config
copying build/lib/vppcfg/config/test_address.py -> build/bdist.linux-x86_64/wheel/vppcfg/config
copying build/lib/vppcfg/config/test_mac.py -> build/bdist.linux-x86_64/wheel/vppcfg/config
copying build/lib/vppcfg/config/address.py -> build/bdist.linux-x86_64/wheel/vppcfg/config
copying build/lib/vppcfg/config/test_acl.py -> build/bdist.linux-x86_64/wheel/vppcfg/config
copying build/lib/vppcfg/config/mac.py -> build/bdist.linux-x86_64/wheel/vppcfg/config
copying build/lib/vppcfg/config/test_interface.py -> build/bdist.linux-x86_64/wheel/vppcfg/config
copying build/lib/vppcfg/config/test_prefixlist.py -> build/bdist.linux-x86_64/wheel/vppcfg/config
copying build/lib/vppcfg/config/unittestyaml.py -> build/bdist.linux-x86_64/wheel/vppcfg/config
copying build/lib/vppcfg/config/vxlan_tunnel.py -> build/bdist.linux-x86_64/wheel/vppcfg/config
copying build/lib/vppcfg/config/bondethernet.py -> build/bdist.linux-x86_64/wheel/vppcfg/config
copying build/lib/vppcfg/config/lcp.py -> build/bdist.linux-x86_64/wheel/vppcfg/config
copying build/lib/vppcfg/config/acl.py -> build/bdist.linux-x86_64/wheel/vppcfg/config
copying build/lib/vppcfg/config/loopback.py -> build/bdist.linux-x86_64/wheel/vppcfg/config
copying build/lib/vppcfg/config/prefixlist.py -> build/bdist.linux-x86_64/wheel/vppcfg/config
copying build/lib/vppcfg/config/test_bridgedomain.py -> build/bdist.linux-x86_64/wheel/vppcfg/config
copying build/lib/vppcfg/config/test_loopback.py -> build/bdist.linux-x86_64/wheel/vppcfg/config
copying build/lib/vppcfg/vppcfg.py -> build/bdist.linux-x86_64/wheel/vppcfg
copying build/lib/vppcfg/example.yaml -> build/bdist.linux-x86_64/wheel/vppcfg
copying build/lib/vppcfg/__init__.py -> build/bdist.linux-x86_64/wheel/vppcfg
copying build/lib/vppcfg/tests.py -> build/bdist.linux-x86_64/wheel/vppcfg
creating build/bdist.linux-x86_64/wheel/vppcfg/vpp
copying build/lib/vppcfg/vpp/applier.py -> build/bdist.linux-x86_64/wheel/vppcfg/vpp
copying build/lib/vppcfg/vpp/vppapi.py -> build/bdist.linux-x86_64/wheel/vppcfg/vpp
copying build/lib/vppcfg/vpp/reconciler.py -> build/bdist.linux-x86_64/wheel/vppcfg/vpp
copying build/lib/vppcfg/vpp/__init__.py -> build/bdist.linux-x86_64/wheel/vppcfg/vpp
copying build/lib/vppcfg/vpp/dumper.py -> build/bdist.linux-x86_64/wheel/vppcfg/vpp
copying build/lib/vppcfg/schema.yaml -> build/bdist.linux-x86_64/wheel/vppcfg
running install_egg_info
running egg_info
writing vppcfg.egg-info/PKG-INFO
writing dependency_links to vppcfg.egg-info/dependency_links.txt
writing entry points to vppcfg.egg-info/entry_points.txt
writing requirements to vppcfg.egg-info/requires.txt
writing top-level names to vppcfg.egg-info/top_level.txt
reading manifest file 'vppcfg.egg-info/SOURCES.txt'
adding license file 'LICENSE'
writing manifest file 'vppcfg.egg-info/SOURCES.txt'
Copying vppcfg.egg-info to build/bdist.linux-x86_64/wheel/vppcfg-0.0.6-py3.11.egg-info
running install_scripts
creating build/bdist.linux-x86_64/wheel/vppcfg-0.0.6.dist-info/WHEEL
creating '/home/pim/src/vppcfg/dist/.tmp-k7h2yggu/vppcfg-0.0.6-py3-none-any.whl' and adding 'build/bdist.linux-x86_64/wheel' to it
adding 'vppcfg/__init__.py'
adding 'vppcfg/example.yaml'
adding 'vppcfg/schema.yaml'
adding 'vppcfg/tests.py'
adding 'vppcfg/vppcfg.py'
adding 'vppcfg/config/__init__.py'
adding 'vppcfg/config/acl.py'
adding 'vppcfg/config/address.py'
adding 'vppcfg/config/bondethernet.py'
adding 'vppcfg/config/bridgedomain.py'
adding 'vppcfg/config/interface.py'
adding 'vppcfg/config/lcp.py'
adding 'vppcfg/config/loopback.py'
adding 'vppcfg/config/mac.py'
adding 'vppcfg/config/prefixlist.py'
adding 'vppcfg/config/tap.py'
adding 'vppcfg/config/test_acl.py'
adding 'vppcfg/config/test_address.py'
adding 'vppcfg/config/test_bondethernet.py'
adding 'vppcfg/config/test_bridgedomain.py'
adding 'vppcfg/config/test_interface.py'
adding 'vppcfg/config/test_lcp.py'
adding 'vppcfg/config/test_loopback.py'
adding 'vppcfg/config/test_mac.py'
adding 'vppcfg/config/test_prefixlist.py'
adding 'vppcfg/config/test_tap.py'
adding 'vppcfg/config/test_vxlan_tunnel.py'
adding 'vppcfg/config/unittestyaml.py'
adding 'vppcfg/config/vxlan_tunnel.py'
adding 'vppcfg/vpp/__init__.py'
adding 'vppcfg/vpp/applier.py'
adding 'vppcfg/vpp/dumper.py'
adding 'vppcfg/vpp/reconciler.py'
adding 'vppcfg/vpp/vppapi.py'
adding 'vppcfg-0.0.6.dist-info/LICENSE'
adding 'vppcfg-0.0.6.dist-info/METADATA'
adding 'vppcfg-0.0.6.dist-info/WHEEL'
adding 'vppcfg-0.0.6.dist-info/entry_points.txt'
adding 'vppcfg-0.0.6.dist-info/top_level.txt'
adding 'vppcfg-0.0.6.dist-info/RECORD'
removing build/bdist.linux-x86_64/wheel
Successfully built vppcfg-0.0.6.tar.gz and vppcfg-0.0.6-py3-none-any.whl
pim@summer:~/src/vppcfg$ uname -a
Linux summer 6.1.0-18-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.76-1 (2024-02-01) x86_64 GNU/Linux
I'm sorry to say that fixing your build issues is beyond the scope of this repository.
@stathis: vppctl apply is not implemented. Recommend you use vppcfg plan
and then vppctl exec
the output.
@pimvanpelt I see thanks.
The OP is right though, on a clean Bookworm installation with VPP, building vppcfg will not succeed if one blindly follows this repo's README.
Even in my case where I did eventually build it by not following the instructions, the .deb created by make pkg-deb
will not install by default as it depends on a bullseye package (python3-ipaddr). Again, that's not a problem since I don't really need a deb package.