Opened 11 years ago

Closed 11 years ago

#39878 closed defect (invalid)

port-2.2.0 has disabled readline support, and pythons won't accept inputs from an IM

Reported by: fukuda@… Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version: 2.2.0
Keywords: Cc: jyrkiwahlstedt, MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
Port: python27 python33 py27-readline py33-readline

Description (last modified by larryv (Lawrence Velázquez))

"selfupdate" updated my port command from 2.1.3 to 2.2.0, and in that occasion, the command announced that

Warning: Disabling readline support due to readline in /usr/local
Installing new MacPorts release in /opt/local as root:admin; permissions 0755; Tcl-Package in /Library/Tcl 

Since then, python27 and python33 (from MacPorts) on Terminal.app on Lion won't accept the input from AquaSKK.

Some facts I believe relevant:

  • these two worked fine till the upgrade of the port.
  • these two are still working fine on Mountain Lion, in which I have not upgrade port to 2.2.0
  • "readline," "py27-readline", "py33-readline" remain activated.
  • /usr/local does not include readline libraries except
    • /usr/local/lib/ruby/1.8/universal-darwin8.0/readline.bundle
    • /usr/local/man/man3/readline.3

Change History (7)

comment:1 Changed 11 years ago by fukuda@…

Cc: fukuda@… added

Cc Me!

comment:2 Changed 11 years ago by larryv (Lawrence Velázquez)

Cc: jwa@… mcalhoun@… added; fukuda@… removed
Description: modified (diff)
Keywords: readline python "Input Method" removed

All that warning means is that MacPorts base was not compiled with readline support. How could that affect anything else?

comment:3 in reply to:  2 Changed 11 years ago by fukuda@…

Replying to larryv@…:

All that warning means is that MacPorts base was not compiled with readline support. How could that affect anything else?

Thank you for the comment. Frankly, I don't know or can't explain that. All I know is that without py27-readline python27 shows similar symptoms, and activating py27-readline solves the problem. To my surprise, re-installation of python27 is not required. (Somehow, a readline module or library is linked magically.) So, I guessed the new version of port switched on or off something and this affected the link with py27-readline.

However, you suggest my guess should be unlikely, and I almost agree with you. Which aspect shall I take a look at? After issuing the ticket, I did the following things without any improvement.

  • switched IM from AquaSKK to kotoeri (Apple's original Japanese IM)
  • deleted "readline." under /usr/local/lib
  • re-installed port-2.2.0 from .pkg
  • re-installed python27 by port -f install (I have too many dependent ports)
  • re-installed py27-readline (uninstalled and re-installed)

On Mountain Lion on another machine, I have a similar environment with port-2.1.3, and I can input Japanese at python27 prompt. Do you think it would help if I tried to selfupdate the port?

Thanks,

comment:4 Changed 11 years ago by neverpanic (Clemens Lang)

The message you saw about readline during selfupdate is printed by MacPorts if the globs /usr/local/lib/lib{readline,history}*and /usr/local/include/readline/*.h don't come up empty. This check does not affect any ports, but only the MacPorts code itself. Your problem with AquaSKK must originate somewhere else.

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

Well, having libraries like readline installed in /usr/local is known to mess up MacPorts base, which is why MacPorts base specifically checks for and avoids that problem. It may mess up other software as well, and that other software might not check for it. For this reason we do not support the use of MacPorts when you have things installed in /usr/local. Please remove /usr/local and clean or reinstall the affected ports.

comment:6 in reply to:  5 ; Changed 11 years ago by fukuda@…

Replying to ryandesign@…:

Well, having libraries like readline installed in /usr/local is known to mess up MacPorts base, which is why MacPorts base specifically checks for and avoids that problem. It may mess up other software as well, and that other software might not check for it. For this reason we do not support the use of MacPorts when you have things installed in /usr/local. Please remove /usr/local and clean or reinstall the affected ports.

Thank you for the comment, but the symptoms were the same with Kotoeri, Apple's genuine IM.

I "selfupdated" on another Mac to find no problems and I started comparing every ports one by one, and found that the cause is not within port command or ports, but a wrong environmental variable ($LC_ALL) of the shell. (I did not doubt that because both IMs worked fine for the shell itself.)

Thank you for your advices, and I hope you haven't wasted so much time.

comment:7 in reply to:  6 Changed 11 years ago by larryv (Lawrence Velázquez)

Resolution: invalid
Status: newclosed

Replying to fukuda@…:

I "selfupdated" on another Mac to find no problems and I started comparing every ports one by one, and found that the cause is not within port command or ports, but a wrong environmental variable ($LC_ALL) of the shell. (I did not doubt that because both IMs worked fine for the shell itself.)

Thank you for your advices, and I hope you haven't wasted so much time.

No worries. Glad you got it working.

Note: See TracTickets for help on using tickets.