Opened 13 years ago

Closed 13 years ago

Last modified 13 years ago

#30588 closed defect (invalid)

emacs cannot open the termcap database file

Reported by: raramayo (Rodolfo Aramayo) Owned by: drkp (Dan Ports)
Priority: Normal Milestone:
Component: ports Version: 2.0.1
Keywords: Cc:
Port: emacs

Description

After installing emacs (Emacs 23.3.1) via ports on an iMac. Emacs cannot be opened because it cannot open the termcap database file. If I understand correctly this error occurs when emacs is compiled without ncurses, which is a dependency of emacs. But ncurses and ncursesw are both installed correctly as dependencies, as they should be. This opens the possibility that emacs is not linking ncurses correctly during compilation. Comparing the emacs packages between the Apple provided and MacPorts I find that the 'termcap.src' file is present in the '/usr/share/emacs/22.1/etc' Apple installation, whereas the equivalent file is absent in the MacPorts '/opt/local/share/emacs/23.3/etc' equivalent directory.

Change History (4)

comment:1 Changed 13 years ago by mf2k (Frank Schima)

Owner: changed from macports-tickets@… to dports@…
Port: emacs added

comment:2 Changed 13 years ago by raramayo (Rodolfo Aramayo)

After trying to compile emacs myself I believe the problem might be related to the following warning during configuration:

'ld: warning: in /sw/lib/libncurses.dylib, file was built for i386 which is not the architecture being linked (x86_64) ld: warning: in /sw/lib/libintl.dylib, file was built for i386 which is not the architecture being linked (x86_64)'

I tried compiling emacs with './configure --build=i386' but that is an option that 'configure' does not accept when run on an x86_64 machine. I also tried ./configure --build=i386-*-freebsd but I get errors.

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

Resolution: invalid
Status: newclosed

It looks like you have a copy of ncurses installed via Fink. Having both Fink and MacPorts installed simultaneously is not supported, because it causes problems like this where a port being built by one will pick up an incompatible dependency from the other.

That said, if you didn't do a selfupdate within the last 12 hours you might try doing so and then trying to build emacs again. I recently made a change that may help (r81667). Even if emacs builds, however, you're likely to run into similar problems with other ports.

comment:4 Changed 13 years ago by raramayo (Rodolfo Aramayo)

You are correct. The path suggests a fink install. HOWEVER, what confuses me is the fact that:

  1. Fink in NOT active. I installed because I was trying to install a weird program. But after that I removed Fink from my PATHS. No Fink in '/etc/profile' No Fink in .bashrc. No Fink in .bash_profile.

Regardless, I deleted the '/sw' directory and proceeded to re-install emacs via Ports and YES this time it works!!

Thanks

Note: See TracTickets for help on using tickets.