Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 611678 - multilib: sys-apps/hwloc-1.11.2[cuda]: nvidia-cuda-toolkit-9.0.176 does not install 32-bit libraries
Summary: multilib: sys-apps/hwloc-1.11.2[cuda]: nvidia-cuda-toolkit-9.0.176 does not i...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Gentoo Science Related Packages
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-03-04 02:15 UTC by Oleg Korsak
Modified: 2018-03-26 16:55 UTC (History)
4 users (show)

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


Attachments
config.log (config.log,277.16 KB, text/x-log)
2017-03-04 02:15 UTC, Oleg Korsak
Details
build.log (build.log,15.43 KB, text/x-log)
2017-03-04 02:16 UTC, Oleg Korsak
Details
patched ebuild (hwloc-1.11.7-r1.ebuild,2.17 KB, text/plain)
2017-12-07 19:17 UTC, blopsalot
Details
working ebuild (hwloc-1.11.7-r1.ebuild,2.18 KB, text/plain)
2017-12-09 01:23 UTC, blopsalot
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Oleg Korsak 2017-03-04 02:15:46 UTC
Created attachment 465904 [details]
config.log

Portage 2.3.4 (python 2.7.13-final-0, default/linux/amd64/13.0/desktop/plasma, gcc-6.3.0, glibc-2.24-r1, 4.9.9-gentoo x86_64)
=================================================================
System uname: Linux-4.9.9-gentoo-x86_64-Intel-R-_Core-TM-_i7-4710HQ_CPU_@_2.50GHz-with-gentoo-2.3
KiB Mem:    16331064 total,  12214432 free
KiB Swap:          0 total,         0 free
Timestamp of repository gentoo: Sat, 04 Mar 2017 00:30:01 +0000
sh bash 4.4_p12
ld GNU ld (Gentoo 2.27 p1.0) 2.27
app-shells/bash:          4.4_p12::gentoo
dev-java/java-config:     2.2.0-r3::gentoo
dev-lang/perl:            5.24.1-r1::gentoo
dev-lang/python:          2.7.13::gentoo, 3.5.3::gentoo, 3.6.0::gentoo
dev-util/cmake:           3.7.2::gentoo
dev-util/pkgconfig:       0.29.1::gentoo
sys-apps/baselayout:      2.3::gentoo
sys-apps/openrc:          0.23.2::gentoo
sys-apps/sandbox:         2.10-r3::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69-r2::gentoo
sys-devel/automake:       1.11.6-r2::gentoo, 1.13.4-r1::gentoo, 1.15-r2::gentoo
sys-devel/binutils:       2.27::gentoo
sys-devel/gcc:            6.3.0::gentoo
sys-devel/gcc-config:     1.8-r1::gentoo
sys-devel/libtool:        2.4.6-r3::gentoo
sys-devel/make:           4.2.1::gentoo
sys-kernel/linux-headers: 4.10::gentoo (virtual/os-headers)
sys-libs/glibc:           2.24-r1::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: rsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: -1000

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

steam-overlay
    location: /var/lib/layman/steam-overlay
    masters: gentoo
    priority: 50

ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe -march=native -mtune=native"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/config /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 -pipe -march=native -mtune=native"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="lv_LV.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
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="7zip X a52 aac acl acpi alsa amd64 ao audiofile avx avx2 berkdb bluetooth branding bzip2 cairo cdda cdr clang cli consolekit cracklib crypt cuda cups curl cxx dbus declarative dhcpcd dri dts dvd dvdr emboss encode exif extraengine fam fat fbcon ffmpeg firefox flac gd gdbm gif gimp git glamor glut gmp gnuplot gnutls gpg gpm gsl gtk gtk3 gudev gzip hddtemp iconv icu ieee1394 inotify ipv6 javascript jemalloc jpeg jpeg2k kde kipi kwallet lame lcms legacy-systray libnotify lm_sensors lzma lzo mad matroska mdnsresponder-compat memlimit mhash mime minizip mmap mmx mng modules mozilla mp3 mp4 mpeg mpi mplayer mtp multilib multitarget ncurses networkmanager nls nocd nptl nsplugin ntfs ogg openal opencl opengl openmp oss pam pango pch pcntl pcre pdf pie plasma plotutils png policykit portaudio posix postgres ppds profile pulseaudio python qml qt3support qt5 quicktime raw rdesktop readline recode resolvconf sasl sdl sdl2 seccomp session sharedmem slang smp sockets sound spell sqlite sqlite3 sse sse2 sse3 sse4_1 sse4_2 ssl ssse3 startup-notification steamruntime suid svg symlink syslog sysvipc szip tcmalloc tcpd theora threads tiff truetype udev udisks unicode upower usb v4l vaapi vdpau vhosts videos vnc vorbis vulkan wavpack wayland webkit widgets wifi wxwidgets x264 xattr xcb xcomposite xinerama xml xmp xmpp xosd xpm xscreensaver xsl xv xvid zeroconf zlib" ABI_X86="64 32" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci 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="kexi words flow plan sheets stage tables krita karbon braindump author" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 fma3 mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="efi-64 pc" INPUT_DEVICES="evdev synaptics libinput" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="ru en" LLVM_TARGETS="AMDGPU BPF NVPTX ARM X86 AArch64 Hexagon MSP430 Mips PowerPC Sparc SystemZ XCore" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-7" PYTHON_SINGLE_TARGET="python3_5" PYTHON_TARGETS="python2_7 python3_5 python3_6" RUBY_TARGETS="ruby24" USERLAND="GNU" VIDEO_CARDS="intel i965 nvidia" 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"
USE_PYTHON="3.5 2.7"
Unset:  CC, CPPFLAGS, CTARGET, CXX, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Oleg Korsak 2017-03-04 02:15:58 UTC
$ emerge -pv nvidia-cuda-toolkit

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R    ] dev-util/nvidia-cuda-toolkit-8.0.61:0/8.0.61::gentoo  USE="-debugger -doc -eclipse -profiler" 0 KiB
Comment 2 Oleg Korsak 2017-03-04 02:16:37 UTC
Created attachment 465906 [details]
build.log
Comment 3 Gary HUnt 2017-04-08 19:45:29 UTC
It has something to do with multi-ilib support

I had no trouble compiling 1.10.xxxx 

but any 1.11.xxx failed as you mentioned.. where multi-lib support was added.


Change your ABI_X86 from 

ABI_X86="64 32"


to

ABI_X86="amd64 32"


Does it compile now?
Comment 4 Justin Bronder (RETIRED) gentoo-dev 2017-05-10 23:06:01 UTC
There's some cryptic comment in the ebuild:

# dev-util/nvidia-cuda-toolkit is always multilib

It's pretty clear which team added that and probably didn't build with cuda enabled.  Anyways, I don't have the hardware, but if one of you can contact me via email/irc, I'd be happy to work with you to get this fixed.
Comment 5 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2017-05-11 07:22:43 UTC
(In reply to Justin Bronder from comment #4)
> It's pretty clear which team added that and probably didn't build with cuda
> enabled.  Anyways, I don't have the hardware, but if one of you can contact
> me via email/irc, I'd be happy to work with you to get this fixed.

It's pretty clear you like to throw blame without actually checking it.

+*hwloc-1.10.1 (20 Feb 2015)
+
+  20 Feb 2015; Christoph Junghans <ottxor@gentoo.org> +hwloc-1.10.1.ebuild:
+  version bump (bug #538760) and multilib support (bug #540036)

Not us.
Comment 6 Justin Bronder (RETIRED) gentoo-dev 2017-05-11 10:34:13 UTC
(In reply to Michał Górny from comment #5)
> (In reply to Justin Bronder from comment #4)
> > It's pretty clear which team added that and probably didn't build with cuda
> > enabled.  Anyways, I don't have the hardware, but if one of you can contact
> > me via email/irc, I'd be happy to work with you to get this fixed.
> 
> It's pretty clear you like to throw blame without actually checking it.
> 
> +*hwloc-1.10.1 (20 Feb 2015)
> +
> +  20 Feb 2015; Christoph Junghans <ottxor@gentoo.org> +hwloc-1.10.1.ebuild:
> +  version bump (bug #538760) and multilib support (bug #540036)
> 
> Not us.

https://bugs.gentoo.org/show_bug.cgi?id=540036#c1
https://bugs.gentoo.org/show_bug.cgi?id=540036#c16
Comment 7 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2017-05-11 10:45:27 UTC
(In reply to Justin Bronder from comment #6)
> > Not us.
> 
> https://bugs.gentoo.org/show_bug.cgi?id=540036#c1

https://bugs.gentoo.org/show_bug.cgi?id=540036#c2

> https://bugs.gentoo.org/show_bug.cgi?id=540036#c16

This is merely answering random ebuild question.
Comment 8 Oleg Korsak 2017-05-16 21:40:00 UTC
I'm a little bit confused now. Is there  any solution?
Same problem with sys-apps/hwloc-1.11.7
Comment 9 Oleg Korsak 2017-08-07 17:48:31 UTC
anyone?
Comment 10 Oleg Korsak 2017-09-10 23:59:19 UTC
(In reply to Gary HUnt from comment #3)
> It has something to do with multi-ilib support
> 
> I had no trouble compiling 1.10.xxxx 
> 
> but any 1.11.xxx failed as you mentioned.. where multi-lib support was added.
> 
> 
> Change your ABI_X86 from 
> 
> ABI_X86="64 32"
> 
> 
> to
> 
> ABI_X86="amd64 32"
> 
> 
> Does it compile now?

No
Comment 11 Oleh 2017-10-09 18:46:13 UTC
the ebuild has erratic configure options.
--enable-cuda is defined in config/hwloc.m4 but apaprently it is *not* sufficient for CUDA support. --enable-cuda expects hwloc_have_cudart=yes which is activated with -lcudart linking flag. passing -lcudart into ldflags will likely fix this problem, at least it does following to be enabled:
checking for cudaGetDeviceProperties in -lcudart... yes
in local test.
Comment 12 blopsalot 2017-12-07 17:45:53 UTC
I came across this one as well. It happens with all versions I've tried. I am unable to narrow it down, but I will add that when building from upstream, hwloc build does not find cuda headers or libraries on it's own. It will compile from upstream if I export CPPFLAGS=-I/opt/cuda/include && export LDFLAGS=-L/opt/cuda/lib64. So I'm pretty sure it's just not finding libraries for some reason.

This is on a fresh installation, I did not have this issue on a system that had been running for a while. No other program has problems finding CUDA when building.

Portage 2.3.16 (python 2.7.14-final-0, default/linux/amd64/13.0, gcc-5.4.0, glibc-2.26-r3, 4.14.3-ck x86_64)
=================================================================
System uname: Linux-4.14.3-ck-x86_64-Intel-R-_Xeon-R-_CPU_X5660_@_2.80GHz-with-gentoo-2.4.1
KiB Mem:    12304132 total,   9256504 free
KiB Swap:   12595196 total,  12595196 free
Timestamp of repository gentoo: Thu, 07 Dec 2017 07:05:01 +0000
Head commit of repository gentoo: dfa46930d0763c882135afc61ed97a0e49d84076

sh bash 4.4_p12
ld GNU ld (Gentoo 2.29.1 p3) 2.29.1
app-shells/bash:          4.4_p12::gentoo
dev-lang/perl:            5.26.1-r1::gentoo
dev-lang/python:          2.7.14-r1::gentoo, 3.5.4-r1::gentoo
dev-util/cmake:           3.10.0::gentoo
dev-util/pkgconfig:       0.29.2::gentoo
sys-apps/baselayout:      2.4.1-r2::gentoo
sys-apps/openrc:          0.34.11::gentoo
sys-apps/sandbox:         2.12::gentoo
sys-devel/autoconf:       2.69-r4::gentoo
sys-devel/automake:       1.15.1-r1::gentoo
sys-devel/binutils:       2.29.1-r1::gentoo
sys-devel/gcc:            5.4.0-r3::gentoo, 6.4.0::gentoo, 7.2.0::gentoo
sys-devel/gcc-config:     1.9.0-r1::gentoo
sys-devel/libtool:        2.4.6-r4::gentoo
sys-devel/make:           4.2.1-r1::gentoo
sys-kernel/linux-headers: 4.13::gentoo (virtual/os-headers)
sys-libs/glibc:           2.26-r3::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/gentoo.git
    priority: -1000

localrepo
    location: /usr/local/portage
    masters: gentoo

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

ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-I/opt/cuda/include"
CHOST="x86_64-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"
CPPFLAGS="-I/opt/cuda/include"
CXXFLAGS="-march=native -Ofast -pipe"
DISTDIR="/usr/distfiles"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync multilib-strict news parallel-fetch preserve-libs protect-owned sandbox sfperms sign strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://192.17.174.4/pub/gentoo  http://cosmos.illinois.edu/pub/gentoo/  http://mirror.leaseweb.com/gentoo/ http://mirrors.rit.edu/gentoo/"
LDFLAGS="-L/opt/cuda/lib64"
MAKEOPTS="-j6"
PKGDIR="/usr/portage/packages"
PORTAGE_COMPRESS="bzip2"
PORTAGE_COMPRESS_FLAGS="-9"
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="X acpi aes amd64 berkdb bzip2 clang cli cracklib crypt cuda cxx dri drm egl external-fuse gallium gbm gcj gdbm iconv llvm modules multilib ncurses nls nptl nptlonly nvidia opencl opengl openmp openssl pam pcre pulseaudio python readline seccomp session sqlite ssl tcpd threads unicode usb uvm vdpau xa xattr xvmc zlib" ABI_X86="32 64" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci 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="kexi words flow plan sheets stage tables krita karbon braindump author" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" CURL_SSL="openssl" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="libinput evdev keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en" LLVM_TARGETS="X86" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6 php7-0" POSTGRES_TARGETS="postgres9_5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_5" RUBY_TARGETS="ruby22" USERLAND="GNU" VIDEO_CARDS="nvidia" 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, CTARGET, CXX, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_RSYNC_EXTRA_OPTS
Comment 13 blopsalot 2017-12-07 18:35:24 UTC
changing "multilib_src_configure()" to just "src_configure()" allows it to build. So it does not know it's multilib.
Comment 14 blopsalot 2017-12-07 19:17:55 UTC
Created attachment 508752 [details]
patched ebuild

I attached an updated ebuild, not sure if it's proper Gentoo way to trigger it, but it works for me. I just changed "use_enable cuda" to "multilib_use_enable cuda"
Comment 15 blopsalot 2017-12-07 19:52:50 UTC
ok i think multilib_use_enable not even an option? and i just commented that line out basically? I still get "checking for cudaGetDeviceProperties in -lcudart... no" but it continues building with NVML support
Comment 16 blopsalot 2017-12-07 20:12:32 UTC
ok last one :) Changing multilib-minimal to multilib-build also allows it to build. I think minimal eclass is choking or missing something. Hopefully that's enough info to catch it, let me know if I can provide anything else.
Comment 17 blopsalot 2017-12-09 01:23:41 UTC
Created attachment 508986 [details]
working ebuild

I believe this is a simplest and a proper solution, if cuda is always multilib, why not just set "multilib_native_use_enable cuda"?
Comment 18 Oleg Korsak 2018-01-05 02:32:22 UTC
Guys, I'm unable to rebuild hwloc since march 2017. Is it possible to do something?
Comment 19 blopsalot 2018-01-05 04:11:37 UTC
did u try the ebuild i posted?

# 
mkdir -p /usr/local/portage/{metadata,profiles}
echo -e "masters = gentoo\nauto-sync = false\n" > /usr/local/portage/metadata/layout.conf
echo -e "[localrepo]\nlocation = /usr/local/portage\n" > /etc/portage/repos.conf/localrepo
mkdir -p /usr/local/portage/sys-apps/hwloc/files
wget https://raw.githubusercontent.com/blopsalot/blop-overlay/master/sys-apps/hwloc/hwloc-9999.ebuild -O /usr/local/portage/sys-apps/hwloc/hwloc-1.11.8.ebuild
wget https://raw.githubusercontent.com/gentoo/gentoo/master/sys-apps/hwloc/files/hwloc-1.8.1-gl.patch -O /usr/local/portage/sys-apps/hwloc/files/hwloc-gl.patch
chown -R portage:portage /usr/local/portage
cd /usr/local/portage/sys-apps/hwloc
repoman manifest
ebuild hwloc-1.11.8.ebuild merge
Comment 20 Justin Bronder (RETIRED) gentoo-dev 2018-01-05 17:33:20 UTC
I did some more digging.  The problem is that nvidia-cuda-toolkit (at least as of 9.0.176) isn't actually multilib.  #540036 seems to suggest that libcudart was multilib at some point, but it's not now.

Reassigning to the sci team (maintainer of nvidia-cuda-toolkit).
Comment 21 Justin Bronder (RETIRED) gentoo-dev 2018-01-05 17:33:59 UTC
I did some more digging.  The problem is that nvidia-cuda-toolkit (at least as of 9.0.176) isn't actually multilib.  #540036 seems to suggest that libcudart was multilib at some point, but it's not now.

Reassigning to the sci team (maintainer of nvidia-cuda-toolkit).
Comment 22 blopsalot 2018-01-05 18:16:07 UTC
NVIDIA deprecated 32bit x86 starting with CUDA 7. It is NOT deprecated on 32bit ARM.

https://devtalk.nvidia.com/default/topic/633730/unix-graphics-announcements-and-news/deprecation-plans-for-32-bit-linux-x86-cuda-toolkit-and-cuda-driver/
Comment 23 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2018-01-05 21:06:51 UTC
CUDA maintainers can't do anything about it. CUDA support just needs to be disabled for non-native ABI.
Comment 24 Justin Bronder (RETIRED) gentoo-dev 2018-01-08 15:41:09 UTC
(In reply to Michał Górny from comment #23)
> CUDA maintainers can't do anything about it. CUDA support just needs to be
> disabled for non-native ABI.

Are you suggesting that we detect abi_X86_32 and just drop the configure flag or that we create a blocker?  The feels like it's just kicking the can down the road and will make packages using hwloc run into this same issue.
Comment 25 Oleg Korsak 2018-01-08 23:56:12 UTC
(In reply to blopsalot from comment #19)
> did u try the ebuild i posted?
> 
> # 
> mkdir -p /usr/local/portage/{metadata,profiles}
> echo -e "masters = gentoo\nauto-sync = false\n" >
> /usr/local/portage/metadata/layout.conf
> echo -e "[localrepo]\nlocation = /usr/local/portage\n" >
> /etc/portage/repos.conf/localrepo
> mkdir -p /usr/local/portage/sys-apps/hwloc/files
> wget
> https://raw.githubusercontent.com/blopsalot/blop-overlay/master/sys-apps/
> hwloc/hwloc-9999.ebuild -O
> /usr/local/portage/sys-apps/hwloc/hwloc-1.11.8.ebuild
> wget
> https://raw.githubusercontent.com/gentoo/gentoo/master/sys-apps/hwloc/files/
> hwloc-1.8.1-gl.patch -O
> /usr/local/portage/sys-apps/hwloc/files/hwloc-gl.patch
> chown -R portage:portage /usr/local/portage
> cd /usr/local/portage/sys-apps/hwloc
> repoman manifest
> ebuild hwloc-1.11.8.ebuild merge

Yes, this one worked fine. At least emerged ) How can I test it that it is not breaking anything?
Comment 26 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2018-01-09 07:15:40 UTC
(In reply to Justin Bronder from comment #24)
> (In reply to Michał Górny from comment #23)
> > CUDA maintainers can't do anything about it. CUDA support just needs to be
> > disabled for non-native ABI.
> 
> Are you suggesting that we detect abi_X86_32 and just drop the configure
> flag or that we create a blocker?  The feels like it's just kicking the can
> down the road and will make packages using hwloc run into this same issue.

multilib_native_use_enable, as the users already did (note that I haven't diffed the ebuild for any more changes). I don't see what other option can you be thinking about, except for leaving things broken until nvidia miraculously changes their mind and starts supporting old x86 hardware.
Comment 27 Justin Bronder (RETIRED) gentoo-dev 2018-03-26 16:55:50 UTC
commit 97df9e785f7b8b323c6a836d3f82070a5dcad9ac
Author: Justin Bronder <jsbronder@gentoo.org>
Date:   Mon Mar 26 12:53:49 2018 -0400

    sys-apps/hwloc: bump 1.11.10
    
    Bump for https://bugs.gentoo.org/650882
    Also kicking the can on https://bugs.gentoo.org/611678
    
    Package-Manager: Portage-2.3.24, Repoman-2.3.6