-
Notifications
You must be signed in to change notification settings - Fork 2.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
It's no possible to install NetBox in AlmaLinux 9.4 (couldn't run 'pg_config' --includedir: [Errno 2] No such file or directory: 'pg_config') #16157
Comments
@Deicidium it looks like it is failing on installing the new psycopg3 package - pyscopg2 is replaced by psycopg3 in NetBox 4, it is in requirements.txt as: Can you please try installing it directly with pip, see https://www.psycopg.org/psycopg3/docs/basic/install.html, there should be a package for AlmaLinux. |
The Installation doesn't work with the package python3-psycopg3-3.1.18-4.el9.noarch : Name : python3-psycopg3 Installing with pip doesn't work either: /usr/bin/python3.11 -m pip install psycopg /usr/bin/python3.11 -m pip install psycopg-binary The output: Using cached psycopg_c-3.1.19.tar.gz (562 kB) × Preparing metadata (pyproject.toml) did not run successfully. note: This error originates from a subprocess, and is likely not a problem with pip. × Encountered error while generating package metadata. note: This is an issue with the package mentioned above, not pip. |
You need to install another base library to your OS. The name varies a little from platform to platform but is probably something like libpq-devel or similar. you can "dnf whatprovides pg_config" or similar to find it from your distro. |
Solved: Packages postgresql16-devel and libpq-devel are mutually exclusive. If one is installed, it does not allow the installation of the other and fails without an apparent error message. The solution was to install only package libpq-devel. |
@Deicidium would you be able to provide the exact steps you took to resolve this? I have been unsuccessful getting passed this error. I am getting the EXACT same issue you posted here. RHEL 8.9 upgrading from 3.7.0 > 4.0.5 (though I also tried upgrading to 3.7.8 first and ended up in the same place). error: [Errno 2] No such file or directory: 'pg_config' sudo find / -name pg_config 2>/dev/null yields which pg_config yields: I have removed postgresql15-devel and installed libpq-devel and I land in the same place. Any help is GREATLY appreciated! |
I had the same issue on a Redhat based distro and was able to fix it by adding a link to pg_config using update-alternatives. When using PostgreSQL from the official repo it will be installed in a versioned location but it will not be added to the system PATH. To fix that the devs of the database includes links from the versioned dir to /usr/bin but pg_config is not included. I created the required link like the command below and was able to upgrade my Netbox install without any futher issue. |
@leander091 thank you! this did the trick. I appreciate you SO damn much haha. |
Glad to hear that it worked as well on your environment! Took me more time than expected to troubleshoot this and to create a workaround. |
came here just to say a big thanks, I was struggling to upgrade netbox for ages!!! @Th3Bard |
Deployment Type
Self-hosted
NetBox Version
v4.0.2
Python Version
3.11
Steps to Reproduce
Execute the command:
On AlmaLinux 9.4 with Python 3.11 installed from official repos:
sudo PYTHON=/usr/bin/python3.11 ./upgrade.sh
pip packages psycopg2-binary, psycopg2 are installed. PostgreSQL 16 installed from the official repo, libpq-devel and libpq-devel are installed too.
Path /usr/pgsql-16/bin/pg_config available system wide.
/tmp are writable with defaults configuration, SELinux are permissive, Fapolicyd are permissive too.
Expected Behavior
NetBox 4.0.2 Installed
Observed Behavior
The installation fails with the message:
nstalling build dependencies ... done
Getting requirements to build wheel ... done
Preparing metadata (pyproject.toml) ... error
error: subprocess-exited-with-error
× Preparing metadata (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> [8 lines of output]
running dist_info
creating /tmp/pip-modern-metadata-o3bwabcx/psycopg_c.egg-info
writing /tmp/pip-modern-metadata-o3bwabcx/psycopg_c.egg-info/PKG-INFO
writing dependency_links to /tmp/pip-modern-metadata-o3bwabcx/psycopg_c.egg-info/dependency_links.txt
writing top-level names to /tmp/pip-modern-metadata-o3bwabcx/psycopg_c.egg-info/top_level.txt
writing manifest file '/tmp/pip-modern-metadata-o3bwabcx/psycopg_c.egg-info/SOURCES.txt'
couldn't run 'pg_config' --includedir: [Errno 2] No such file or directory: 'pg_config'
error: [Errno 2] No such file or directory: 'pg_config'
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed
× Encountered error while generating package metadata.
╰─> See above for output.
note: This is an issue with the package mentioned above, not pip.
hint: See above for details.
The text was updated successfully, but these errors were encountered: