<div dir="ltr"><div dir="ltr"><div>Python is different from most other packages included with the distro. Like many programming runtimes (interpreter in this case, but similar), it's designed to be installed alongside other versions.</div><div><br></div><div>As a developer, managing runtime versions in all runtime-based environments (e.g., Java, .Net, etc) is a challenge, but Python is especially nightmarish. Packages written in Python often will have strict dependencies on versions > x and quite a few also specify < x. When you publish packages to PyPI, it's part of the process. And packages have dependencies on other packages creating dependency trees that can even sometimes become contradictory (e.g., both x and y depend on z, but x wants z > 10 and y wants z < 9). Add in that each of these modules then depends on a Python version and you may be running risks by even "polluting" the globally installed packages in the distro, much less fully upgrading Python major versions entirely.</div><div><br></div><div>To help handle this, Python installers will "upgrade" minor versions (e.g., 3.12.1 to 3.12.2), but it will install new major versions (e.g., 3.12 to 3.13) alongside. Major versions of Python are considered different packages, and are not upgraded. They also provide and strongly recommend the use of virtual environments.</div><div><br></div><div>Removing old versions of Python and replacing them with a new one can and often will break something. This article (<a href="https://cloudbytes.dev/snippets/upgrade-python-to-latest-version-on-ubuntu-linux">https://cloudbytes.dev/snippets/upgrade-python-to-latest-version-on-ubuntu-linux</a>) for instance says that not only can't you replace it, you can't even change which is run by the default `python3` command without breaking part of the Gnome UI.</div><div><br></div><div>Literally every article I've read on this in the past as well as some interaction I've had with a few contributors to Python on GitHub has said you should only install new versions of Python alongside the distro-supplied one, not to replace it entirely.</div><div><br></div><div>Incidentally, I did forget that the Python apt repositories are not included by Ubuntu. So you need to run:</div><div><br></div><div> sudo add-apt-repository ppa:deadsnakes/ppa<br> sudo apt update</div><div><br></div><div>before trying sudo apt install Python3.13.</div><div><br></div><div>Paul</div></div><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">On Wed, Feb 19, 2025 at 12:25 AM Jim Barbour via NFBCS <<a href="mailto:nfbcs@nfbnet.org">nfbcs@nfbnet.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hello,<br>
<br>
I 100% disagree with the notion that people don’t update software on Linux distros. I do it all the time. I’m also running Ubuntu 24.04 LTS. <br>
<br>
First, I would say that I don’t do installations outside the package manager without a good reason. That’s not because they are difficult or dangerous, but rather because I no longer get automated updates. If I want to update to a newer version of Python than the one I built from source, I now need to get new source, build from source, debug anything that needs debugging; as opposed to just doing an “apt update python” which brings down and installs the latest Ubuntu supplied Python.<br>
<br>
Having said that, if you want to do it, I would start looking at installing the bits that are missing. you can do either a Google search or an “apt search“ <br>
<br>
I’m actually really surprised that configure didn’t catch these for you. That you had to get all the way through the make process. Anyway, as the error suggests, I would look through the config log for missing items, then search for Ubuntu 24.04 package, followed by the missing file.<br>
<br>
Feel free to contact me off list if I can help you figure this out further.<br>
<br>
Good luck,<br>
<br>
Jim<br>
<br>
> On Feb 19, 2025, at 12:03 AM, Alan K. Martinez via NFBCS <<a href="mailto:nfbcs@nfbnet.org" target="_blank">nfbcs@nfbnet.org</a>> wrote:<br>
> <br>
> Hello everyone,<br>
> <br>
> If this is not the appropriate place to ask for this type of help<br>
> please let me know and disregard my message... but I need some help...<br>
> <br>
> <br>
> <br>
> <br>
> I had to re-image my desktop setup from the ground up.<br>
> <br>
> I just finished a fresh installation of Ubuntu 24.04 LTS. I feel I'm<br>
> still a little new to Linux but after the last 2 years of making it my<br>
> daily driver I learned a lot so I'm more comfortable doing things. I<br>
> just need to know where to go to get things done. Sometimes doing<br>
> Google searches gets a little complicated especially when a situation<br>
> doesn't quite match the search results and suggestions.<br>
> <br>
> Right now the currently installed version of Python is 3.12.3.<br>
> <br>
> I wanted to update it to the most current available on <a href="http://python.org" rel="noreferrer" target="_blank">python.org</a> which<br>
> is 3.13.3. I understand that it's just an x.01.x revission difference<br>
> but my pseudo self diagnosed OCD wants it to be as current as possible<br>
> whenever I can update. Please don't bash me for this...<br>
> <br>
> I downloaded the update .tar and started the installation. I managed<br>
> to install 'make' and 'gcc' updates.<br>
> <br>
> AFter I run ./conigure and make from the command line it all seems to<br>
> go well until the end where I get the following information:<br>
> <br>
> <br>
> The necessary bits to build these optional modules were not found:<br>
> _bz2 _ctypes _ctypes_test <br>
> _curses _curses_panel _dbm <br>
> _gdbm _hashlib _lzma <br>
> _ssl _tkinter _uuid <br>
> readline zlib <br>
> To find the necessary bits, look in <a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a> and config.log.<br>
> <br>
> Could not build the ssl module!<br>
> Python requires a OpenSSL 1.1.1 or newer<br>
> <br>
> Checked 112 modules (33 built-in, 63 shared, 1 n/a on linux-x86_64, 1<br>
> disabled, 14 missing, 0 failed on import)<br>
> <br>
> <br>
> <br>
> The information that concerns me is the Python requires a OpenSSL 1.1.1<br>
> or newer. When I checked I HAVE a newer version with 3.0.13 from Jan<br>
> 2024.<br>
> <br>
> Why does it not recognize OpenSSL as a newer version?<br>
> <br>
> Also the part about the necessary bits to build, will it find them<br>
> after I get the OpenSSL resolved? If not, can someone suggest how to<br>
> get them installed?<br>
> <br>
> I know this is Linux and not everyone is knowledgeable or comfortable<br>
> and this might be more of a tech support issue with Linux first but I<br>
> thought I'd come here first since this is for Python and it might help<br>
> others out in the future.<br>
> <br>
> Any help would be appreciated.<br>
> <br>
> Thanks,<br>
> <br>
> Alan<br>
> <br>
> <br>
> P.S. On a separate subject because I'm curious.<br>
> I still have some useable vision and I use it as much as possible so I<br>
> don't have or uses a screen reader on my desktop. In the world of the<br>
> internet and texting all caps denotes an emphasized emotion or yelling.<br>
> How does that get translated with screen readers or to people with no<br>
> vision at all? Just curious...<br>
> <br>
> <br>
> _______________________________________________<br>
> NFBCS mailing list<br>
> <a href="mailto:NFBCS@nfbnet.org" target="_blank">NFBCS@nfbnet.org</a><br>
> <a href="http://nfbnet.org/mailman/listinfo/nfbcs_nfbnet.org" rel="noreferrer" target="_blank">http://nfbnet.org/mailman/listinfo/nfbcs_nfbnet.org</a><br>
> To unsubscribe, change your list options or get your account info for NFBCS:<br>
> <a href="http://nfbnet.org/mailman/options/nfbcs_nfbnet.org/jbar%40barcore.com" rel="noreferrer" target="_blank">http://nfbnet.org/mailman/options/nfbcs_nfbnet.org/jbar%40barcore.com</a><br>
> <br>
<br>
<br>
_______________________________________________<br>
NFBCS mailing list<br>
<a href="mailto:NFBCS@nfbnet.org" target="_blank">NFBCS@nfbnet.org</a><br>
<a href="http://nfbnet.org/mailman/listinfo/nfbcs_nfbnet.org" rel="noreferrer" target="_blank">http://nfbnet.org/mailman/listinfo/nfbcs_nfbnet.org</a><br>
To unsubscribe, change your list options or get your account info for NFBCS:<br>
<a href="http://nfbnet.org/mailman/options/nfbcs_nfbnet.org/paul%40yorkfamily.com" rel="noreferrer" target="_blank">http://nfbnet.org/mailman/options/nfbcs_nfbnet.org/paul%40yorkfamily.com</a><br>
</blockquote></div></div>