Opened 10 years ago
Closed 10 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)
Change History (25)
Changed 10 years ago by pv_fua@…
comment:1 follow-up: 3 Changed 10 years ago by ryandesign (Ryan Carsten Schmidt)
Description: | modified (diff) |
---|---|
Port: | curl added |
Please clean curl and then try again.
comment:2 Changed 10 years ago by ryandesign (Ryan Carsten Schmidt)
Description: | modified (diff) |
---|
comment:3 follow-up: 6 Changed 10 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 10 years ago by ryandesign (Ryan Carsten Schmidt)
Ok, please attach the new main.log.
comment:5 follow-up: 7 Changed 10 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | ryandesign@… added |
---|
Cc Me!
Changed 10 years ago by pv_fua@…
Attachment: | main.3.log added |
---|
comment:7 Changed 10 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
comment:8 Changed 10 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 follow-up: 10 Changed 10 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.
comment:10 Changed 10 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 follow-up: 12 Changed 10 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 10 years ago by pv_fua@…
Result or running "sudo grep /opt/local/lib/libintl.la -r /opt/local > ~/Desktop/grep.log"
comment:12 follow-up: 13 Changed 10 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
comment:13 follow-up: 15 Changed 10 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 10 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.
comment:15 follow-up: 16 Changed 10 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 follow-up: 18 Changed 10 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 follow-up: 19 Changed 10 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 Changed 10 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 Changed 10 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/*.laFor 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 10 years ago by ryandesign (Ryan Carsten Schmidt)
Resolution: | → invalid |
---|---|
Status: | new → closed |
Ok, I'm glad you got it working.
Log file