-
-
Notifications
You must be signed in to change notification settings - Fork 3.2k
Readline issues on new install of FreeBSD 13.1 #2585
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
Comments
Could you please also attach Do you have Readline development headers and lib files installed? Through what means? (I dunno if BSD have package managers. I know they have "ports" which are kinda that and may need additional compiler flags to link against.) |
The
I made sure to install readline libs using pkg command as stated in my first update. Just to be sure, I logged on and verified:
|
|
Log attached. |
I said |
I removed all files from /tmp and this is the only log that is being generated. |
Oh, that's right. Your build succeeds, so the build path is being removed. Please run |
It appears
Please see attached. I am seeing linker errors, so am assuming would need to append something to either LDFLAGS or CFLAGS. Let me know. |
Okay, it looks like unlike Linux, in BSD, the compiler is configured to not look in
|
Could you test the codebase from https://github.com/native-api/pyenv/tree/use_freebsd_ports ? |
Using your code tree the latest python available is |
Use the |
Same error. Looks like the same output: I rebuilt to regenerate relevant logs. Please see attached.
|
Okay, I was able to set up a FreeBSD VM and reproduce the issue. It turns out, you don't have
Which, counterintuitively, is in the All ports modules have We can still add compiler flags for the case when |
Great find. I installed |
That's strange. Make sure that you have Anyway, I've updated the PR's code, so please try with the If the error persists, please attach the debug log as well as |
Ok this seems to have gotten me past readline:
Let me get sqlite up before we close this. Would love a complete build. Thanks! |
I'm wondering if there needs to be some pkgconf optimizations to look for libraries in /usr/local/lib:
Is there a way to get the build script to use pkgconf/pkg-config by default on FreeBSD? |
CPython's Configure is supposed to already be using |
Ok troubleshooting this further, with the
I think we are good here. Believe we can close this. Definitely appreciate your help. One last question, will these changes be merged into master pyenv? |
I grabbed latest merge today, |
Testing with |
Same readline error. Please reopen. |
Okay, it turns out that -- surprisingly enough -- Python's Configure does NOT use pkg-config to locate Readline. |
I have been testing on a new VM and it does appear that the crux of this issue is python not using pkg-config for readLine. Interestingly enough, specifying libedit does allow it to build, as well as setting flags manually. I believe the only way around this would be to just set the flags in the previous fix if FreeBSD is detected. I did read up on this and it does appear that you are correct in that tool chains don't look at /usr/local. What really bothers me about this is that there IS a readline.pc file available in PKG_CONFIG_PATH. Think only this could be fixed upstream. |
I've tested that https://github.com/native-api/pyenv/tree/fix_freebsd fixes the probem for me (the URL means https://github.com/native-api/pyenv repo, |
Yes, this is an upstream problem. |
Ok this branch works. I have also confirmed |
Too many issues will kill our team's development velocity, drastically.
Make sure you have checked all steps below.
Prerequisite
pyenv
and the defaultpython-build
plugin only. Please refrain from reporting issues of other plugins here.Description
FreeBSD 13.1-RELEASE-p3
amd64
pyenv 2.3.9
Python 3.9.16 (installed via pkg)
FreeBSD clang version 13.0.0
env PYENV_DEBUG=1 <faulty command> 2>&1 | tee trace.log
and attachtrace.log
. E.g. if you have a problem with installing Python, runenv PYENV_DEBUG=1 pyenv install -v <version> 2>&1 | tee trace.log
(note the-v
option topyenv install
).Recently provisioned a remote VPS on FreeBSD 13.1 and wanted to give pyenv a whirl. Seems I'm hit with readline issues. I attempted to install readline libs, but what I believe to be happening is that pyenv make cannot resolve readline. Here is what I performed:
pyenv install 3.11.1
Errors reported:
Packages installed:
What I believe is happening is that GNU readline requirement is not being read properly as the output shows:
Debug log attached.
trace.log
The text was updated successfully, but these errors were encountered: