Path: csiph.com!eternal-september.org!feeder.eternal-september.org!nntp.eternal-september.org!.POSTED!not-for-mail From: Keith Thompson Newsgroups: comp.lang.python Subject: Annoyance building python from source Date: Mon, 29 Dec 2025 20:16:17 -0800 Organization: None to speak of Lines: 45 Message-ID: <87o6ngvc32.fsf@example.invalid> MIME-Version: 1.0 Content-Type: text/plain Injection-Date: Tue, 30 Dec 2025 04:16:19 +0000 (UTC) Injection-Info: dont-email.me; posting-host="f64ba1fc77f9b07548a2a24ef633fb8e"; logging-data="1619550"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19ZviSWW54tHTgpLGGYTL1h" User-Agent: Gnus/5.13 (Gnus v5.13) Cancel-Lock: sha1:cKqPUnTUbp4TsjfDBaQPhCFt3io= sha1:n8yulL3q7LZipphKWt+Mhv6SWh8= Xref: csiph.com comp.lang.python:197655 When I build Python from source, the "sudo make install" step creates root-owned files in the build directory. I have not seen this while building other open-source packages from source. Is there a way to avoid this, so no root-owned files are creates other than under the target installation directory? The details: I typically build Python from a cloned git directory. The steps (leaving out some irrelevant details) are: git clone https://github.com/python/cpython cd cpython git switch -d VERSION ./configure make sudo make install The last step creates dozens of *.pyc files under the cpython/Lib directory. I've recently started doing builds in a temporary subdirectory: ... mkdir BUILD_DIR cd BUILD_DIR ../configure make sudo make install That does create a lot of files under BUILD_DIR, but I still get a lot of root-owned *.pyc files under the cpython/Lib directory. I have to run some command under sudo ("sudo rm ..." or "sudo git clean ...") to remove these *.pyc files before doing a new clean build, which is a mild annoyance. Without having looked into the details, I would have expected these *.pyc files to be created by `make`, not by `sudo make install`, but perhaps there are good reasons for the way it's done. -- Keith Thompson (The_Other_Keith) Keith.S.Thompson+u@gmail.com void Void(void) { Void(); } /* The recursive call of the void */