Summary: | gnustep-base/gnustep-make-2.{8.0-r1,9.0} : * Could not find Objective-C runtime | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Toralf Förster <toralf> |
Component: | Current packages | Assignee: | Gentoo Gnustep project <gnustep> |
Status: | CONFIRMED --- | ||
Severity: | normal | CC: | mmk, progenyx |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
emerge-info.txt
die.env emerge-history.txt etc.portage.tbz2 gnustep-base:gnustep-make-2.7.0:20180723-230229.log logs.tbz2 |
Description
Toralf Förster
2018-07-24 17:39:10 UTC
Created attachment 540750 [details]
emerge-info.txt
Created attachment 540752 [details]
die.env
Created attachment 540754 [details]
emerge-history.txt
Created attachment 540756 [details]
etc.portage.tbz2
Created attachment 540758 [details]
gnustep-base:gnustep-make-2.7.0:20180723-230229.log
Created attachment 540760 [details]
logs.tbz2
Hey Toralf, how was gcc-7.3.0 configured? By default (for some time) it enables USE=objc and the test works here Side-note, sadly this USE=objc needs to be a runtime check, as we need to see if the running compiler has objective-c support (In reply to Bernard Cafarelli from comment #7) nothing conspicious wrt to GCC in the attached make.conf (etc.portage.tbz2 file), or? Nothing explicit (no USE=-* or USE=-objc), but if gcc had support for objc the test should pass (and passes here). I wonder what may have changed recently too, this ebuild and the check are quite old and worked before? *** Bug 712388 has been marked as a duplicate of this bug. *** Same here, I've setup a couple time ago a script to install some gentoo packages and one of them pulled this package as a dependency, now I can't compile this package due to this error :S Just wanted to mention that switching the active compiler to clang does nothing. * gnustep-make-2.9.0 requires a working Objective-C runtime and a compiler with * Objective-C support. Your current settings lack these requirements * Please switch your active compiler to gcc with USE=objc, or clang * ERROR: gnustep-base/gnustep-make-2.9.0::gentoo failed (setup phase): * Could not find Objective-C runtime * * Call stack: * ebuild.sh, line 136: Called pkg_setup * gnustep-make-2.9.0.ebuild, line 53: Called die * The specific snippet of code: * die "Could not find Objective-C runtime" * * If you need support, post the output of `emerge --info '=gnustep-base/gnustep-make-2.9.0::gentoo'`, * the complete build log and the output of `emerge -pqv '=gnustep-base/gnustep-make-2.9.0::gentoo'`. * The complete build log is located at '/var/tmp/portage/gnustep-base/gnustep-make-2.9.0/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/gnustep-base/gnustep-make-2.9.0/temp/die.env'. * Working directory: '/var/tmp/portage/gnustep-base/gnustep-make-2.9.0/empty' * S: '/var/tmp/portage/gnustep-base/gnustep-make-2.9.0/work/gnustep-make-2.9.0 I'll hit this problem too, so i was looking a bit into it. The gnustep-make ebuild is looking for libobjc.so to be present which is why it needs sys-devel/gcc:*[objc] (which is in DEPEND) So far so good, however what's interesting, my sys-devel/gcc wasn't build with [objc] enabled. emerge however didn't complain! The Dependencies in gnustep-make seems to be ok: DEPEND="${GNUSTEP_CORE_DEPEND} >=sys-devel/make-3.75 libobjc2? ( gnustep-base/libobjc2 sys-devel/clang:* ) !libobjc2? ( !!gnustep-base/libobjc2 || ( sys-devel/gcc:*[objc] sys-devel/clang:* ) )" I've also checked this on a different system. Same behavior: vt02 ~ # eix -I gcc [?] sys-devel/gcc Available versions: (8.5.0) [M]8.5.0-r1^t (9.5.0) [M]9.5.0^t (10) 10.4.0^t 10.4.1_p20221208^t **10.5.9999*l^t (11) 11.3.0^t 11.3.1_p20221209^t **11.4.9999*l^t (12) (~)12.2.0^t (~)12.2.1_p20221203^t (~)12.2.1_p20221210^t{xpak} **12.3.9999*l^t (13) ~*13.0.0_pre20221204^t ~*13.0.0_pre20221211^t **13.0.9999*l^t {ada cet custom-cflags +cxx d debug default-stack-clash-protection default-znow doc fixed-point +fortran go graphite hardened ieee-long-double jit libssp lto mpx multilib +nls +nptl objc objc++ objc-gc +openmp +pch pgo +pie rust +sanitize +ssp systemtap test valgrind vanilla vtv zstd} Installed versions: 13.2.1_p20230826(13)^t{xpak}(03:32:12 AM 08/28/2023)(cxx fortran multilib nls nptl openmp pie sanitize ssp -ada -cet -custom-cflags -d -debug -default-stack-clash-protection -default-znow -doc -fixed-point -go -graphite -hardened -ieee-long-double -jit -libssp -lto -modula2 -objc -objc++ -objc-gc -pch -pgo -systemtap -test -valgrind -vanilla -vtv -zstd) Homepage: https://gcc.gnu.org/ Description: The GNU Compiler Collection [?] sys-devel/gcc-config Available versions: 2.4 2.5-r1 (~)2.6 2.8 **9999*l {+cc-wrappers +native-symlinks} Installed versions: 2.11{xpak}(03:25:25 AM 05/15/2023)(cc-wrappers native-symlinks) Homepage: https://gitweb.gentoo.org/proj/gcc-config.git/ Description: Utility to manage compilers Found 2 matches vt02 ~ # emerge -pv gnustep-make Local copy of remote index is up-to-date and will be used. These are the packages that would be merged, in order: Calculating dependencies... done! Dependency resolution took 5.21 s. [ebuild N ] gnustep-base/gnustep-make-2.9.0::gentoo USE="-debug -doc -libobjc2 -native-exceptions" 598 KiB Total: 1 package (1 new), Size of downloads: 598 KiB * IMPORTANT: 16 news items need reading for repository 'gentoo'. * Use eselect news read to view new items. Enabling the objc use-flag in gcc fixed the issue for me. (as intended by the ebuild). I only checked for gcc, why it also doesn't work with clang is a different story i guess... I just had this error because of the following: 1) I had two versions of gcc installed 2) The version selected via eselect gcc was not the most recent one 3) Emerging gnustep-make recompiled the most recent version of gcc with objective c support 4) Portage then proceeded to attempt to compile gnustep-make using the version of gcc that did not have objective c support compiled in, due to eselect pointing to it Fixed it by using eselect to pick the most recent gcc version which was now compiled with objective c support |