Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Nochmal Compiler Error bei dev-lang/python-3.7.x und 3.8.x
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German)
View previous topic :: View next topic  
Author Message
Murmeltier
n00b
n00b


Joined: 14 May 2008
Posts: 66

PostPosted: Mon Feb 24, 2020 5:17 pm    Post subject: Nochmal Compiler Error bei dev-lang/python-3.7.x und 3.8.x Reply with quote

Hallo zusammen,
nach dem letzten Portage update will das System auf python 3.7.5 hoch, was aber scheitert.
Weiss jemand, was das soll?

Traceback (most recent call last):
File "./setup.py", line 4, in <module>
import sys, os, importlib.machinery, re, optparse
File "/tmp/portage/dev-lang/python-3.7.5-r1/work/Python-3.7.5/Lib/optparse.py", line 422, in <module>
_builtin_cvt = { "int" : (_parse_int, _("integer")),
File "/tmp/portage/dev-lang/python-3.7.5-r1/work/Python-3.7.5/Lib/gettext.py", line 625, in gettext
return dgettext(_current_domain, message)
File "/tmp/portage/dev-lang/python-3.7.5-r1/work/Python-3.7.5/Lib/gettext.py", line 588, in dgettext
codeset=_localecodesets.get(domain))
File "/tmp/portage/dev-lang/python-3.7.5-r1/work/Python-3.7.5/Lib/gettext.py", line 533, in translation
t = _translations.setdefault(key, class_(fp))
File "/tmp/portage/dev-lang/python-3.7.5-r1/work/Python-3.7.5/Lib/gettext.py", line 260, in __init__
self._parse(fp)
File "/tmp/portage/dev-lang/python-3.7.5-r1/work/Python-3.7.5/Lib/gettext.py", line 344, in _parse
from struct import unpack
File "/tmp/portage/dev-lang/python-3.7.5-r1/work/Python-3.7.5/Lib/struct.py", line 13, in <module>
from _struct import *
ModuleNotFoundError: No module named '_struct'
make: *** [Makefile:628: sharedmods] Error 1
* ERROR: dev-lang/python-3.7.5-r1::gentoo failed (compile phase):
* emake failed
*

emerge --info '=dev-lang/python-3.7.5-r1::gentoo'
Portage 2.3.84 (python 3.6.9-final-0, default/linux/x86/17.0/desktop, gcc-9.2.0, glibc-2.29-r7, 4.19.97-gentoo i686)
=================================================================
System Settings
=================================================================
System uname: Linux-4.19.97-gentoo-i686-Intel-R-_Core-TM-_i5-3570_CPU_@_3.40GHz-with-gentoo-2.6
KiB Mem: 3632160 total, 2269588 free
KiB Swap: 1047548 total, 1047548 free
Timestamp of repository gentoo: Sat, 01 Feb 2020 00:45:01 +0000
Head commit of repository gentoo: 62034fa04d7370f9c19c9fda7a257cf9acb2c955
sh bash 4.4_p23-r1
ld GNU ld (Gentoo 2.32 p2) 2.32.0
distcc 3.3.3 i686-pc-linux-gnu [disabled]
ccache version 3.7.6 [disabled]
app-shells/bash: 4.4_p23-r1::gentoo
dev-java/java-config: 2.2.0-r4::gentoo
dev-lang/perl: 5.30.1::gentoo
dev-lang/python: 2.7.17::gentoo, 3.6.9::gentoo
dev-util/ccache: 3.7.6::gentoo
dev-util/cmake: 3.14.6::gentoo
dev-util/pkgconfig: 0.29.2::gentoo
sys-apps/baselayout: 2.6-r1::gentoo
sys-apps/openrc: 0.42.1::gentoo
sys-apps/sandbox: 2.13::gentoo
sys-devel/autoconf: 2.13-r1::gentoo, 2.69-r4::gentoo
sys-devel/automake: 1.13.4-r2::gentoo, 1.16.1-r1::gentoo
sys-devel/binutils: 2.32-r1::gentoo
sys-devel/gcc: 9.2.0-r2::gentoo
sys-devel/gcc-config: 2.1::gentoo
sys-devel/libtool: 2.4.6-r6::gentoo
sys-devel/make: 4.2.1-r4::gentoo
sys-kernel/linux-headers: 4.19::gentoo (virtual/os-headers)
sys-libs/glibc: 2.29-r7::gentoo

Grüsse


Last edited by Murmeltier on Wed Apr 29, 2020 3:32 pm; edited 1 time in total
Back to top
View user's profile Send private message
mike155
Advocate
Advocate


Joined: 17 Sep 2010
Posts: 4438
Location: Frankfurt, Germany

PostPosted: Fri Feb 28, 2020 1:02 am    Post subject: Reply with quote

Manchmal versuche ich, auf solche Fragen eine Antwort zu finden. Dann versuche ich, den Fehler nachzustellen und die Ursache des Fehlers herauszufinden. Das kostet aber Zeit - manchmal Stunden. Das mache ich also nur, wenn ich Lust dazu habe.

Meine Lust sinkt aber deutlich, wenn der Fragesteller sich noch nicht einmal die 10 Sekunden Zeit nimmt, Ausgaben mit Code-Tags zu umrahmen, damit sie leichter lesbar werden. Und wenn er nur die Hälfte der Ausgabe von 'emerge --info =<package-name>' postet, so dass ich die verwendeten USE-Flags nicht sehe. Hilfreich wäre auch ein vollständiges Build Log, gepostet über wgetpaste.
Back to top
View user's profile Send private message
Murmeltier
n00b
n00b


Joined: 14 May 2008
Posts: 66

PostPosted: Fri Feb 28, 2020 8:08 am    Post subject: Reply with quote

mike155 wrote:
Manchmal versuche ich, auf solche Fragen eine Antwort zu finden. Dann versuche ich, den Fehler nachzustellen und die Ursache des Fehlers herauszufinden. Das kostet aber Zeit - manchmal Stunden. Das mache ich also nur, wenn ich Lust dazu habe.

Meine Lust sinkt aber deutlich, wenn der Fragesteller sich noch nicht einmal die 10 Sekunden Zeit nimmt, Ausgaben mit Code-Tags zu umrahmen, damit sie leichter lesbar werden. Und wenn er nur die Hälfte der Ausgabe von 'emerge --info =<package-name>' postet, so dass ich die verwendeten USE-Flags nicht sehe. Hilfreich wäre auch ein vollständiges Build Log, gepostet über wgetpaste.


Danke, ich hatte wirklich keine all zu vertiefte Analyse mit hohem Aufwand erwartet.
Was mit "Code-Tags zu umrahmen" gemeint ist, weiss ich nicht, und ob das in 10s getan ist, ebensowenig.
USE-Flags sind gar keine von mir selber gesetzt (für Python) und 2.7 sowie 3.6 kompilieren fehlerlos.

Es geht mir darum, ob jemand selber beim Kompilieren auf diesen Fehler gestossen ist, das Problem selber kennt und allenfalls gelöst hat.
Eine Suche in Netz hat nicht viel ergeben.
Also warte ich einfach mal eine Weile, ob ein Update für das Paket kommt.
Back to top
View user's profile Send private message
franzf
Advocate
Advocate


Joined: 29 Mar 2005
Posts: 4565

PostPosted: Fri Feb 28, 2020 8:54 am    Post subject: Reply with quote

Murmeltier wrote:
mike155 wrote:
Manchmal versuche ich, auf solche Fragen eine Antwort zu finden. Dann versuche ich, den Fehler nachzustellen und die Ursache des Fehlers herauszufinden. Das kostet aber Zeit - manchmal Stunden. Das mache ich also nur, wenn ich Lust dazu habe.

Meine Lust sinkt aber deutlich, wenn der Fragesteller sich noch nicht einmal die 10 Sekunden Zeit nimmt, Ausgaben mit Code-Tags zu umrahmen, damit sie leichter lesbar werden. Und wenn er nur die Hälfte der Ausgabe von 'emerge --info =<package-name>' postet, so dass ich die verwendeten USE-Flags nicht sehe. Hilfreich wäre auch ein vollständiges Build Log, gepostet über wgetpaste.


Danke, ich hatte wirklich keine all zu vertiefte Analyse mit hohem Aufwand erwartet.
Was mit "Code-Tags zu umrahmen" gemeint ist, weiss ich nicht, und ob das in 10s getan ist, ebensowenig.

Geht in unter einer Sekunde.
Den zu umrahmenden Text (z.B. "emerge --info" Ausgabe) markieren und bei den Formatierungs-Knöpfen "B" "i" "u" usw. auf "Code" klicken -> fertig.
Quote:
USE-Flags sind gar keine von mir selber gesetzt (für Python) und 2.7 sowie 3.6 kompilieren fehlerlos.

Wäre aber trotzdem hilfreich zu sehen, was an ist, denn nicht jeder hat auch genau dein Profil am Laufen und "hab ich nichts dran geändert" hört man oft und selbst erfahrene Nutzer übersehen dabei das eine oder andere in ihrer config.
Also bitte wenn du gefragt wirst auch brav posten. DANKE!

Quote:
Es geht mir darum, ob jemand selber beim Kompilieren auf diesen Fehler gestossen ist, das Problem selber kennt und allenfalls gelöst hat.

Wie du siehst hat wohl niemand dein Problem, wenn du es lösen willst solltest du die geforderten infos liefern.
Quote:
Eine Suche in Netz hat nicht viel ergeben.
Also warte ich einfach mal eine Weile, ob ein Update für das Paket kommt.

3.7.6 ist seit 3 Tagen stable für x86:
https://github.com/gentoo/gentoo/commit/3aa51a5a8a508625da4a63b7f96ecb8f8430f3ee#diff-b8823484e18194d53f686af5f9255ba3
Back to top
View user's profile Send private message
Murmeltier
n00b
n00b


Joined: 14 May 2008
Posts: 66

PostPosted: Fri Feb 28, 2020 5:36 pm    Post subject: Reply with quote

Gut, einverstanden, ich versuche es nochmal:

Python 3.7.6 zeigt denselben Fehler
Das Ganze läuft in VirtualBox, weil ich die Kompilate binär für eine alte X86 Pentium-Kiste brauche
Wie gesagt, Python 2.7 und 3.6 gehen durch.

1) Build log (nicht alles, aber hoffentlich genug)
2) emerge --info '=dev-lang/python-3.7.6::gentoo'


Code:

i686-pc-linux-gnu-gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG  -O2 -march=pentium4 -mmmx -msse -msse2 -pipe -fwrapv   -std=c99$
i686-pc-linux-gnu-gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG  -O2 -march=pentium4 -mmmx -msse -msse2 -pipe -fwrapv   -std=c99$
i686-pc-linux-gnu-gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG  -O2 -march=pentium4 -mmmx -msse -msse2 -pipe -fwrapv   -std=c99$
i686-pc-linux-gnu-gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG  -O2 -march=pentium4 -mmmx -msse -msse2 -pipe -fwrapv   -std=c99$
i686-pc-linux-gnu-gcc -pthread -c -Wno-unused-result -Wsign-compare -DNDEBUG  -O2 -march=pentium4 -mmmx -msse -msse2 -pipe -fwrapv   -std=$
i686-pc-linux-gnu-gcc -pthread -c -fPIC -Wno-unused-result -Wsign-compare -DNDEBUG  -O2 -march=pentium4 -mmmx -msse -msse2 -pipe -fwrapv  $
/usr/bin/install -c -m 644 ./Tools/gdb/libpython.py python-gdb.py
i686-pc-linux-gnu-gcc -pthread -c -Wno-unused-result -Wsign-compare -DNDEBUG  -O2 -march=pentium4 -mmmx -msse -msse2 -pipe -fwrapv   -std=$
sed -e "s,@EXENAME@,/usr/bin/python3.7m," < ./Misc/python-config.in >python-config.py
LC_ALL=C sed -e 's,\$(\([A-Za-z0-9_]*\)),\$\{\1\},g' < Misc/python-config.sh >python-config
i686-pc-linux-gnu-gcc -pthread -c -Wno-unused-result -Wsign-compare -DNDEBUG  -O2 -march=pentium4 -mmmx -msse -msse2 -pipe -fwrapv   -std=$
      -DGITVERSION="\"`LC_ALL=C `\"" \
      -DGITTAG="\"`LC_ALL=C `\"" \
      -DGITBRANCH="\"`LC_ALL=C `\"" \
      -o Modules/getbuildinfo.o ./Modules/getbuildinfo.c
rm -f libpython3.7m.a
if test libpython3.7m.so.1.0 != libpython3.7m.so; then \
        i686-pc-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,--as-needed -L.    -Wl,-hlibpython3.7m.so.1.0 -o libpython3.7m.so.1.0 Modules/g$
        ln -f libpython3.7m.so.1.0 libpython3.7m.so; \
else \
        i686-pc-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,--as-needed -L.    -o libpython3.7m.so Modules/getbuildinfo.o Parser/acceler.o $
fi
i686-pc-linux-gnu-ar rcs libpython3.7m.a Modules/getbuildinfo.o Parser/acceler.o Parser/grammar1.o Parser/listnode.o Parser/node.o Parser/$
i686-pc-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,--as-needed -L.    -Wl,--no-as-needed -o libpython3.so -Wl,-hlibpython3.so libpython3.7$
i686-pc-linux-gnu-gcc -pthread -Wl,-O1 -Wl,--as-needed -L.    -Xlinker -export-dynamic -o python Programs/python.o -L. -lpython3.7m -lcryp$
i686-pc-linux-gnu-gcc -pthread -Wl,-O1 -Wl,--as-needed -L.    -Xlinker -export-dynamic -o Programs/_testembed Programs/_testembed.o -L. -l$
LD_LIBRARY_PATH=/tmp/portage/dev-lang/python-3.7.6/work/Python-3.7.6 ./python -E -S -m sysconfig --generate-posix-vars ;\
if test $? -ne 0 ; then \
        echo "generate-posix-vars failed" ; \
        rm -f ./pybuilddir.txt ; \
        exit 1 ; \
fi
LD_LIBRARY_PATH=/tmp/portage/dev-lang/python-3.7.6/work/Python-3.7.6 CC='i686-pc-linux-gnu-gcc -pthread' LDSHARED='i686-pc-linux-gnu-gcc -$
Traceback (most recent call last):
  File "./setup.py", line 4, in <module>
    import sys, os, importlib.machinery, re, optparse
  File "/tmp/portage/dev-lang/python-3.7.6/work/Python-3.7.6/Lib/optparse.py", line 422, in <module>
    _builtin_cvt = { "int" : (_parse_int, _("integer")),
  File "/tmp/portage/dev-lang/python-3.7.6/work/Python-3.7.6/Lib/gettext.py", line 625, in gettext
    return dgettext(_current_domain, message)
  File "/tmp/portage/dev-lang/python-3.7.6/work/Python-3.7.6/Lib/gettext.py", line 588, in dgettext
    codeset=_localecodesets.get(domain))
  File "/tmp/portage/dev-lang/python-3.7.6/work/Python-3.7.6/Lib/gettext.py", line 533, in translation
    t = _translations.setdefault(key, class_(fp))
  File "/tmp/portage/dev-lang/python-3.7.6/work/Python-3.7.6/Lib/gettext.py", line 260, in __init__
    self._parse(fp)
  File "/tmp/portage/dev-lang/python-3.7.6/work/Python-3.7.6/Lib/gettext.py", line 344, in _parse
    from struct import unpack
  File "/tmp/portage/dev-lang/python-3.7.6/work/Python-3.7.6/Lib/struct.py", line 13, in <module>
    from _struct import *
ModuleNotFoundError: No module named '_struct'
make: *** [Makefile:628: sharedmods] Error 1
 * ERROR: dev-lang/python-3.7.6::gentoo failed (compile phase):
 *   emake failed
 *



Code:
root@Idefix /etc/portage # emerge --info '=dev-lang/python-3.7.6::gentoo'
Portage 2.3.84 (python 3.6.10-final-0, default/linux/x86/17.0/desktop, gcc-9.2.0, glibc-2.29-r7, 4.19.97-gentoo i686)
=================================================================
                         System Settings
=================================================================
System uname: Linux-4.19.97-gentoo-i686-Intel-R-_Core-TM-_i5-3570_CPU_@_3.40GHz-with-gentoo-2.6
KiB Mem:     3632160 total,   2862072 free
KiB Swap:    1047548 total,   1047548 free
Timestamp of repository gentoo: Fri, 28 Feb 2020 00:45:01 +0000
Head commit of repository gentoo: feae48e6ea13a13ca3e47dd45d6d4117e33de37d
sh bash 4.4_p23-r1
ld GNU ld (Gentoo 2.32 p2) 2.32.0
distcc 3.3.3 i686-pc-linux-gnu [disabled]
ccache version 3.7.6 [disabled]
app-shells/bash:          4.4_p23-r1::gentoo
dev-java/java-config:     2.2.0-r4::gentoo
dev-lang/perl:            5.30.1::gentoo
dev-lang/python:          2.7.17-r1::gentoo, 3.6.10::gentoo
dev-util/ccache:          3.7.6::gentoo
dev-util/cmake:           3.14.6::gentoo
dev-util/pkgconfig:       0.29.2::gentoo
sys-apps/baselayout:      2.6-r1::gentoo
sys-apps/openrc:          0.42.1::gentoo
sys-apps/sandbox:         2.13::gentoo
sys-devel/autoconf:       2.13-r1::gentoo, 2.69-r4::gentoo
sys-devel/automake:       1.13.4-r2::gentoo, 1.16.1-r1::gentoo
sys-devel/binutils:       2.32-r1::gentoo
sys-devel/gcc:            9.2.0-r2::gentoo
sys-devel/gcc-config:     2.1::gentoo
sys-devel/libtool:        2.4.6-r6::gentoo
sys-devel/make:           4.2.1-r4::gentoo
sys-kernel/linux-headers: 4.19::gentoo (virtual/os-headers)
sys-libs/glibc:           2.29-r7::gentoo
Repositories:

gentoo
    location: /usr/portage/portage
    sync-type: rsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: -1000
    sync-rsync-extra-opts: --compress-level=9
    sync-rsync-verify-max-age: 24
    sync-rsync-verify-metamanifest: yes
    sync-rsync-verify-jobs: 1

myoverlay
    location: /usr/portage/overlay
    masters: gentoo

ACCEPT_KEYWORDS="x86"
ACCEPT_LICENSE="@FREE"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=pentium4 -mmmx -msse -msse2 -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -march=pentium4 -mmmx -msse -msse2 -pipe"
DISTDIR="/usr/portage/distfiles-Idefix"
EMERGE_DEFAULT_OPTS="--buildpkg --with-bdeps=y --keep-going=y"
ENV_UNSET="DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR"
FCFLAGS="-O2 -march=i686 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs buildpkg config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch pid-sandbox preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
FFLAGS="-O2 -march=i686 -pipe"
GENTOO_MIRRORS="/usr/portage/distfiles-Idefix                 /usr/portage/distfiles-Asterix                 ftp://mirror.netcologne.de/gentoo                 ftp://ftp.fau.de/gentoo                 ftp://mirror.switch.ch/mirror/gentoo"
LANG="de_CH.utf8"
LC_ALL="de_CH.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="de"
MAKEOPTS="-j5"
PKGDIR="/usr/portage/binpkgs"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_EXTRA_OPTS="--compress-level=9"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/tmp"
USE="X a52 aac acl acpi alsa berkdb branding bzip2 cairo cdda cdr cjk cli consolekit crypt cups cxx dbus dri dts dvd dvdr emboss encode evdev exif ffmpeg flac fontconfig gd gdbm gif gimp gnome-keyring gnutls gphoto2 gpm gstreamer gtk gtk3 iconv icu java jpeg lcms libnotify libtirpc lm_sensors lzma mad mng mp3 mp4 mpeg mysql ncurses nls nptl nsplugin offlinehelp ogg opengl openmp pam pango pch pcre pdf pm-utils png policykit ppds qt5 quicktime raw readline sbcl sdl seccomp sound spell split-usr sqlite ssl startup-notification subversion svg tcpd threads tiff timidity tk truetype udev udisks unicode upower usb vcd video vorbis wxwidgets x264 x86 xcb xfce xml xscreensaver xv xvid zlib" ABI_X86="32" ADA_TARGET="gnat_2018" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" CAMERAS="directory" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="mmx mmxext sse sse2" ELIBC="glibc" GPSD_PROTOCOLS="garmin" INPUT_DEVICES="evdev keyboard mouse" KERNEL="linux" L10N="de" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer nlpsolver" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php7-2" POSTGRES_TARGETS="postgres10 postgres11" PYTHON_SINGLE_TARGET="python3_6" PYTHON_TARGETS="python2_7 python3_6" RUBY_TARGETS="ruby25" SANE_BACKENDS="hp" USERLAND="GNU" VIDEO_CARDS="vesa vboxvideo" XFCE_PLUGINS="clock power trash" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CC, CPPFLAGS, CTARGET, CXX, INSTALL_MASK, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS

root@Idefix /etc/portage #
Back to top
View user's profile Send private message
franzf
Advocate
Advocate


Joined: 29 Mar 2005
Posts: 4565

PostPosted: Fri Feb 28, 2020 6:58 pm    Post subject: Reply with quote

Danke.
Leider sind die Zeilen des build log abgeschnitten, hast du aus der Konsole kopiert, oder?
Das vollständige build.log wäre schon gut. Lad es doch einfach auf pastebin.com o.Ä. hoch.
Auch das environment file wäre interessant, sollte noch unter /tmp/portage/dev-lang/python-3.7.6/temp/environment zu finden sein. Dort liegt übrigens auch das build.log.

Ansonsten seh ich, dass sich im ebuild zwischen den 3.6ern und 3.7ern EINIGES getan hat.
Eine "ältere" Version der 3.7er Serie pflegt Martin Vaeth in seinem Overlay:
https://github.com/vaeth/mv-overlay
Wenn das bei dir geht kann man die Ursache vielleicht besser einkreisen.
Back to top
View user's profile Send private message
Murmeltier
n00b
n00b


Joined: 14 May 2008
Posts: 66

PostPosted: Fri Feb 28, 2020 8:27 pm    Post subject: Reply with quote

franzf wrote:
Danke.
Leider sind die Zeilen des build log abgeschnitten, hast du aus der Konsole kopiert, oder?
Das vollständige build.log wäre schon gut. Lad es doch einfach auf pastebin.com o.Ä. hoch.
Auch das environment file wäre interessant, sollte noch unter /tmp/portage/dev-lang/python-3.7.6/temp/environment zu finden sein. Dort liegt übrigens auch das build.log.

Ansonsten seh ich, dass sich im ebuild zwischen den 3.6ern und 3.7ern EINIGES getan hat.
Eine "ältere" Version der 3.7er Serie pflegt Martin Vaeth in seinem Overlay:
https://github.com/vaeth/mv-overlay
Wenn das bei dir geht kann man die Ursache vielleicht besser einkreisen.


Hallo, das Build-Log ist unter https://pastebin.com/zz9f0sx4 zu finden.
/tmp/portage/dev-lang/python-3.7.6/temp/environment ist hier : https://pastebin.com/3T9vn579
Danke
Back to top
View user's profile Send private message
mike155
Advocate
Advocate


Joined: 17 Sep 2010
Posts: 4438
Location: Frankfurt, Germany

PostPosted: Fri Feb 28, 2020 10:53 pm    Post subject: Reply with quote

Hallo Murmeltier,

danke für die Dateien!

Ich habe meine alte x86 VM wieder reaktiviert und habe versucht, das Problem nachzustellen.
  1. Laut Build Log werden bei Murmeltier folgende USE-Flags und Features verwendet:
    Code:
    Package:    dev-lang/python-3.7.6
    Repository: gentoo
    Maintainer: python@gentoo.org
    USE:        abi_x86_32 elibc_glibc gdbm kernel_linux ncurses readline sqlite ssl tk userland_GNU x86 xml
    FEATURES:   network-sandbox preserve-libs sandbox userpriv usersandbox

    Wenn ich bei mir folgende Anweisung starte:
    Code:
    USE="gdbm kernel_linux ncurses readline sqlite ssl tk userland_GNU x86 xml" emerge --oneshot python

    wird Python mit den gleichen Features und USE flags übersetzt. Bei mir funktioniert es aber und ich erhalte aber keinen Fehler.

  2. An den CFLAGS liegt es auch nicht...
    Code:
    CFLAGS="-O2 -march=pentium4 -mmmx -msse -msse2 -pipe"

  3. ... und auch nicht an den Sprach-Einstellungen
    Code:
    LANG="de_CH.utf8"
    LC_ALL="de_CH.utf8"
    LINGUAS="de"

Also, ich kann den Bug nicht reproduzieren. Du könntest folgendes probieren:
  1. Python ohne USE-Flag "tk" installieren. Tritt der Fehler dann auch auf?

  2. Es wäre möglich, dass distcc und ccache hier ihr Unwesen treiben. Laut "emerge --info" sind sie "disabled". Aber wir hatten schon mal einen Fall, in dem die beiden "disabled" waren und trotzdem zu merkwürdigen Fehlern geführt haben. Vielleicht musst Du sie noch mehr "disablen", evtl. sogar komplett deinstallieren?
Back to top
View user's profile Send private message
Murmeltier
n00b
n00b


Joined: 14 May 2008
Posts: 66

PostPosted: Sat Feb 29, 2020 8:09 am    Post subject: Reply with quote

mike155 wrote:
Hallo Murmeltier,

danke für die Dateien!

Ich habe meine alte x86 VM wieder reaktiviert und habe versucht, das Problem nachzustellen.
  1. Laut Build Log werden bei Murmeltier folgende USE-Flags und Features verwendet:
    Code:
    Package:    dev-lang/python-3.7.6
    Repository: gentoo
    Maintainer: python@gentoo.org
    USE:        abi_x86_32 elibc_glibc gdbm kernel_linux ncurses readline sqlite ssl tk userland_GNU x86 xml
    FEATURES:   network-sandbox preserve-libs sandbox userpriv usersandbox

    Wenn ich bei mir folgende Anweisung starte:
    Code:
    USE="gdbm kernel_linux ncurses readline sqlite ssl tk userland_GNU x86 xml" emerge --oneshot python

    wird Python mit den gleichen Features und USE flags übersetzt. Bei mir funktioniert es aber und ich erhalte aber keinen Fehler.

  2. An den CFLAGS liegt es auch nicht...
    Code:
    CFLAGS="-O2 -march=pentium4 -mmmx -msse -msse2 -pipe"

  3. ... und auch nicht an den Sprach-Einstellungen
    Code:
    LANG="de_CH.utf8"
    LC_ALL="de_CH.utf8"
    LINGUAS="de"

Also, ich kann den Bug nicht reproduzieren. Du könntest folgendes probieren:
  1. Python ohne USE-Flag "tk" installieren. Tritt der Fehler dann auch auf?

  2. Es wäre möglich, dass distcc und ccache hier ihr Unwesen treiben. Laut "emerge --info" sind sie "disabled". Aber wir hatten schon mal einen Fall, in dem die beiden "disabled" waren und trotzdem zu merkwürdigen Fehlern geführt haben. Vielleicht musst Du sie noch mehr "disablen", evtl. sogar komplett deinstallieren?


Danke mike155 für die Analyse,
folgendes hat sich ergeben:

ccache und distccd zu deinstallieren hat keinen Einfluss.
USE - Flag "-tk" habe ich in package.use gesetzt, hilft auch nichts.

--> ABER wenn ich das Paket auf dem Hauptrechner in AMD64-Architktur compiliere, dann gehts 8O 8O

Da der Fehler im Link-Step auftritt, hat er wohl dieses ominöse Modul "_struct" gar nicht erst erstellt?
Es bleibt vorerst rätselhaft.
Back to top
View user's profile Send private message
Murmeltier
n00b
n00b


Joined: 14 May 2008
Posts: 66

PostPosted: Sat Feb 29, 2020 8:20 am    Post subject: Reply with quote

Murmeltier wrote:


--> ABER wenn ich das Paket auf dem Hauptrechner in AMD64-Architktur compiliere, dann gehts 8O 8O

Da der Fehler im Link-Step auftritt, hat er wohl dieses ominöse Modul "_struct" gar nicht erst erstellt?
Es bleibt vorerst rätselhaft.


Hab noch was gefunden beim Durchsuchen der Logs:

amd64:

root@Asterix /var/log/portage # grep -ir "'_struct'" *.log
dev-lang:python-2.7.17-r1:20200229-075809.log:building '_struct' extension
dev-lang:python-3.6.10:20200229-075631.log:building '_struct' extension
dev-lang:python-3.7.6:20200229-075952.log:building '_struct' extension

x86:

root@Idefix /var/log/portage # grep -ir "'_struct'" *.log
dev-lang:python-2.7.17-r1:20200228-171739.log:building '_struct' extension
dev-lang:python-3.6.10:20200228-171529.log:building '_struct' extension
dev-lang:python-3.7.6:20200228-171933.log:ModuleNotFoundError: No module named '_struct'

KEIN "building '_struct' extension" unter x86, aha!
Wieso weshalb warum?
:roll:
Back to top
View user's profile Send private message
franzf
Advocate
Advocate


Joined: 29 Mar 2005
Posts: 4565

PostPosted: Sat Feb 29, 2020 9:21 am    Post subject: Reply with quote

Quote:
KEIN "building '_struct' extension" unter x86, aha!
Wieso weshalb warum?

Weil es vorher bei den imports schon abschmiert.
Was halt irgendwie komisch ist. gettext ist involviert, aber für den Fall dass es bei gettext Probleme gibt ist ein fallback definiert:
/tmp/portage/dev-lang/python-3.7.6/work/Python-3.7.6/Lib/optparse.py
ab Zeile 89.

Code:
try:
    from gettext import gettext, ngettext
except ImportError:
    def gettext(message):
        return message

    def ngettext(singular, plural, n):
        if n == 1:
            return singular
        return plural

_ = gettext


Kannst du mal machen (als root):
Code:
# cd /tmp/portage/dev-lang/python-3.7.6/work/Python-3.7.6/

# ./python -E -c "import sys; print(sys.path)"

Und die Ausgabe posten?

Bitte auch noch deine /etc/portage/make.conf.
(Hast du auch noch eine /etc/make.conf?)

Auch noch interessant könnte sein, ob du in /usr/local/bin und /usr/local/sbin was liegen hast, und wenn ja -> was?
Dein clang ist auch noch im PATH: /usr/lib/llvm/8/bin
Was liegt da drinnen?
Back to top
View user's profile Send private message
franzf
Advocate
Advocate


Joined: 29 Mar 2005
Posts: 4565

PostPosted: Sat Feb 29, 2020 9:27 am    Post subject: Reply with quote

Hmmm. Kannst du kurz was ausprobieren?
Code:
# cd /tmp/portage/dev-lang/python-3.7.6/work/Python-3.7.6/
# vim Lib/gettext.py

(kann natürlich jeder texteditor sein, nicht zwingend vim)
Dann in Zeile 53 einfügen
Code:
import struct

Und speichern.
Danach
Code:
# ebuild /usr/portage/portage/dev-lang/python/python-3.7.6.ebuild compile

kompiliert der jetzt fertig? Solltest du ja sofort sehen können.
Back to top
View user's profile Send private message
Murmeltier
n00b
n00b


Joined: 14 May 2008
Posts: 66

PostPosted: Sat Feb 29, 2020 10:40 am    Post subject: Reply with quote

franzf wrote:
Quote:
KEIN "building '_struct' extension" unter x86, aha!
Wieso weshalb warum?

Weil es vorher bei den imports schon abschmiert.
Was halt irgendwie komisch ist. gettext ist involviert, aber für den Fall dass es bei gettext Probleme gibt ist ein fallback definiert:
/tmp/portage/dev-lang/python-3.7.6/work/Python-3.7.6/Lib/optparse.py
ab Zeile 89.

Code:
try:
    from gettext import gettext, ngettext
except ImportError:
    def gettext(message):
        return message

    def ngettext(singular, plural, n):
        if n == 1:
            return singular
        return plural

_ = gettext


Kannst du mal machen (als root):
Code:
# cd /tmp/portage/dev-lang/python-3.7.6/work/Python-3.7.6/

# ./python -E -c "import sys; print(sys.path)"

Und die Ausgabe posten?

Bitte auch noch deine /etc/portage/make.conf.
(Hast du auch noch eine /etc/make.conf?)

Auch noch interessant könnte sein, ob du in /usr/local/bin und /usr/local/sbin was liegen hast, und wenn ja -> was?
Dein clang ist auch noch im PATH: /usr/lib/llvm/8/bin
Was liegt da drinnen?


Hallo, hier die Ergebnisse:

Code:
./python -E -c "import sys; print(sys.path)" geht nicht
==> ./python: error while loading shared libraries: libpython3.7m.so.1.0: cannot open shared object file: No such file or directory

Ich muss /usr/bin/python nehmen
/usr/bin/python -E -c "import sys; print(sys.path)"
['', '/usr/lib/python36.zip', '/usr/lib/python3.6', '/usr/lib/python3.6/lib-dynload', '/usr/lib/python3.6/site-packages']


Meine /etc/portage/make.conf (/etc/make.conf gibt es nicht)

Code:
cat /etc/portage/make.conf
# These settings were set by the catalyst build script that automatically built this stage
# Please consult /etc/make.conf.example for a more detailed example

#----------------------------------------------------------------------------
# DW, 25.01.2008, Anpassung
#----------------------------------------------------------------------------

# Compilereinstellungen

CFLAGS="-O2 -march=pentium4 -mmmx -msse -msse2 -pipe"
CHOST="i686-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"
CPU_FLAGS_X86="mmx mmxext sse sse2"
MAKEOPTS="-j5"

# Erklärung der USE-Flags: /usr/portage/portage/profiles/use.desc

USE="cjk dbus evdev ffmpeg fontconfig gd gphoto2 gimp gnome-keyring gnutls \
     gstreamer gtk gtk3 icu java lm_sensors lzma mysql nsplugin offlinehelp \
     opengl pch pm-utils qt5 quicktime raw sbcl sound sqlite subversion \
     timidity threads tk vcd video wxwidgets xfce xscreensaver \
     -bindist -bluetooth -cddb -cvs -doc -dso -embedded -enca -fortran -gjc \
     -git -gnome -ipv6 -kde -kerberos -ldap -motif -ppp -pulseaudio -qt4 \
     -samba -schroedinger -speex -systemd -wayland -wifi -xattr -xinerama"

# Sonstige Installationsflags
#
# LINGUAS/L10N ist wichtig für die Installation lokaler Sprachdateien!
# INPUT_DEVICES,VIDEO_CARDS ist für massgeschneiderten X-Server nötig.
# RUBY_TARGETS ist für die Auswahl von Ruby-Paketen zuständig.

ABI_X86="32"
LINGUAS="de"
L10N="de"
INPUT_DEVICES="evdev keyboard mouse"
VIDEO_CARDS="vesa vboxvideo"
CAMERAS="directory"
GPSD_PROTOCOLS="garmin"
LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer nlpsolver"
RUBY_TARGETS="ruby25"
SANE_BACKENDS="hp"
XFCE_PLUGINS="clock power trash"

# Definition diverser Optionen.

EMERGE_DEFAULT_OPTS="--buildpkg --with-bdeps=y --keep-going=y"
FEATURES=""

# Ort der Portage-Verzeichnisse

PORTDIR="/usr/portage/portage"
DISTDIR="/usr/portage/distfiles-Idefix"
RPMDIR="/usr/portage/rpm"
PKGDIR="/usr/portage/binpkgs"
PORTAGE_ELOG_CLASSES="warn error log"
PORTAGE_ELOG_SYSTEM="save_summary"
PORTAGE_TMPDIR="/tmp"
PORTAGE_TMPFS="/dev/shm"
PORT_LOGDIR="/var/log/portage"

# Quellen für Installationspakete

PORTAGE_RSYNC_EXTRA_OPTS="--compress-level=9"

GENTOO_MIRRORS="/usr/portage/distfiles-Idefix \
                /usr/portage/distfiles-Asterix \
                ftp://mirror.netcologne.de/gentoo \
                ftp://ftp.fau.de/gentoo \
                ftp://mirror.switch.ch/mirror/gentoo"


Nichts in /usr/local

Code:
root@Idefix /tmp/portage/dev-lang/python-3.7.6/work/Python-3.7.6 # ll /usr/local/bin
insgesamt 0
root@Idefix /tmp/portage/dev-lang/python-3.7.6/work/Python-3.7.6 # ll /usr/local/sbin
insgesamt 0


Und der Inhalt von clang:

Code:
ll  /usr/lib/llvm/8/bin
insgesamt 14876
-rwxr-xr-x 1 root root  433316 05.10.2019 08:25:46 bugpoint*
-rwxr-xr-x 1 root root  179424 28.02.2020 21:31:35 c-index-test*
lrwxrwxrwx 1 root root       7 28.02.2020 21:31:31 clang -> clang-8*
lrwxrwxrwx 1 root root       9 28.02.2020 21:31:33 clang++ -> clang++-8*
lrwxrwxrwx 1 root root       7 28.02.2020 21:31:33 clang++-8 -> clang-8*
-rwxr-xr-x 1 root root  146168 28.02.2020 21:31:35 clang-8*
-rwxr-xr-x 1 root root   46644 28.02.2020 21:31:35 clang-apply-replacements*
-rwxr-xr-x 1 root root  235424 28.02.2020 21:31:35 clang-change-namespace*
-rwxr-xr-x 1 root root   34396 28.02.2020 21:31:35 clang-check*
lrwxrwxrwx 1 root root      10 28.02.2020 21:31:33 clang-cl -> clang-cl-8*
lrwxrwxrwx 1 root root       7 28.02.2020 21:31:33 clang-cl-8 -> clang-8*
lrwxrwxrwx 1 root root      11 28.02.2020 21:31:33 clang-cpp -> clang-cpp-8*
lrwxrwxrwx 1 root root       7 28.02.2020 21:31:33 clang-cpp-8 -> clang-8*
-rwxr-xr-x 1 root root   91908 28.02.2020 21:31:35 clangd*
-rwxr-xr-x 1 root root   22040 28.02.2020 21:31:35 clang-extdef-mapping*
-rwxr-xr-x 1 root root   67244 28.02.2020 21:31:35 clang-format*
-rwxr-xr-x 1 root root   75484 28.02.2020 21:31:35 clang-import-test*
-rwxr-xr-x 1 root root  100212 28.02.2020 21:31:35 clang-include-fixer*
-rwxr-xr-x 1 root root   59016 28.02.2020 21:31:35 clang-offload-bundler*
-rwxr-xr-x 1 root root  231272 28.02.2020 21:31:35 clang-query*
-rwxr-xr-x 1 root root  128764 28.02.2020 21:31:35 clang-refactor*
-rwxr-xr-x 1 root root   71460 28.02.2020 21:31:35 clang-rename*
-rwxr-xr-x 1 root root   34372 28.02.2020 21:31:35 clang-reorder-fields*
-rwxr-xr-x 1 root root  247692 28.02.2020 21:31:35 clang-tidy*
-rwxr-xr-x 1 root root   13588 05.10.2019 08:25:46 count*
-rwxr-xr-x 1 root root  398908 28.02.2020 21:31:35 diagtool*
-rwxr-xr-x 1 root root  457312 05.10.2019 08:25:46 dsymutil*
-rwxr-xr-x 1 root root   83564 05.10.2019 08:25:46 FileCheck*
-rwxr-xr-x 1 root root  231280 28.02.2020 21:31:35 find-all-symbols*
-rwxr-xr-x 1 root root   21841 28.02.2020 21:31:32 git-clang-format*
-rwxr-xr-x 1 root root    9977 28.02.2020 21:31:32 hmaptool*
lrwxrwxrwx 1 root root      25 28.02.2020 21:31:33 i686-pc-linux-gnu-clang -> i686-pc-linux-gnu-clang-8*
lrwxrwxrwx 1 root root      27 28.02.2020 21:31:33 i686-pc-linux-gnu-clang++ -> i686-pc-linux-gnu-clang++-8*
lrwxrwxrwx 1 root root       9 28.02.2020 21:31:33 i686-pc-linux-gnu-clang++-8 -> clang++-8*
lrwxrwxrwx 1 root root       7 28.02.2020 21:31:33 i686-pc-linux-gnu-clang-8 -> clang-8*
lrwxrwxrwx 1 root root      28 28.02.2020 21:31:33 i686-pc-linux-gnu-clang-cl -> i686-pc-linux-gnu-clang-cl-8*
lrwxrwxrwx 1 root root      10 28.02.2020 21:31:33 i686-pc-linux-gnu-clang-cl-8 -> clang-cl-8*
lrwxrwxrwx 1 root root      29 28.02.2020 21:31:33 i686-pc-linux-gnu-clang-cpp -> i686-pc-linux-gnu-clang-cpp-8*
lrwxrwxrwx 1 root root      11 28.02.2020 21:31:33 i686-pc-linux-gnu-clang-cpp-8 -> clang-cpp-8*
-rwxr-xr-x 1 root root   64704 05.10.2019 08:25:46 i686-pc-linux-gnu-llvm-config*
-rwxr-xr-x 1 root root  186364 05.10.2019 08:25:46 llc*
-rwxr-xr-x 1 root root  370844 05.10.2019 08:25:46 lli*
-rwxr-xr-x 1 root root  104016 05.10.2019 08:25:46 lli-child-target*
-rwxr-xr-x 1 root root   67324 05.10.2019 08:25:46 llvm-ar*
-rwxr-xr-x 1 root root   26128 05.10.2019 08:25:46 llvm-as*
-rwxr-xr-x 1 root root   67112 05.10.2019 08:25:46 llvm-bcanalyzer*
-rwxr-xr-x 1 root root   26136 05.10.2019 08:25:46 llvm-cat*
-rwxr-xr-x 1 root root  141048 05.10.2019 08:25:46 llvm-cfi-verify*
lrwxrwxrwx 1 root root      29 05.10.2019 08:25:43 llvm-config -> i686-pc-linux-gnu-llvm-config*
-rwxr-xr-x 1 root root  383148 05.10.2019 08:25:46 llvm-cov*
-rwxr-xr-x 1 root root  117536 05.10.2019 08:25:46 llvm-c-test*
-rwxr-xr-x 1 root root   26140 05.10.2019 08:25:46 llvm-cvtres*
-rwxr-xr-x 1 root root   75352 05.10.2019 08:25:46 llvm-cxxdump*
-rwxr-xr-x 1 root root   30224 05.10.2019 08:25:46 llvm-cxxfilt*
-rwxr-xr-x 1 root root   38436 05.10.2019 08:25:46 llvm-cxxmap*
-rwxr-xr-x 1 root root   95776 05.10.2019 08:25:46 llvm-diff*
-rwxr-xr-x 1 root root   38488 05.10.2019 08:25:46 llvm-dis*
lrwxrwxrwx 1 root root       7 05.10.2019 08:25:42 llvm-dlltool -> llvm-ar*
-rwxr-xr-x 1 root root  112540 05.10.2019 08:25:46 llvm-dwarfdump*
-rwxr-xr-x 1 root root  100132 05.10.2019 08:25:46 llvm-dwp*
-rwxr-xr-x 1 root root   34336 05.10.2019 08:25:46 llvm-elfabi*
-rwxr-xr-x 1 root root  330496 05.10.2019 08:25:46 llvm-exegesis*
-rwxr-xr-x 1 root root   54908 05.10.2019 08:25:46 llvm-extract*
lrwxrwxrwx 1 root root       7 05.10.2019 08:25:42 llvm-lib -> llvm-ar*
-rwxr-xr-x 1 root root   59056 05.10.2019 08:25:46 llvm-link*
-rwxr-xr-x 1 root root  202628 05.10.2019 08:25:46 llvm-lto*
-rwxr-xr-x 1 root root  161500 05.10.2019 08:25:46 llvm-lto2*
-rwxr-xr-x 1 root root   96064 05.10.2019 08:25:46 llvm-mc*
-rwxr-xr-x 1 root root  145156 05.10.2019 08:25:46 llvm-mca*
-rwxr-xr-x 1 root root   22020 05.10.2019 08:25:46 llvm-modextract*
-rwxr-xr-x 1 root root   26108 05.10.2019 08:25:46 llvm-mt*
-rwxr-xr-x 1 root root  137088 05.10.2019 08:25:46 llvm-nm*
-rwxr-xr-x 1 root root  337776 05.10.2019 08:25:46 llvm-objcopy*
-rwxr-xr-x 1 root root  604764 05.10.2019 08:25:46 llvm-objdump*
-rwxr-xr-x 1 root root   50764 05.10.2019 08:25:46 llvm-opt-report*
-rwxr-xr-x 1 root root 1055896 05.10.2019 08:25:46 llvm-pdbutil*
-rwxr-xr-x 1 root root   17712 05.10.2019 08:25:46 llvm-PerfectShuffle*
-rwxr-xr-x 1 root root  149312 05.10.2019 08:25:46 llvm-profdata*
lrwxrwxrwx 1 root root       7 05.10.2019 08:25:42 llvm-ranlib -> llvm-ar*
-rwxr-xr-x 1 root root  177932 05.10.2019 08:25:46 llvm-rc*
lrwxrwxrwx 1 root root      12 05.10.2019 08:25:43 llvm-readelf -> llvm-readobj*
-rwxr-xr-x 1 root root 1178332 05.10.2019 08:25:46 llvm-readobj*
-rwxr-xr-x 1 root root   79660 05.10.2019 08:25:46 llvm-rtdyld*
-rwxr-xr-x 1 root root   87676 05.10.2019 08:25:46 llvm-size*
-rwxr-xr-x 1 root root   21996 05.10.2019 08:25:46 llvm-split*
-rwxr-xr-x 1 root root   67428 05.10.2019 08:25:46 llvm-stress*
-rwxr-xr-x 1 root root   34316 05.10.2019 08:25:46 llvm-strings*
lrwxrwxrwx 1 root root      12 05.10.2019 08:25:42 llvm-strip -> llvm-objcopy*
-rwxr-xr-x 1 root root   50764 05.10.2019 08:25:46 llvm-symbolizer*
-rwxr-xr-x 1 root root 2443508 05.10.2019 08:25:45 llvm-tblgen*
-rwxr-xr-x 1 root root   22000 05.10.2019 08:25:46 llvm-undname*
-rwxr-xr-x 1 root root  448500 05.10.2019 08:25:46 llvm-xray*
-rwxr-xr-x 1 root root  272380 28.02.2020 21:31:35 modularize*
-rwxr-xr-x 1 root root   13676 05.10.2019 08:25:46 not*
-rwxr-xr-x 1 root root  296848 05.10.2019 08:25:46 obj2yaml*
-rwxr-xr-x 1 root root  396436 05.10.2019 08:25:46 opt*
-rwxr-xr-x 1 root root  120704 05.10.2019 08:25:46 sancov*
-rwxr-xr-x 1 root root   26104 05.10.2019 08:25:46 sanstats*
-rwxr-xr-x 1 root root   55075 13.12.2018 21:55:34 scan-build*
-rwxr-xr-x 1 root root    4705 28.02.2020 21:31:32 scan-view*
-rwxr-xr-x 1 root root   67128 05.10.2019 08:25:46 verify-uselistorder*
-rwxr-xr-x 1 root root  169692 05.10.2019 08:25:46 yaml2obj*
-rwxr-xr-x 1 root root   38464 05.10.2019 08:25:46 yaml-bench*
Back to top
View user's profile Send private message
Murmeltier
n00b
n00b


Joined: 14 May 2008
Posts: 66

PostPosted: Sat Feb 29, 2020 10:44 am    Post subject: Reply with quote

franzf wrote:
Hmmm. Kannst du kurz was ausprobieren?
Code:
# cd /tmp/portage/dev-lang/python-3.7.6/work/Python-3.7.6/
# vim Lib/gettext.py

(kann natürlich jeder texteditor sein, nicht zwingend vim)
Dann in Zeile 53 einfügen
Code:
import struct

Und speichern.
Danach
Code:
# ebuild /usr/portage/portage/dev-lang/python/python-3.7.6.ebuild compile

kompiliert der jetzt fertig? Solltest du ja sofort sehen können.


JAAAA :D

Code:
>>> Source compiled.


Schönen Dank, also zur Not mache ich die ebuild-Schritte manuell,
aber es gibt sicher einen eleganteren Weg, oder?
Back to top
View user's profile Send private message
franzf
Advocate
Advocate


Joined: 29 Mar 2005
Posts: 4565

PostPosted: Sat Feb 29, 2020 11:06 am    Post subject: Reply with quote

Murmeltier wrote:


Hallo, hier die Ergebnisse:

Code:
./python -E -c "import sys; print(sys.path)" geht nicht
==> ./python: error while loading shared libraries: libpython3.7m.so.1.0: cannot open shared object file: No such file or directory

Ich muss /usr/bin/python nehmen
/usr/bin/python -E -c "import sys; print(sys.path)"
['', '/usr/lib/python36.zip', '/usr/lib/python3.6', '/usr/lib/python3.6/lib-dynload', '/usr/lib/python3.6/site-packages']

Ich will schauen, ob da irgendwas am path komisch ist.
Dass es nicht geht macht Sinn...
Mach mal
Code:
LD_LIBRARY_PATH=/tmp/portage/dev-lang/python-3.7.6/work/Python-3.7.6 ./python -E -c "import sys; print(sys.path)"


Quote:
Meine /etc/portage/make.conf (/etc/make.conf gibt es nicht)

Code:
cat /etc/portage/make.conf

PORTAGE_TMPDIR="/tmp"
PORTAGE_TMPFS="/dev/shm"

Nimm die beiden mal testweise raus.
PORTAGE_TMPFS find ich gar nicht dokumentiert.
Wg. PORTAGE_TMPDIR als tmpfs schau dann mal hier, scheint etwas mehr nötig zu sein:
https://wiki.gentoo.org/wiki/Portage_TMPDIR_on_tmpfs

Quote:
JAAAA :D

Code:
>>> Source compiled.


Schönen Dank, also zur Not mache ich die ebuild-Schritte manuell,
aber es gibt sicher einen eleganteren Weg, oder?

Wenn du es auch noch gleich installieren willst, mach weiter:
Code:
# ebuild /usr/portage/portage/dev-lang/python/python-3.7.6.ebuild install
# ebuild /usr/portage/portage/dev-lang/python/python-3.7.6.ebuild qmerge

Danach noch /usr/lib/python3.7/gettext.py Und die Änderung (import struct in Zeile 53) wieder rückgängig machen.
Funktionieren sollte es zawr, aber scheinbar kann die Performance leiden (siehe gettext.py Zeile 342)

Die eleganteste Lösung wäre, die Ursache für dein Problem zu finden.
Allerhöchstwahrscheinlich ist es irgendeine Schraube in deiner Systemkonfiguration, oder ein cornercase.
Am besten machst du einen gentoo bugreport auf. wahrscheinlich/hoffentlich kann da dann jemand genaueres sagen.
Back to top
View user's profile Send private message
mike155
Advocate
Advocate


Joined: 17 Sep 2010
Posts: 4438
Location: Frankfurt, Germany

PostPosted: Sat Feb 29, 2020 3:31 pm    Post subject: Reply with quote

@Murmeltier, @franzf: mit der Analyse seid Ihr noch ein ganzes Stück weitergekommen! Prima! :)

Das Problem ist auf anderen Rechnern offenbar nicht reproduzierbar. Außerdem finden weder Google, noch der Gentoo Bugtracker Einträge zu dem Problem. Das sind Hinweise darauf, dass es sich um ein sehr spezielles Problem auf Murmeltiers Rechner handelt - und nicht um einen Bug in Gentoo, Python oder in einem anderen Paket.

Ich würde:
  1. die Portage Konfigurationsdateien (/var/lib/portage/world, /etc/portage/*) kräftig aufräumen: alles raus, was nicht unbedingt gebraucht wird und wieder möglichst nahe zu den Default-Werten

  2. alles rückgängig machen, was von Hand am System geändert wurde und was vom Default-Zustand abweicht oder abweichen könnte: beispielsweise von Hand (ohne emerge) installierte Software usw.

  3. ein "emerge -e @world" gefolgt von einem "emerge --depclean" laufen lassen.
Back to top
View user's profile Send private message
Murmeltier
n00b
n00b


Joined: 14 May 2008
Posts: 66

PostPosted: Sun Mar 01, 2020 9:11 am    Post subject: Reply with quote

mike155 wrote:
@Murmeltier, @franzf: mit der Analyse seid Ihr noch ein ganzes Stück weitergekommen! Prima! :)

Das Problem ist auf anderen Rechnern offenbar nicht reproduzierbar. Außerdem finden weder Google, noch der Gentoo Bugtracker Einträge zu dem Problem. Das sind Hinweise darauf, dass es sich um ein sehr spezielles Problem auf Murmeltiers Rechner handelt - und nicht um einen Bug in Gentoo, Python oder in einem anderen Paket.

Ich würde:
  1. die Portage Konfigurationsdateien (/var/lib/portage/world, /etc/portage/*) kräftig aufräumen: alles raus, was nicht unbedingt gebraucht wird und wieder möglichst nahe zu den Default-Werten

  2. alles rückgängig machen, was von Hand am System geändert wurde und was vom Default-Zustand abweicht oder abweichen könnte: beispielsweise von Hand (ohne emerge) installierte Software usw.

  3. ein "emerge -e @world" gefolgt von einem "emerge --depclean" laufen lassen.


Das will ich noch kurz kommentieren.
- im World file sind nur Dinge, die ich per emerge explizit haben wollte, fast alles stable-Pakete.
- die package.* Dateien sind ebenso gepflegt, entweder sind USE-Flags von emerge angefordert worden oder ich wollte gewisse Funktionen haben
- Nichts ist von Hand geändert, nichts ist an portage "vorbei" installiert
- emerge -e @world ist leider keine Option, das würde ewig dauern.

Ich denke auch, es ist nicht EINE Ursache, sondern ein Zusammentreffen mehrerer Dinge.
Dass es niemand sonst bemerkt hat, mag auch daran liegen, dass kaum jemand noch x86-Pakete compiliert.
Und die Architektur alleine dürfte auch nicht die Ursache sein.

Aber es gibt den Workaround mit Lib/gettext.py
Danke an alle, die hier geholfen haben.
Back to top
View user's profile Send private message
Murmeltier
n00b
n00b


Joined: 14 May 2008
Posts: 66

PostPosted: Wed Apr 29, 2020 3:30 pm    Post subject: Reply with quote

Hallo zusammen,

ich komme nochmal mit dem Problem, dass sich python > 3.7.5 auf einem 32-bit System (nur da!) nicht kompilieren lässt.
Damals konnte ich den Workaround anwenden und in Lib/gettext.py ein "import struct" einbauen, wodurch es dann ging.

Bei Python 3.8 ist es noch schlimmer geworden, da hilft dieser Trick auch nicht mehr.

Output vom ersten Versuch:
Code:

LD_LIBRARY_PATH=/tmp/portage/dev-lang/python-3.8.2-r1/work/Python-3.8.2 CC='i686-pc-linux-gnu-gcc -pthread' LDSHARED='i686-pc-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,--as-needed -L.   ' CFLAGS='-Wno-unused-result -Wsign-compare -DNDEBUG  -O2 -march=pentium4 -mmmx -msse -msse2 -pipe -fwrapv  '    _TCLTK_INCLUDES='' _TCLTK_LIBS=''    ./python -E ./setup.py  build
running build
running build_ext
Traceback (most recent call last):
  File "./setup.py", line 2445, in <module>
    main()
  File "./setup.py", line 2414, in main
    setup(# PyPI Metadata (PEP 301)
  File "/tmp/portage/dev-lang/python-3.8.2-r1/work/Python-3.8.2/Lib/distutils/core.py", line 148, in setup
    dist.run_commands()
  File "/tmp/portage/dev-lang/python-3.8.2-r1/work/Python-3.8.2/Lib/distutils/dist.py", line 966, in run_commands
    self.run_command(cmd)
  File "/tmp/portage/dev-lang/python-3.8.2-r1/work/Python-3.8.2/Lib/distutils/dist.py", line 985, in run_command
    cmd_obj.run()
  File "/tmp/portage/dev-lang/python-3.8.2-r1/work/Python-3.8.2/Lib/distutils/command/build.py", line 135, in run
    self.run_command(cmd_name)
  File "/tmp/portage/dev-lang/python-3.8.2-r1/work/Python-3.8.2/Lib/distutils/cmd.py", line 313, in run_command
    self.distribution.run_command(command)
  File "/tmp/portage/dev-lang/python-3.8.2-r1/work/Python-3.8.2/Lib/distutils/dist.py", line 985, in run_command
    cmd_obj.run()
  File "/tmp/portage/dev-lang/python-3.8.2-r1/work/Python-3.8.2/Lib/distutils/command/build_ext.py", line 340, in run
    self.build_extensions()
  File "./setup.py", line 331, in build_extensions
    self.detect_modules()
  File "./setup.py", line 1701, in detect_modules
    self.configure_compiler()
  File "./setup.py", line 673, in configure_compiler
    self.add_ldflags_cppflags()
  File "./setup.py", line 655, in add_ldflags_cppflags
    parser = argparse.ArgumentParser()
  File "/tmp/portage/dev-lang/python-3.8.2-r1/work/Python-3.8.2/Lib/argparse.py", line 1671, in __init__
    self._positionals = add_group(_('positional arguments'))
  File "/tmp/portage/dev-lang/python-3.8.2-r1/work/Python-3.8.2/Lib/gettext.py", line 736, in gettext
    return dgettext(_current_domain, message)
  File "/tmp/portage/dev-lang/python-3.8.2-r1/work/Python-3.8.2/Lib/gettext.py", line 662, in dgettext
    t = translation(domain, _localedirs.get(domain, None))
  File "/tmp/portage/dev-lang/python-3.8.2-r1/work/Python-3.8.2/Lib/gettext.py", line 598, in translation
    t = _translations.setdefault(key, class_(fp))
  File "/tmp/portage/dev-lang/python-3.8.2-r1/work/Python-3.8.2/Lib/gettext.py", line 261, in __init__
    self._parse(fp)
  File "/tmp/portage/dev-lang/python-3.8.2-r1/work/Python-3.8.2/Lib/gettext.py", line 376, in _parse
    from struct import unpack
  File "/tmp/portage/dev-lang/python-3.8.2-r1/work/Python-3.8.2/Lib/struct.py", line 13, in <module>
    from _struct import *
ModuleNotFoundError: No module named '_struct'
make: *** [Makefile:613: sharedmods] Error 1
 * ERROR: dev-lang/python-3.8.2-r1::gentoo failed (compile phase):
 *   emake failed


Nach Einbau von "import struct" kommt dieses:

Code:
LD_LIBRARY_PATH=/tmp/portage/dev-lang/python-3.8.2-r1/work/Python-3.8.2 CC='i686-pc-linux-gnu-gcc -pthread' LDSHARED='i686-pc-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,--as-needed -L.   ' CFLAGS='-Wno-unused-result -Wsign-compare -DNDEBUG  -O2 -march=pentium4 -mmmx -msse -msse2 -pipe -fwrapv  '    _TCLTK_INCLUDES='' _TCLTK_LIBS=''    ./python -E ./setup.py  build
Traceback (most recent call last):
  File "./setup.py", line 3, in <module>
    import argparse
  File "/tmp/portage/dev-lang/python-3.8.2-r1/work/Python-3.8.2/Lib/argparse.py", line 92, in <module>
    from gettext import gettext as _, ngettext
  File "/tmp/portage/dev-lang/python-3.8.2-r1/work/Python-3.8.2/Lib/gettext.py", line 53, in <module>
    import struct
  File "/tmp/portage/dev-lang/python-3.8.2-r1/work/Python-3.8.2/Lib/struct.py", line 13, in <module>
    from _struct import *
ModuleNotFoundError: No module named '_struct'
make: *** [Makefile:613: sharedmods] Error 1
 * ERROR: dev-lang/python-3.8.2-r1::gentoo failed (compile phase):
 *   emake failed


Etwas kürzer, aber dafür erfolglos.
In diversen Suchmaschinen ist nichts erhellendes zu finden.
Bin immer noch für Lösungsvorschläge dankbar, bin damit momentan überfordert.

Grüsse
Back to top
View user's profile Send private message
Murmeltier
n00b
n00b


Joined: 14 May 2008
Posts: 66

PostPosted: Thu Aug 20, 2020 2:03 pm    Post subject: Gelöst: Compiler Error bei dev-lang/python-3.7.x... Reply with quote

Hallo zusammen,

das Problem wurde heute in Gentoo Bugzilla gelöst, wenn es jemanden noch interessiert:

In "/usr/share/locale/de/LC_MESSAGES" existierte ein verwaistes, 11 Jahre altes File "messages.mo".
Nachdem dieses keinem Paket mehr angehörte, habe ich es gelöscht.
Seitdem lässt sich python wieder compilieren!
Vermutlich ein Relikt eines nicht ganz sauber entfernten Paketes, mit grosser Auswirkung.
Back to top
View user's profile Send private message
mike155
Advocate
Advocate


Joined: 17 Sep 2010
Posts: 4438
Location: Frankfurt, Germany

PostPosted: Thu Aug 20, 2020 4:19 pm    Post subject: Reply with quote

Quote:
Vermutlich ein Relikt eines nicht ganz sauber entfernten Paketes, mit grosser Auswirkung.

Danke für die Rückmeldung!

Fehler durch Dateien, die nicht in die System-Verzeichnisse gehören, sind außerordentlich schwierig zu analysieren und zu fixen.

Ich achte deshalb sehr darauf, dass nur Portage in die System-Verzeichnisse schreibt. Ab und zu prüfe ich auch, ob in den System-Verzeichnissen Dateien stehen, die nicht über emerge/portage geschrieben wurden. Wenn ich welche finde, lösche ich sie - versuche aber vorher noch herauszufinden, wie sie eigentlich dorthin gelangt sind.
Back to top
View user's profile Send private message
Josef.95
Advocate
Advocate


Joined: 03 Sep 2007
Posts: 4669
Location: Germany

PostPosted: Thu Aug 20, 2020 6:21 pm    Post subject: Reply with quote

Huh ja, guter Fund :)
Und ja, danke für die Rückmeldung. Mich interessiert bei solchen Fehlern auch meist *wie* man drauf kam, drum suchte ich mir den Bugreport raus, und schaute mir das Debugging an -- sehr interessant.
Fein das ihr das (~11 Jahre) alte System habt retten können -- respekt :)
Back to top
View user's profile Send private message
Murmeltier
n00b
n00b


Joined: 14 May 2008
Posts: 66

PostPosted: Thu Aug 20, 2020 8:17 pm    Post subject: Reply with quote

Josef.95 wrote:
Huh ja, guter Fund :)
Und ja, danke für die Rückmeldung. Mich interessiert bei solchen Fehlern auch meist *wie* man drauf kam, drum suchte ich mir den Bugreport raus, und schaute mir das Debugging an -- sehr interessant.
Fein das ihr das (~11 Jahre) alte System habt retten können -- respekt :)


Ja, und mike155 hat auch Recht, ich vermute dass irgendwas mit dem Datum der Datei passiert ist (oder der Grösse)
und dann hat portage beim unmerge die nicht mehr sauber abräumen können.
Nur 11 Jahre später hat's dann bei python geknallt. :wink:
Da muss man erstmal drauf kommen...
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum