/usr/ports/x11/xorg failing at xterm install

Hi all,

I'm installing a brand new build of FreeBSD 9.2 64 Bit, and I've hit an unusual snag. I've built the Xorg port countless times before without a problem but this has got me stumped. Here's the last few lines of output:
Code:
====> Compressing man pages (compress-man)
===>  Building package for xterm-300
Creating package /usr/ports/x11/xterm/work/xterm-300.tbz
Registering depends: desktop-file-utils-0.22_1 glib-2.36.3_1 python27-2.7.6_1 gettext-0.18.3.1 libXaw-1.0.12,2 libXmu-1.1.2,1 libXp-1.0.2,1 libXpm-3.5.11 libXext-1.3.2,1 libXft-2.3.1 libXrender-0.9.8 libXt-1.1.4,1 libX11-1.6.2,1 libxcb-1.9.3 libxml2-2.8.0_3 libiconv-1.14_1 libffi-3.0.13_1 libpthread-stubs-0.3_4 pcre-8.33 fontconfig-2.11.0_1,1 freetype2-2.5.2 png-1.5.17 perl5-5.16.3_6 expat-2.1.0 kbproto-1.0.6 libSM-1.2.2,1 libICE-1.0.8,1 libXau-1.0.8 libXdmcp-1.1.1 printproto-1.0.5 renderproto-0.11.1 xextproto-7.2.1 xproto-7.0.25.
Registering conflicts: x11iraf-[0-9]*.
Creating bzip'd tar ball in '/usr/ports/x11/xterm/work/xterm-300.tbz'
tar: %%GNOME%%@exec /usr/local/bin/update-desktop-database > /dev/null || /usr/bin/true: Cannot stat: No such file or directory
tar: %%GNOME%%@unexec /usr/local/bin/update-desktop-database > /dev/null || /usr/bin/true: Cannot stat: No such file or directory
tar: Error exit delayed from previous errors.
pkg_create: make_dist: tar command failed with code 256
*** [do-package] Error code 1

Stop in /usr/ports/x11/xterm.
*** [install] Error code 1

Stop in /usr/ports/x11/xterm.
*** [run-depends] Error code 1

Stop in /usr/ports/x11/xorg-apps.
*** [install] Error code 1

Stop in /usr/ports/x11/xorg-apps.
*** [run-depends] Error code 1

Stop in /usr/ports/x11/xorg.

It's something to do with
Code:
tar: %%GNOME%%@exec /usr/local/bin/update-desktop-database > /dev/null || /usr/bin/true: Cannot stat: No such file or directory
but I'm not sure what this means or why Gnome is mentioned at all; it happens whether Gnome support is selected in the Makefile or not.

This is on a fresh installation, not an update or anything like that. I tried installing Xterm separately as a simple control and got exactly the same error.
 
Update: I used a Makefile from another another machine which I built last week. Unfortunately, I saved over the newer Makefile on my memory stick so I don't have it for comparison. I've included the older one as this might be useful for someone.
Code:
# Created by: krion
# $FreeBSD: x11/xterm/Makefile 335606 2013-12-04 07:30:22Z ehaupt $

PORTNAME=	xterm
PORTVERSION=	300
CATEGORIES=	x11
MASTER_SITES=	ftp://invisible-island.net/xterm/:src1 \
		CRITICAL:src1 CRITICAL:src2
EXTRACT_SUFX=	.tgz
DISTFILES=	${DISTNAME}${EXTRACT_SUFX}:src1 \
		bsd-xterm-icons-${ICONVERSION}${EXTRACT_SUFX}:src2

MAINTAINER=	ehaupt@FreeBSD.org
COMMENT=	Terminal emulator for the X Window System

CONFLICTS=	x11iraf-[0-9]*

USE_XORG=	xaw xft
WANT_GNOME=	desktopfileutils
GNU_CONFIGURE=	yes

CONFIGURE_ENV+=	LIBS="-L${LOCALBASE}/lib"
CONFIGURE_ARGS+=	--with-utempter --enable-narrowproto

CPPFLAGS+=	-I${LOCALBASE}/include

ICONVERSION=	1

OPTIONS_DEFINE=	WCHAR LUIT DECTERM PCRE GNOME DABBREV 256COLOR SIXEL

DABBREV_DESC=	Enable support for dabbrev-expand
DECTERM_DESC=	Enable DECterm Locator support
LUIT_DESC=	Use LUIT for locale convertion from/to UTF-8
SIXEL_DESC=	Enable Sixel graphics support
WCHAR_DESC=	Enable wide-character support
256COLOR_DESC=	Enable 256-color support

OPTIONS_DEFAULT=WCHAR LUIT 256COLOR

.include <bsd.port.options.mk>

.if ${PORT_OPTIONS:M256COLOR}
CONFIGURE_ARGS+=	--enable-256-color
.endif

.if ${PORT_OPTIONS:MLUIT}
CONFIGURE_ARGS+=	--enable-luit
BUILD_DEPENDS=	luit:${PORTSDIR}/x11/luit
.endif

.if ${PORT_OPTIONS:MWCHAR}
CONFIGURE_ARGS+=	--enable-wide-chars
.endif

.if ${PORT_OPTIONS:MDECTERM}
CONFIGURE_ARGS+=	--enable-dec-locator
.endif

.if ${PORT_OPTIONS:MPCRE}
CONFIGURE_ARGS+=	--with-pcre
LIB_DEPENDS=		pcre:${PORTSDIR}/devel/pcre
.endif

.if ${PORT_OPTIONS:MDABBREV}
CONFIGURE_ARGS+=	--enable-dabbrev
.endif

.if ${PORT_OPTIONS:MSIXEL}
CONFIGURE_ARGS+=	--enable-sixel-graphics
.endif

.if ${PORT_OPTIONS:MGNOME}
USE_GNOME=	desktopfileutils
PLIST_SUB+=	GNOME=""
.else
PLIST_SUB+=	GNOME="@comment "
.endif

.include <bsd.port.pre.mk>

.if ${OSVERSION} < 900004
LIB_DEPENDS+=	utempter:${PORTSDIR}/sysutils/libutempter
.endif

post-extract:
	@${CP} ${WRKDIR}/bsd-xterm-icons-1/*.png ${WRKDIR}/bsd-xterm-icons-1/*.xpm \
		${WRKSRC}/icons/

post-install:
.for f in koi8rxterm resize uxterm xterm
	@${CHMOD} ${BINMODE} ${STAGEDIR}${PREFIX}/bin/${f}
.endfor
	@${INSTALL_DATA} ${WRKSRC}/xterm.desktop ${STAGEDIR}${PREFIX}/share/applications/
.if ${PORT_OPTIONS:MGNOME}
	@-update-desktop-database
.endif

.if ${PORT_OPTIONS:MWCHAR}
	@${CAT} ${PKGMESSAGE}
.endif

.include <bsd.port.post.mk>

This built without any problems. The original Makefile that caused problems was dated today so I'm guessing it'll be fixed soon enough.
 
By chance did you select (accidentally/intentionally) the "GNOME desktop environment support" configuration option for x11/xterm? That would explain the %%GNOME%% references you are seeing. You might want to double-check your x11/xterm options.
 
trh411 said:
By chance did you select (accidentally/intentionally) the "GNOME desktop environment support" configuration option for x11/xterm? That would explain the %%GNOME%% references you are seeing. You might want to double-check your x11/xterm options.

That was my first thought, that I had it selected, or it being deselected not being propogated to the Makefile properly. However I checked and the options were correct, I even tried building it again with it selected and deselected but the result was the same.
 
I just got a slightly different error attempting to re-install x11/xterm, so I'm thinking the port is temporarily broken.
Code:
===>  Installing for xterm-300
===>  Checking if x11/xterm already installed
===>   Registering installation for xterm-300 as automatic
pkg-static: lstat(/usr/ports/x11/xterm/work/stage/usr/local/%%GNOME%%@exec /usr/local/bin/update-desktop-database > /dev/null || /usr/bin/true): No such file or directory
pkg-static: lstat(/usr/ports/x11/xterm/work/stage/usr/local/%%GNOME%%@unexec /usr/local/bin/update-desktop-database > /dev/null || /usr/bin/true): No such file or directory
*** Error code 74
Noticed the Makefile was update today, so that most likely broke the port. I'll post to the X11 mailing list and see what they say.
 
cpm said:
As a temporary workaround you can disable staging support in the port.

Just simply edit the xterm/Makefile and add
Code:
NO_STAGE= yes
Thanks @cpm, I think you suggested this to me a couple months ago when I encountered a similar problem, but I failed to make the connection in this case. In any event, I've posted to the X11 folks so they will be aware of the problem.
 
Last edited by a moderator:
A fix for this was just committed. It should be available immediately via svn. I think it takes a bit before ports-mgmt/portsnap picks up the changes, at least that has been my experience. Anyway, look for an update to the x11/xterm/pkg-plist file, which was the source of the problem.
 
Back
Top