Opened 10 years ago

Closed 10 years ago

#25485 closed defect (fixed)

emacs +x11 tries to use libXaw3d.dylib

Reported by: Russell-Jones-OxPhys (Russell Jones) Owned by: drkp (Dan Ports)
Priority: Normal Milestone:
Component: ports Version: 1.9.1
Keywords: Cc: sewebster@…, ryandesign (Ryan Schmidt)
Port: emacs

Description

This prevents emacs from being built with the +x11 variant.

Output of

sudo port selfupdate
sudo port clean emacs
sudo port -d install emacs +x11 &> "emacs+x11-debug-`date "+%Y%m%d%H%M%S"`.txt"

attached

Attachments (1)

emacs+x11-debug-20100701135433.txt (368.0 KB) - added by Russell-Jones-OxPhys (Russell Jones) 10 years ago.
port -d install output

Download all attachments as: .zip

Change History (9)

Changed 10 years ago by Russell-Jones-OxPhys (Russell Jones)

port -d install output

comment:1 Changed 10 years ago by sewebster@…

Xaw3d isn't a dependency of emacs +x11, right? Does an existing i386 Xaw3d install cause a conflict with xorg-libXaw here?

comment:2 Changed 10 years ago by sewebster@…

Cc: sewebster@… added

Cc Me!

comment:3 Changed 10 years ago by drkp (Dan Ports)

Cc: dports@… added

Cc Me!

comment:4 Changed 10 years ago by drkp (Dan Ports)

Looks like emacs +x11 is linking against Xaw3d instead of Xaw, which surprises me.

BTW, emacs +gtk is also an option.

comment:5 Changed 10 years ago by ryandesign (Ryan Schmidt)

Cc: ryandesign@… added
Keywords: emacs removed
Port: emacs added; Xaw3d removed
Summary: Xaw3d doesn't build +universal or 64-bit on 10.6.4emacs +x11 tries to use libXaw3d.dylib

Xaw3d does not build universal because it does not have a universal variant. But it does build just fine x86_64 for me on my system. And I think it did on your system too. The output you attached shows:

ld: warning: in /opt/local/lib/libXaw3d.dylib, file was built for unsupported file format which is not the architecture being linked (i386)

That means you are currently trying to build something i386 (the i386 part of emacs' +universal variant) but libXaw3d.dylib does not contain that architecture (it only contains x86_64).

So it appears that emacs +x11 tries to use Xaw3d, though no dependency on it is declared. A dependency needs to thus either be added somewhere (and the universal variant of that something then disabled), or it needs to not use Xaw3d.

comment:6 Changed 10 years ago by drkp (Dan Ports)

Owner: changed from macports-tickets@… to dports@…
Status: newassigned

It looks like emacs+x11 only requires Xaw (hence the dependency) but looks for and uses Xaw3d if it's available. I'll pass it --without-xaw3d to stop that, assuming it works.

comment:7 Changed 10 years ago by drkp (Dan Ports)

Cc: dports@… removed

comment:8 in reply to:  6 Changed 10 years ago by drkp (Dan Ports)

Resolution: fixed
Status: assignedclosed

Replying to dports@…:

It looks like emacs+x11 only requires Xaw (hence the dependency) but looks for and uses Xaw3d if it's available. I'll pass it --without-xaw3d to stop that, assuming it works.

Done in r69381.

And did the same for emacs22 in r69383, albeit via a somewhat more forceful means because it didn't support --disable-xaw3d.

Note: See TracTickets for help on using tickets.