Opened 2 weeks ago

Closed 7 days ago

#69754 closed defect (fixed)

jed @0.99-19+x11: fatal error: 'X11/Intrinsic.h' file not found; fatal error: 'ft2build.h' file not found

Reported by: cfried1 Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone:
Component: ports Version: 2.9.3
Keywords: Cc:
Port: jed

Description

Hello all,
installing the x11 variant of jed (sudo port install jed +x11) does not work. The complete error message (from main.log) is:

:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_editors_jed/jed/work/jed-0.99-19/src/xterm.c:30:11: fatal error: 'X11/Intrinsic.h' file not found
:info:build # include <X11/Intrinsic.h>

xorg-libXt is installed.

The following files exist:
/opt/local/include/X11/Intrinsic.h
/opt/X11/include/X11/Intrinsic.h
/usr/X11/include/X11/Intrinsic.h

Thank you.

Best wishes
Christoph

Attachments (1)

main.log (344.2 KB) - added by cfried1 2 weeks ago.

Download all attachments as: .zip

Change History (6)

comment:1 Changed 2 weeks ago by ryandesign (Ryan Carsten Schmidt)

Keywords: +x11 removed
Summary: sudo port install jed +x11 fails with fatal error: 'X11/Intrinsic.h' file not foundjed @0.99-19+x11: fatal error: 'X11/Intrinsic.h' file not found

Please attach the main.log file.

/opt/local/X11/Intrinsic.h is provided by the xorg-libXt port which is not in jed's recursive dependencies so that may need to be added.

Still surprising that you're getting an error saying the file does not exist if in fact it does exist on your system (i.e. you already have the xorg-libXt port installed).

Changed 2 weeks ago by cfried1

Attachment: main.log added

comment:2 Changed 2 weeks ago by ryandesign (Ryan Carsten Schmidt)

Summary: jed @0.99-19+x11: fatal error: 'X11/Intrinsic.h' file not foundjed @0.99-19+x11: fatal error: 'X11/Intrinsic.h' file not found; fatal error: 'ft2build.h' file not found

Ok thanks, that makes more sense, mostly. Your log shows five attempts to install the port. The first two failed with:

.../jed-0.99-19/src/xterm.c:30:11: fatal error: 'X11/Intrinsic.h' file not found

After that you presumably installed xorg-libXt which provides <X11/Intrinsic.h> because the third attempt failed with a different error originating from <X11/Intrinsic.h> so it must have existed:

/opt/local/include/X11/Intrinsic.h:187:10: fatal error: 'X11/Core.h' file not found

This should not have happened since <X11/Core.h> is also provided by xorg-libXt; it's hard to see how you could have one of the files but not the other. The only possibility I can think of is that you were using two terminal windows simultaneously and in one you were installing jed and in the other you were installing xorg-libXt and by the time that jed went looking for <X11/Intrinsic.h> MacPorts had finished extracting <X11/Intrinsic.h> from the xorg-libXt archive but hadn't extracted <X11/Core.h> yet. I checked our macOS 14 Apple Silicon archive of xorg-libXt @1.3.0_0 and it does contain <X11/Intrinsic.h> before <X11/Core.h>. (On APFS filesystems, files are not necessarily added to archives in alphabetical order.) Still it seems very unlikely since Apple Silicon machines have fast SSDs that should be able to extract all of xorg-libXt in a fraction of a second. The fourth and fifth attempts failed with:

/opt/local/include/X11/Xft/Xft.h:40:10: fatal error: 'ft2build.h' file not found
#include <ft2build.h>
         ^~~~~~~~~~~~

This is what I now see on my system as well and it's straightforward enough: the build system has not added the include path for the directory where that file is located (/opt/local/include/freetype). pkg-config xft --cflags includes the necessary flag, and jed's configure script does use that command to discover what flags to use—but only if pkg-config is found and your log shows:

checking for pkg-config... no

Adding a dependency on pkgconfig is easy. Let me see what else might need to be fixed in this port before I commit these fixes.

comment:3 Changed 7 days ago by cfried1

Thank you very much for the explanation! Has the port been updated already?

comment:4 Changed 7 days ago by ryandesign (Ryan Carsten Schmidt)

It has not; let me see where I left off.

comment:5 Changed 7 days ago by ryandesign (Ryan Carsten Schmidt)

Owner: set to ryandesign
Resolution: fixed
Status: newclosed

In 3020760de1466afb2e7285f57f359f9f33b7dfde/macports-ports (master):

jed: Fix x11 variant; cleanup

In x11 variant, add xorg-libXt dependency for <X11/Intrinsic.h> and add
pkgconfig dependency so it can find <ft2build.h>.

Remove x11 variant description which overrode the default one.

Move the part of the post-destroot block that was specific to the x11
variant into the x11 variant code.

Explicitly disable features that the configure script searches for.

Add a patch to ensure gtk2 isn't used, since no other way to do so could
be found.

Modernize checksums.

Remove platforms darwin which is the default.

Remove -L${prefix}/lib from configure.cppflags which doesn't go there.

Closes: #69754

Note: See TracTickets for help on using tickets.