Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 646880 - sys-process/htop-2.1.0 - UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 457: ordinal not in range(128)
Summary: sys-process/htop-2.1.0 - UnicodeDecodeError: 'ascii' codec can't decode byte ...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Christian Ruppert (idl0r)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-02-07 08:18 UTC by Juergen Rose
Modified: 2018-03-01 10:01 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (build.log,7.36 KB, text/x-log)
2018-02-07 08:18 UTC, Juergen Rose
Details
htop-2.1.0.ebuild python2 dependency (htop-2.1.0.ebuild-add-python2-dep.patch,1.00 KB, patch)
2018-02-07 15:53 UTC, Andrey Volkov
Details | Diff
python3 support (htop-2.1.0-MakeHeader-python3.patch,767 bytes, patch)
2018-02-07 20:48 UTC, Andrey Volkov
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Juergen Rose 2018-02-07 08:18:10 UTC
Created attachment 518338 [details]
build.log

'MAKEOPTS=-j1 emerge -v1 htop' fails with:
...
make -j1 
./scripts/MakeHeader.py CategoriesPanel.c
./scripts/MakeHeader.py MainPanel.c
./scripts/MakeHeader.py DisplayOptionsPanel.c
./scripts/MakeHeader.py Header.c
./scripts/MakeHeader.py htop.c
./scripts/MakeHeader.py Meter.c
Traceback (most recent call last):
  File "./scripts/MakeHeader.py", line 32, in <module>
    for line in file.readlines():
  File "/usr/lib/python-exec/python3.4/../../../lib64/python3.4/encodings/ascii.py", line 26, in decode
    return codecs.ascii_decode(input, self.errors)[0]
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 457: ordinal not in range(128)
make: *** [Makefile:2391: Meter.h] Error 1




root@lynxold:/usr/src(22)# emerge --info '=sys-process/htop-2.1.0::gentoo'
Portage 2.3.24 (python 3.5.4-final-0, default/linux/amd64/17.0/desktop, gcc-7.3.0, glibc-2.26-r5, 4.15.0-gentoo x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-4.15.0-gentoo-x86_64-Intel-R-_Core-TM-_i7-3630QM_CPU_@_2.40GHz-with-gentoo-2.4.1
KiB Mem:    16098196 total,   1376064 free
KiB Swap:   50331644 total,  50331644 free
Timestamp of repository gentoo: Wed, 07 Feb 2018 06:30:01 +0000
Head commit of repository gentoo: 513fac71d2377637484ce4f7fcd565b3b51284b1
sh bash 4.4_p18
ld GNU ld (Gentoo 2.29.1 p3) 2.29.1
distcc[11627] (dcc_trace_version) distcc 3.2rc1 x86_64-pc-linux-gnu; built Jan  5 2018 08:52:50 [disabled]
app-shells/bash:          4.4_p18::gentoo
dev-java/java-config:     2.2.0-r3::gentoo
dev-lang/perl:            5.26.1-r1::gentoo
dev-lang/python:          2.7.14-r101::sage-on-gentoo, 3.4.6-r1::gentoo, 3.5.4-r1::gentoo, 3.6.4::gentoo
dev-util/cmake:           3.10.2::gentoo
dev-util/pkgconfig:       0.29.2::gentoo
sys-apps/baselayout:      2.4.1-r2::gentoo
sys-apps/sandbox:         2.12::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69-r4::gentoo
sys-devel/automake:       1.9.6-r4::gentoo, 1.11.6-r2::gentoo, 1.15.1-r1::gentoo
sys-devel/binutils:       2.29.1-r1::gentoo, 2.30::gentoo
sys-devel/gcc:            7.3.0::gentoo
sys-devel/gcc-config:     1.9.1::gentoo
sys-devel/libtool:        2.4.6-r4::gentoo
sys-devel/make:           4.2.1-r1::gentoo
sys-kernel/linux-headers: 4.15::gentoo (virtual/os-headers)
sys-libs/glibc:           2.26-r5::gentoo
Repositories:

gentoo
    location: /usr/portage_lynx
    sync-type: rsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: -1000
    sync-rsync-verify-metamanifest: yes
    sync-rsync-extra-opts: 

imaging
    location: /var/lib/layman/imaging
    masters: gentoo
    priority: 0

local
    location: /usr/local/portage
    masters: gentoo
    priority: 1

g-cpan
    location: /var/lib/cpan
    masters: gentoo
    priority: 2

g-octave
    location: /var/lib/g-octave
    masters: gentoo
    priority: 3

ago
    location: /var/lib/layman/ago
    masters: gentoo
    priority: 50

sage-on-gentoo
    location: /var/lib/layman/sage-on-gentoo
    masters: gentoo science
    priority: 50

science
    location: /var/lib/layman/science
    masters: gentoo
    priority: 50

tlp
    location: /var/lib/layman/tlp
    masters: gentoo
    priority: 50

x11
    location: /var/lib/layman/x11
    masters: gentoo
    priority: 50

Installed sets: @system
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA PUEL Intel-SDP dlj-1.1 skype-eula skype-4.0.0.7-copyright googleearth AdobeFlash-11.x cadsoft Oracle-BCLA-JavaSE MakeMKV-EULA NVIDIA-CUDA Nero-AAC-EULA GIMPS"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /etc/stunnel/stunnel.conf /usr/lib64/libreoffice/program/sofficerc /usr/share/config /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/chromium/policies/managed/chrome-gnome-shell.json /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/opt/chrome/policies/managed/chrome-gnome-shell.json /etc/php/apache2-php7.1/ext-active/ /etc/php/apache2-php7.2/ext-active/ /etc/php/cgi-php7.1/ext-active/ /etc/php/cgi-php7.2/ext-active/ /etc/php/cli-php7.1/ext-active/ /etc/php/cli-php7.2/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=native -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs clean-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync multilib-strict news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-march=native -O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="en_US.UTF-8"
LC_ALL="C"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="de en fr ru"
MAKEOPTS="-j9"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
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="/var/tmp"
USE="64bit R X Xaw3d a52 aac acl acpi admin afs alsa amd64 amr ao apache2 apng applet archive armadillo arpack asf aspell assistant atlas audiofile aufs automap automount barcode bash-completion berkdb blas blast bluetooth bluray boost branding btrfs bzip2 cairo cdda cddb cdf cdio cdparanoia cdr cg cgi chm cilk clang cli cmake collada consolekit contrib crypt css cups curl cxx daap db dbi dbm dbus declarative designer devhelp device-mapper dga dia digitalradio djvu doc dot dri ds2490 ds9097 ds9097u dts dv dvb dvd dvdr dvi dynamicplugin eds egl elf emacs emboss emf encode epiphany evdev evo examples excel exif expat extensions extra extras faac faad fam ffmpeg fftw firefox fits flac fltk fontconfig foomaticdb fortran fortran95 fpm fpx ftp fuse gcj gd gdal gdbm gedit geoip geolocation geos gfortran gif gimp git glade glamor glib glpk gml gmp gnome gnome-keyring gnuplot gnutls gold gphoto2 gpm grammar graphics graphtft graphviz grass gsl gsm gstreamer gtk gtk3 gudev guile hdaps hddtemp hdf hdf5 hdri html http httpd hvm hwdb iconv icq icu id3tag ide imagemagick imap inotify introspection ipod ipv6 irda ithreads jadetex java jbig jit john jpeg jpeg2k kate kde kdepim kdrive kerberos keymap kpathsea kvm ladspa lame lapack latex lcms ldap lensfun libffi libgda libkms libnotify libsamplerate lirc live lm_sensors lua lzma lzo mad mail maildir mapnik math matroska media-library mercurial mikmod mkl mng mod modules mono motif mozilla mp3 mp4 mpeg mpi mpi-threads mplayer mtp multilib multimedia musepack musicbrainz mysql mysqli nautilus ncurses neXt netcdf netpbm network networking nfs nls nntp nptl nsplugin ntfs ntp numpy obex objc ocaml ocr octave odbc ofa ogdi ogg opencl opencv openexr opengl openmp openvg pam pango pcre pda pdf pdl2 perl plasma plotutils plugins png podcast policykit portaudio posix postgres postscript ppds ppp preview-latex proj projectm pstricks pulseaudio python q16 q32 qemu qhull qml qt3support qt5 quicktime raw readline reiserfs reports rle romio rpc rrdcgi rrdtool rtlsdr sage samba sasl schroedinger science sdk sdl seccomp secure-delete semantic-desktop server session shout sip slang slp smart smbclient smp sms sndfile snmp soap sockets sound soup sox speex spell sql sqlite ssl startup-notification stlport subtitles subversion sudo suexec svg svm swig systemd szip t1lib tbb tcl tcpd tex tex4ht theora thesaurus thinkpad threads thunderbird tidy tiff tk tools truetype udev udisks unicode upower usb utempter v4l v4l2 vaapi vala valgrind vdpau video vim-syntax virt-network virtualbox visio vorbis vpx vtk wav wayland webdav webdav-serf webkit wifi wmf wxwidgets x264 xa xattr xcb xen xetex xft xine xml xmlreader xmlrpc xpm xv xvid xvmc yaml youtube zlib zsh-completion zvbi" ABI_X86="64" ALSA_CARDS="intel8x0" APACHE2_MODULES="actions alias auth_basic auth_digest authn_anon authn_dbd authn_core authn_dbm authn_default authn_file authz_core authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgid dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info lbmethod_byrequests log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif slotmem_shm so socache_shmcb speling status unique_id unixd userdir usertrack vhost_alias" APACHE2_MPMS="worker" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="canon fuji ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog sensors thermal" CPU_FLAGS_X86="aes avx mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" CURL_SSL="nss" ELIBC="glibc" GPSD_PROTOCOLS="aivdm ashtech earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 navcom ntrip oceanserver oncore rtcm104v2 rtcm104v3 sirf superstar2 tnt tripmate tsip ublox nmea0183 nmea2000 passthrough" GRUB_PLATFORMS="emu efi-64 pc xen" INPUT_DEVICES="keyboard mouse evdev synaptics void" KERNEL="linux" L10N="de en fr ru" LCD_DEVICES="cfontz hd44780 mtxorb ncurses X lcd2usb lcdlinux png usblcd SureElec" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LIRC_DEVICES="devinput" NETBEANS_MODULES="apisupport cnd dlight enterprise ergonomics groovy gsf harness ide identity j2ee java mobility nb php profiler websvccommon xml" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6 php7-0" POSTGRES_TARGETS="postgres9_5" PYTHON_SINGLE_TARGET="python3_5" PYTHON_TARGETS="python2_7 python3_5" QEMU_SOFTMMU_TARGETS="arm i386 x86_64" QEMU_USER_TARGETS="arm i386 x86_64" RUBY_TARGETS="ruby22 ruby23" USERLAND="GNU" VIDEO_CARDS="nouveau intel i965 displaylink" 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, EMERGE_DEFAULT_OPTS, INSTALL_MASK, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS





root@lynxold:/usr/src(23)# emerge -pqv '=sys-process/htop-2.1.0::gentoo'
[ebuild     U ] sys-process/htop-2.1.0 [2.0.2] USE="unicode -openvz -vserver"
Comment 1 Lars Wendler (Polynomial-C) (RETIRED) gentoo-dev 2018-02-07 10:21:43 UTC
This is interesting...

The error comes from some python3.4 module but you have 

PYTHON_SINGLE_TARGET="python3_5" 
PYTHON_TARGETS="python2_7 python3_5"

set.

Please post the output of

  eselect python show
Comment 2 Juergen Rose 2018-02-07 10:36:37 UTC
root@lynxold:/usr/share/applications/RootRlogin/TECNETAIR(28)# eselect python show
python3.4
root@lynxold:/usr/share/applications/RootRlogin/TECNETAIR(29)# eselect python list
Available Python interpreters, in order of preference:
  [1]   python3.4
  [2]   python3.6 (fallback)
  [3]   python3.5 (fallback)
  [4]   python2.7 (fallback)
  [5]   pypy (fallback)
Comment 3 Juergen Rose 2018-02-07 10:46:27 UTC
I have not any idea wherefrom comes 
PYTHON_SINGLE_TARGET="python3_5" .
Comment 4 Juergen Rose 2018-02-07 10:56:13 UTC
If I grep for PYTHON in /etc/make.conf and for single_target_python3_5 in /etc/portage/package.use, I get:

root@lynxold:/root(40)# grep PYTHON  /etc/make.conf
root@lynxold:/root(41)# grep single_target_python3_5  /etc/portage/package.use/monolithic
app-misc/gramps -python_single_target_python3_4 python_single_target_python3_5 -python_targets_python3_4 python_targets_python3_5
app-misc/lirc python_single_target_python3_5 python_targets_python3_5 -python_single_target_python3_4 -python_targets_python3_4
Comment 5 Marco Genasci 2018-02-07 15:08:45 UTC
(In reply to Juergen Rose from comment #3)
> I have not any idea wherefrom comes 
> PYTHON_SINGLE_TARGET="python3_5" .

If not setted in make.conf this is provided by profile (/usr/portage/profiles/base/make.defaults).
Comment 6 Andrey Volkov 2018-02-07 15:53:42 UTC
Created attachment 518366 [details, diff]
htop-2.1.0.ebuild python2 dependency

Add python2 build dependency to htop-2.1.0.ebuild
Comment 7 Lars Wendler (Polynomial-C) (RETIRED) gentoo-dev 2018-02-07 16:00:30 UTC
(In reply to Andrey Volkov from comment #6)
> Created attachment 518366 [details, diff] [details, diff]
> htop-2.1.0.ebuild python2 dependency
> 
> Add python2 build dependency to htop-2.1.0.ebuild

Does it really only work with python2?
Comment 8 Derk W te Bokkel 2018-02-07 16:07:23 UTC
Had the same problem.. on one machine but not another .. machine with the problem was missing /etc/env.d/02locale 

also had eselect python only showing   python3_6

PYTHON_TARGETS="python2_7 python3_6"
PYTHON_SINGLE_TARGET="python3_6"

I tried a couple of things .. it may be inconsistent environment locale info re: encoding used  so check-> eselect locale list
and set it if needed

also I recompiled all pythons, and asciidoc 

then as root ran emerge -1v htop and all was well .. 

there were a couple of reboots in there as well as I was having some clock issues unrelated ..
Comment 9 Derk W te Bokkel 2018-02-07 16:55:28 UTC
slightly misleading statement .. python2_7 was listed as (fallback)
Comment 10 Andrey Volkov 2018-02-07 20:48:44 UTC
Created attachment 518508 [details, diff]
python3 support

This patch make MakeHeader.py to ignore unicode characters since .h files is acsii-encoded
It is python{2,3} compatible

PYTHON_COMPAT=( python{2_7,3_{4,5,6}} )
Comment 11 Larry the Git Cow gentoo-dev 2018-03-01 09:50:20 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8a2abcdad0d08cc33200186bec556de59e1a2973

commit 8a2abcdad0d08cc33200186bec556de59e1a2973
Author:     Lars Wendler <polynomial-c@gentoo.org>
AuthorDate: 2018-03-01 09:50:00 +0000
Commit:     Lars Wendler <polynomial-c@gentoo.org>
CommitDate: 2018-03-01 09:50:14 +0000

    sys-process/htop: Revbump to fix build with non-utf8 and python3.
    
    Also added several upstream fixes.
    
    Closes: https://bugs.gentoo.org/646880
    Package-Manager: Portage-2.3.24, Repoman-2.3.6

 .../htop/files/htop-2.1.0-MakeHeader-python3.patch | 29 ++++++++
 sys-process/htop/files/htop-2.1.0-bashisms.patch   | 37 +++++++++
 .../htop/files/htop-2.1.0-clear_on_sigwinch.patch  | 21 ++++++
 .../htop/files/htop-2.1.0-color_issues.patch       | 87 ++++++++++++++++++++++
 .../htop/files/htop-2.1.0-header_updates.patch     | 42 +++++++++++
 sys-process/htop/files/htop-2.1.0-ldflags.patch    | 21 ++++++
 .../htop/files/htop-2.1.0-ncurses_cflags.patch     | 46 ++++++++++++
 sys-process/htop/htop-2.1.0-r1.ebuild              | 75 +++++++++++++++++++
 8 files changed, 358 insertions(+)