Desc: ./bootstrap-prefix.sh on OSX failed Os version: MacOS Catalina 10.15.7 (19H114) ``` $ uname -a Darwin aa 19.6.0 Darwin Kernel Version 19.6.0: Tue Nov 10 00:10:30 PST 2020; root:xnu-6153.141.10~1/RELEASE_X86_64 x86_64 ``` Toolchain version: ``` $ xcode-select -v xcode-select version 2373. $ gcc -v Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/c++/4.2.1 Apple clang version 12.0.0 (clang-1200.0.32.29) Target: x86_64-apple-darwin19.6.0 Thread model: posix InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin ``` Error messsage: ``` /Users/ch/Gentoo/var/tmp/portage/dev-lang/python-3.11.3/work/Python-3.11.3/Modules/_ctypes/callproc.c:1460:15: error: '_dyld_shared_cache_contains_path' redeclared as different kind of symbol 1460 | static bool (*_dyld_shared_cache_contains_path)(const char *path); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /Users/ch/Gentoo/var/tmp/portage/dev-lang/python-3.11.3/work/Python-3.11.3/Modules/_ctypes/callproc.c:72: /Users/ch/Gentoo/MacOSX.sdk/usr/include/mach-o/dyld.h:121:13: note: previous declaration of '_dyld_shared_cache_contains_path' with type '_Bool(const char *)' 121 | extern bool _dyld_shared_cache_contains_path(const char* path) __API_AVAILABLE(macos(11.0), ios(14.0), watchos(7.0), tvos(14.0)) DYLD_DRIVERKIT_UNAVAILABLE; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ```
Created attachment 881446 [details] python-3.11.3-build.log
Created attachment 881447 [details] stage3.log
Created attachment 881448 [details] stage2.log
Created attachment 881449 [details] stage1.log
Are you in the position to make a change to the ebuild to test something? If so, does removing/disabling this bit make a difference? if [[ ${CHOST} == *-darwin19 ]] ; then # HAVE_DYLD_SHARED_CACHE_CONTAINS_PATH is set because # _dyld_shared_cache_contains_path could be found, yet it cannot # be resolved when dlopen()ing, so simply pretend it doesn't # exist here sed -i \ -e 's/_dyld_shared_cache_contains_path/disabled&/' \ configure.ac configure || die fi
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/proj/prefix.git/commit/?id=7d2508dd078f4a62a4b77a2a76a8034f4db8010c commit 7d2508dd078f4a62a4b77a2a76a8034f4db8010c Author: Fabian Groffen <grobian@gentoo.org> AuthorDate: 2024-01-23 08:04:31 +0000 Commit: Fabian Groffen <grobian@gentoo.org> CommitDate: 2024-01-23 08:04:31 +0000 dev-lang/python-3.11.7: fixes for older Darwin - drop Catalina workaround, likely incorrect bug #921332 - update Darwin 9 KQUEUE fix, stuff changed here Bug: https://bugs.gentoo.org/921332 Signed-off-by: Fabian Groffen <grobian@gentoo.org> dev-lang/python/python-3.11.7.ebuild | 24 +++++------------------- 1 file changed, 5 insertions(+), 19 deletions(-)
Try the newest, still same error. Does this means i correctly use the latest patch? ``` ➜ Gentoo find . -name python-3.11.7.ebuild ./var/db/repos/gentoo/dev-lang/python/python-3.11.7.ebuild ./var/tmp/portage/dev-lang/python-3.11.7/build-info/python-3.11.7.ebuild ➜ Gentoo vim var/db/repos/gentoo/dev-lang/python/python-3.11.7.ebuild ➜ Gentoo grep dyld ./var/db/repos/gentoo/dev-lang/python/python-3.11.7.ebuild # _dyld_shared_cache_contains_path could be found, yet it cannot -e 's/_dyld_shared_cache_contains_path/disabled&/' \ ```
Created attachment 883013 [details] stage3.log 2024-01-23
Hmm, no this seems to indicate you're still using the old ebuild. Are you able to test separately? Otherwise can you try a bootstrap with LATEST_TREE_YES=1 exported in your environment?
New error occurs when bootstrap with LATEST_TREE_YES=1: ``` *** WARNING: renaming "_ctypes" since importing it failed: dlopen(/Users/ch/Gentoo/var/tmp/portage/dev-lang/python-3.11.7/work/Python-3.11.7/build/lib.macosx-10.15-x86_64-3.11/_ctypes.cpython-311-darwin.bundle, 2): Symbol not found: __dyld_shared_cache_contains_path Referenced from: /Users/ch/Gentoo/var/tmp/portage/dev-lang/python-3.11.7/work/Python-3.11.7/build/lib.macosx-10.15-x86_64-3.11/_ctypes.cpython-311-darwin.bundle Expected in: /usr/lib/libSystem.B.dylib in /Users/ch/Gentoo/var/tmp/portage/dev-lang/python-3.11.7/work/Python-3.11.7/build/lib.macosx-10.15-x86_64-3.11/_ctypes.cpython-311-darwin.bundle The following modules found by detect_modules() in setup.py have not been built, they are *disabled* by configure: _dbm _gdbm _scproxy _tkinter nis ossaudiodev readline Following modules built successfully but were removed because they could not be imported: _ctypes Traceback (most recent call last): File "/Users/ch/Gentoo/var/tmp/portage/dev-lang/python-3.11.7/work/Python-3.11.7/./setup.py", line 1600, in <module> main() File "/Users/ch/Gentoo/var/tmp/portage/dev-lang/python-3.11.7/work/Python-3.11.7/./setup.py", line 1570, in main setup(# PyPI Metadata (PEP 301) ```
Created attachment 883062 [details] stage3.log 2024-01-24 (wtih LATEST_TREE_YES=1)
ok, this is the original error we suppressed, need to find a way then to sufficiently hide the workaround so it doesn't conflict with the system headers
bootstrap finished today on x64-macos darwin19 without problems.