Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[app-misc/fzf]: ebuild request #51

Closed
rdnetto opened this issue Nov 14, 2016 · 8 comments · Fixed by #55
Closed

[app-misc/fzf]: ebuild request #51

rdnetto opened this issue Nov 14, 2016 · 8 comments · Fixed by #55

Comments

@rdnetto
Copy link
Contributor

rdnetto commented Nov 14, 2016

Hi,
I'd appreciate it if you could add an ebuild for fzf. I've had a go at doing so myself, but it doesn't seem to follow the normal package layout for Go (the source is in a src subdirectory), and I didn't know enough about Go to make it half-work without some truly terrible hacks.

@Dr-Terrible
Copy link
Owner

Sure thing. I'll give a try right now.

@Dr-Terrible
Copy link
Owner

Dr-Terrible commented Nov 21, 2016

There is now a preliminary ebuild with commit 596320e.
Let me know if there are missing parts, or if the ebuild needs to be further tweaked for specific features ;)

@rdnetto
Copy link
Contributor Author

rdnetto commented Nov 22, 2016

Awesome, thanks for that. It doesn't seem to be compiling for me though - looks like linking against ncurses:6 fails.

x86_64-pc-linux-gnu-gcc -I . -fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=$WORK=/tmp/go-build -gno-record-gcc-switches -o $WORK/github.com/junegunn/fzf/src/tui/_obj/_cgo_.o $WORK/github.com/junegunn/fzf/src/tui/_obj/_cgo_main.o $WORK/github.com/junegunn/fzf/src/tui/_obj/_cgo_export.o $WORK/github.com/junegunn/fzf/src/tui/_obj/ncurses.cgo2.o -g -O2 -lncurses
# github.com/junegunn/fzf/src/tui
/usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/../../../../x86_64-pc-linux-gnu/bin/ld: $WORK/github.com/junegunn/fzf/src/tui/_obj/ncurses.cgo2.o: undefined reference to symbol 'raw'
/lib64/libtinfo.so.6: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status

Full build log is here.

@Dr-Terrible
Copy link
Owner

Hi @rdnetto.

I tried to reproduce your compilation issue, but without success. I don't have a file called /lib64/libtinfo.so.6 in any of my Gentoo/Linux systems, which is quite suspicious.

Please, can you paste me the output of this command?

qfile /lib64/libtinfo.so.6

and if qfile pinpoints a specific package, can you paste me the output of emerge --info <add here the name of pkg reported by qfile> too? Thank you.

@rdnetto
Copy link
Contributor Author

rdnetto commented Dec 3, 2016

Sure:

$ qfile /lib64/libtinfo.so.6
sys-libs/ncurses (/lib64/libtinfo.so.6)
$ emerge --info sys-libs/ncurses
Portage 2.3.1 (python 2.7.10-final-0, default/linux/amd64/13.0/desktop, gcc-4.9.3, glibc-2.21-r2, 4.8.0-sabayon x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-4.8.0-sabayon-x86_64-AMD_FX-tm-6300_Six-Core_Processor-with-gentoo-2.2
KiB Mem:    16385592 total,   8534440 free
KiB Swap:   16776768 total,  16776768 free
Timestamp of repository gentoo: Mon, 28 Nov 2016 09:43:02 +0000
sh bash 4.3_p48
ld GNU ld (Gentoo 2.25.1 p1.1) 2.25.1
app-shells/bash:          4.3_p48::gentoo
dev-java/java-config:     2.2.0-r3::gentoo
dev-lang/perl:            5.22.2::gentoo
dev-lang/python:          2.7.10-r1::gentoo, 3.3.5-r1::gentoo, 3.4.3-r1::gentoo
dev-util/cmake:           3.6.2::gentoo
dev-util/pkgconfig:       0.29.1::gentoo
sys-apps/baselayout:      2.2-r1::sabayon-distro
sys-apps/openrc:          0.19.1::gentoo
sys-apps/sandbox:         2.10-r2::gentoo
sys-devel/autoconf:       2.69::gentoo
sys-devel/automake:       1.13.4-r1::gentoo, 1.14.1-r1::gentoo, 1.15-r1::gentoo
sys-devel/binutils:       2.25.1-r1::gentoo
sys-devel/gcc:            4.7.3-r1::sabayon-distro, 4.8.4::sabayon-distro, 4.9.3::sabayon-distro
sys-devel/gcc-config:     1.8-r1::sabayon-distro
sys-devel/libtool:        2.4.6-r2::gentoo
sys-devel/make:           4.1-r1::gentoo
sys-kernel/linux-headers: 4.3::gentoo (virtual/os-headers)
sys-libs/glibc:           2.21-r2::gentoo
Repositories:

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

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

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

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

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

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

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

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

sabayon-distro
    location: /var/lib/layman/sabayon-distro
    masters: gentoo
    priority: 50

Installed sets: @system
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=native -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /etc/conf.d /etc/entropy /etc/init.d /usr/share/config /usr/share/config/kdm /usr/share/gnupg/qualified.txt /usr/share/themes/oxygen-gtk/gtk-2.0 /usr/share/themes/oxygen-gtk/gtk-3.0"
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/skel /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c /lib/modules"
CXXFLAGS="-O2 -march=native -pipe"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs cgroup compressdebug config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms splitdebug strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://ftp.swin.edu.au/gentoo"
LANG="en_AU.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j16 -s"
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="X a52 aac accessibility acl acpi aiglx aim alsa amd64 artswrappersuid audiofile avahi bash-completion berkdb bidi bluetooth bluray bzip2 cairo cdda cddb cdr cjk cli cpudetection cracklib crypt cups cxx dbus dga dri dts dv dvb dvd dvdr dvdread dvi emboss encode exif fam fame fat ffmpeg firefox flac foomatic-db fortran freetype gcj gdbm gif gimpprint glamor gmp gnutls gphoto2 gpm gsm gtk hfs iconv icq ieee1394 imap inotify ipod ipv6 irc irda jabber jack jfs joystick jpeg kdeenablefinal kdehiddenvisibility kerberos lame lcd lcms ldap libav libnotify live lm_sensors logind lzo mad mail matroska mjpeg mmx mmxext mng modules mozdevelop mp3 mp3rtp mp4 mpeg msn multilib musepack musicbrainz ncurses network nls nptl nsplugin ntfs ogg openal openexr opengl openmp opus pam pango pcmcia pcre pda pdf perl png policykit ppds pulseaudio python qt3support qt4 rar rdesktop readline real reiserfs rss scanner sdl seccomp session slp speex spell sse sse2 ssl startup-notification stream svg sysfs systemd tcpd theora tiff truetype udev udisks unicode upower usb v4l v4l2 visualization vorbis wayland wifi win32codecs wmf wxwidgets x264 x265 xattr xcb xfs xine xinerama xml xpm xprint xulrunner xv xvid xvmc yahoo zeroconf zlib" ABI_X86="64 32" ALSA_CARDS="emu10k1x darla20 darla24 emu10k1 gina20 gina24 hdsp hdspm ice1712 indigo indigoio layla20 layla24 mia mixart mona pcxhr rme32 rme96 sb16 sbawe sscape usbusx2y vx222 usb-usx2y" 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" APACHE2_MPMS="prefork" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="agfa_cl20 casio_qv dimagev dimera3500 kodak_dc120 kodak_dc210 kodak_dc240 kodak_dc3200 kodak_ez200 konica_qm150 panasonic_coolshot panasonic_dc1000 panasonic_dc1580 panasonic_l859 polaroid_pdc320 polaroid_pdc640 polaroid_pdc700 ricoh_g3 sipix_blink sipix_blink2 sipix_web2 sony_dscf1 sony_dscf55 toshiba_pdrm11 adc65 aox barbie canon clicksmart310 digigr8 digita directory enigma13 fuji gsmart300 hp215 iclick jamcam jd11 konica largan lg_gsm mars mustek pccam300 pccam600 ptp2 ricoh samsung sierra smal sonix soundvision spca50x sq905 stv0674 stv0680 sx330z template" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="mmx" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="efi-32 efi-64 pc" INPUT_DEVICES="evdev void" KERNEL="linux" L10N="en af ar az bg bn br bs ca cs cy da de el en-GB eo es et eu fa fi fr fy ga gl he hi hr hu is it ja kk km ko lt lv mk mn ms nb nds nl nn pa pl pt pt-BR ro ru rw se sk sl sr sr-Latn ss sv ta tg tr uk uz vi zh-CN zh-TW es-AR es-ES fy ga gu nb nn pt-PT sv zh" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer pdfimport wiki-publisher" LINGUAS="en en_US af ar az bg bn br bs ca cs cy da de el en_GB eo es et eu fa fi fr fy ga gl he hi hr hu is it ja kk km ko lt lv mk mn ms nb nds nl nn pa pl pt pt_BR ro ru rw se sk sl sr sr@Latn ss sv ta tg tr uk uz vi zh_CN zh_TW es_AR es_ES fy_NL ga_IE gu gu_IN nb_NO nn_NO pt_PT sv_SE zh" LIRC_DEVICES="audio audio_alsa devinput pctv" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_4" QEMU_SOFTMMU_TARGETS="x86_64 arm cris i386 m68k microblaze mips mips64 mips64el mipsel ppc ppc64 ppcemb sh4 sh4eb sparc sparc64" QEMU_USER_TARGETS="alpha arm armeb cris i386 m68k microblaze mips mipsel ppc ppc64 ppc64abi32 sh4 sh4eb sparc sparc32plus sparc64 x86_64" RUBY_TARGETS="ruby21" USERLAND="GNU" VIDEO_CARDS="fbdev vesa radeonsi radeon" 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="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

=================================================================
                        Package Settings
=================================================================

sys-libs/ncurses-6.0-r1::gentoo was built with the following:
USE="cxx gpm static-libs tinfo unicode -ada -debug -doc -minimal -profile -test -threads -trace" ABI_X86="32 64 -x32"
CFLAGS="-O2 -march=x86-64 -pipe"
CXXFLAGS="-O2 -march=x86-64 -pipe"


@Dr-Terrible
Copy link
Owner

Dr-Terrible commented Dec 13, 2016

Thank you, I'm now able to reproduce the issue; it's due to the USE tinfo of sys-libs/ncurses.

As a temporarily solution you could disable that USE flag for sys-libs/ncurses only, if you don't have other packages explicitly depending on it (tinfo is a relic of a very old ncurses API/ABI not supported any more). Meanwhile, I'll work out a fix with upstream.

@rdnetto
Copy link
Contributor Author

rdnetto commented Dec 14, 2016

Awesome, thanks a bunch! :)

Dr-Terrible added a commit that referenced this issue Dec 15, 2016
@bpinto
Copy link
Collaborator

bpinto commented Jan 5, 2017

This would be an awesome package to have on gentoo's main overlay. :)

rdnetto pushed a commit to rdnetto/go-overlay that referenced this issue Jan 28, 2017
This release removes the dependency on ncurses[-tinfo] - closes Dr-Terrible#51.
Dr-Terrible pushed a commit that referenced this issue Jan 30, 2017
* [app-shells/fzf] Version bump to v0.16.2

This release removes the dependency on ncurses[-tinfo] - closes #51.

* [app-shells/fzf] Bump dependencies

(PR feedback)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants