Opened 9 years ago

Closed 9 years ago

#45591 closed defect (invalid)

Problem with curl

Reported by: pv_fua@… Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version: 2.3.2
Keywords: Cc: ryandesign (Ryan Carsten Schmidt)
Port: curl

Description (last modified by ryandesign (Ryan Carsten Schmidt))

I have recently upgraded to Yosemite and I have followed the procedure described under wiki:Migration . However, I still run into the following problem, which prevents me from reinstalling xemacs and texlive:

> sudo port install curl
--->  Computing dependencies for curl
--->  Building curl
Error: org.macports.build for port curl returned: command execution failed
Please see the log file for port curl for details:
    /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_net_curl/curl/main.log
To report a bug, follow the instructions in the guide:
    http://guide.macports.org/#project.tickets
Error: Processing of port curl failed

Attachments (5)

main.log (18.1 KB) - added by pv_fua@… 9 years ago.
Log file
main.2.log (7.7 KB) - added by pv_fua@… 9 years ago.
2nd log file
main.3.log (233.4 KB) - added by pv_fua@… 9 years ago.
main.4.log (233.4 KB) - added by pv_fua@… 9 years ago.
log file for 4th attempt
grep.log (6.0 KB) - added by pv_fua@… 9 years ago.
Result or running "sudo grep /opt/local/lib/libintl.la -r /opt/local > ~/Desktop/grep.log"

Download all attachments as: .zip

Change History (25)

Changed 9 years ago by pv_fua@…

Attachment: main.log added

Log file

comment:1 Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)

Description: modified (diff)
Port: curl added

Please clean curl and then try again.

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

Description: modified (diff)

comment:3 in reply to:  1 ; Changed 9 years ago by pv_fua@…

Replying to ryandesign@…:

Please clean curl and then try again.

I just ran "sudo port clean curl" followed by "sudo port install curl" and the behaviour remains unchanged.

comment:4 Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)

Ok, please attach the new main.log.

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

Cc: ryandesign@… added

Cc Me!

comment:6 in reply to:  3 Changed 9 years ago by pv_fua@…

Just sent by email.

Changed 9 years ago by pv_fua@…

Attachment: main.2.log added

2nd log file

Changed 9 years ago by pv_fua@…

Attachment: main.3.log added

comment:7 in reply to:  5 Changed 9 years ago by pv_fua@…

Tried once more. The log file is "main3.log". Below is what I saw in my terminal

> sudo port clean curl
Password:
--->  Cleaning curl
> sudo port install curl
--->  Computing dependencies for curl
--->  Fetching archive for curl
Warning: Your DNS servers incorrectly claim to know the address of nonexistent hosts. This may cause checksum mismatches for some ports. See this page for more information: <https://trac.macports.org/wiki/MisbehavingServers>
--->  Attempting to fetch curl-7.38.0_0+ssl.darwin_14.x86_64.tbz2 from http://packages.macports.org/curl
--->  Attempting to fetch curl-7.38.0_0+ssl.darwin_14.x86_64.tbz2 from http://nue.de.packages.macports.org/macports/packages/curl
--->  Attempting to fetch curl-7.38.0_0+ssl.darwin_14.x86_64.tbz2 from http://lil.fr.packages.macports.org/curl
--->  Fetching distfiles for curl
--->  Verifying checksums for curl
--->  Extracting curl
--->  Applying patches to curl
--->  Configuring curl
--->  Building curl
Error: org.macports.build for port curl returned: command execution failed
Please see the log file for port curl for details:
    /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_net_curl/curl/main.log
To report a bug, follow the instructions in the guide:
    http://guide.macports.org/#project.tickets
Error: Processing of port curl failed
Last edited 9 years ago by ryandesign (Ryan Carsten Schmidt) (previous) (diff)

comment:8 Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)

The error messages:

:info:build grep: /opt/local/lib/libintl.la: No such file or directory
:info:build sed: /opt/local/lib/libintl.la: No such file or directory

suggest that you did not follow the wiki:Migration instructions correctly, which include uninstalling and reinstalling all ports. If you had uninstalled all ports, there should be no remaining references to .la files in your installed ports.

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

The reporter responded by email:

Could I simply try removing the .la file to see if it helps?

Please remember to respond in the ticket, not by email.

The problem is not .la files that need to be removed. The problem is that something on your system still thinks .la files should be there, even though they have been removed. The solution is to rebuild all ports to ensure there are no references to .la files remaining. It is important that the ports be rebuilt in a specific order to avoid lingering references to .la files. That's why the simplest solution is to uninstall all ports, then reinstall the ones you want. If you haven't done that after upgrading to Yosemite, please do.

Changed 9 years ago by pv_fua@…

Attachment: main.4.log added

log file for 4th attempt

comment:10 in reply to:  9 Changed 9 years ago by pv_fua@…

Replying to ryandesign@…:

The problem is not .la files that need to be removed. The problem is that something on your system still thinks .la files should be there, even though they have been removed. The solution is to rebuild all ports to ensure there are no references to .la files remaining. It is important that the ports be rebuilt in a specific order to avoid lingering references to .la files. That's why the simplest solution is to uninstall all ports, then reinstall the ones you want. If you haven't done that after upgrading to Yosemite, please do.

I reinstalled macport following to the letter the instructions given in the wiki, minus the optional ones. The behavior is still unchanged with references to the .la files. See last log file attached (main4.log).

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

Since the error in the new log is the same, something is still referencing /opt/local/lib/libintl.la. Perhaps we can identify what it is by running this command:

sudo grep /opt/local/lib/libintl.la -r /opt/local

Changed 9 years ago by pv_fua@…

Attachment: grep.log added

Result or running "sudo grep /opt/local/lib/libintl.la -r /opt/local > ~/Desktop/grep.log"

comment:12 in reply to:  11 ; Changed 9 years ago by pv_fua@…

sudo grep /opt/local/lib/libintl.la -r /opt/local

I just did and attached the result. There were also a number of messages such as

grep: /opt/local/bin/ps4pdf: No such file or directory
grep: /opt/local/bin/T1Wrap: No such file or directory
grep: /opt/local/bin/xdv2pdf: No such file or directory
Last edited 9 years ago by ryandesign (Ryan Carsten Schmidt) (previous) (diff)

comment:13 in reply to:  12 ; Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)

Replying to pv_fua@…:

I just did and attached the result.

Ok, let's look at line 9 for example. It's about the file /opt/local/lib/libidn.la, which makes it part of the libidn port (which is one of curl's dependencies). Let's verify that the port is installed and that it provides this file:

port -v installed libidn
port provides /opt/local/lib/libidn.la

comment:14 Changed 9 years ago by pv_fua@…

The result is as follows:

port -v installed libidn
The following ports are currently installed:
  libidn @1.29_0 (active) platform='darwin 14' archs='x86_64'
port provides /opt/local/lib/libidn.la
/opt/local/lib/libidn.la is not provided by a MacPorts port.
Last edited 9 years ago by ryandesign (Ryan Carsten Schmidt) (previous) (diff)

comment:15 in reply to:  13 ; Changed 9 years ago by pv_fua@…

Out of curiosity, I reran "sudo port install libidn". It ran without errors or warnings. But the result of "port provides /opt/local/lib/libidn.la" is still the same, even though the file libidn.la is present. What does this mean?

comment:16 in reply to:  15 ; Changed 9 years ago by pv_fua@…

I may have identified the problem. By first running "sudo gzip libidn.la", i.e. effectively removing the .la file. I was able to run "sudo port install curl" followed by "sudo port -f activate curl" . It is as though the presence of the ".la" file had confused the configure script. Is this possible? Incidentally the la file was old (i.e. from 2012). Should I remove ALL .la files from the directory?

comment:17 Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)

Sorry, I forgot to reply earlier. Yes, absolutely, the presence of .la files will "confuse" the build of other ports.

The output you provided above looks good: libidn is installed correctly and does not provide the .la file. The only problem, then, is that .la files nevertheless still exist on your system, and at least one of them was not provided by MacPorts. What provided them, then?

I'll bet the rest of your .la files weren't provided by MacPorts either. Let's find out by running:

port provides /opt/local/lib/*.la

For all the ones that say they were not provided by a MacPorts port, you should remove them. You may then have to rebuild other ports, in a particular order, to remove remaining references to .la files.

If any of them say they were provided by a MacPorts port, let me know which ones.

comment:18 in reply to:  16 Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)

Replying to pv_fua@…:

I was able to run "sudo port install curl" followed by "sudo port -f activate curl"

"sudo port install curl" should have activated curl. "sudo port -f activate curl" should not have been necessary. You should almost never have to force an activation.

comment:19 in reply to:  17 Changed 9 years ago by pv_fua@…

None were provided by MacPorts and I removed them all, which seems to have fixed the problem. I then was able to install both curl and xemacs.

Thanks for your help and I think this closes this problem.

I'll bet the rest of your .la files weren't provided by MacPorts either. Let's find out by running:

port provides /opt/local/lib/*.la

For all the ones that say they were not provided by a MacPorts port, you should remove them. You may then have to rebuild other ports, in a particular order, to remove remaining references to .la files.

If any of them say they were provided by a MacPorts port, let me know which ones.

comment:20 Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)

Resolution: invalid
Status: newclosed

Ok, I'm glad you got it working.

Note: See TracTickets for help on using tickets.