#59885 closed defect (invalid)
ossp-uuid @1.6.2_11+perl5_26 build failure
Reported by: | sabinz | Owned by: | |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.6.2 |
Keywords: | catalina | Cc: | mojca (Mojca Miklavec) |
Port: | ossp-uuid perl5.26 |
Description
Dear Macports team,
Thanks so much for all your hard work in maintaining such brilliant infrastructure.
I recently upgraded to macOS Catalina, and had to rebuild my ports. I particularly need gmt6, which seems to rely on ossp-uuid. However, for some reason the ossp-uuid port fails to build. I had a look at the log file - there are some problems downloading the install file, but perhaps the mirrors work. Not sure what's going on. Any help would be appreciated.
Regards, Sabin
Attachments (1)
Change History (6)
Changed 5 years ago by sabinz
comment:1 Changed 5 years ago by jmroot (Joshua Root)
Cc: | mojca added |
---|---|
Keywords: | catalina added |
Port: | perl5.26 added |
Summary: | Cannot install ports relying on ossp-uuid → ossp-uuid @1.6.2_11+perl5_26 build failure |
comment:2 Changed 5 years ago by ryandesign (Ryan Carsten Schmidt)
Replying to sabinz:
I had a look at the log file - there are some problems downloading the install file, but perhaps the mirrors work.
We only provide archives for default variants. The default variants of this port today are +perl5_28, but you have selected +perl5_26, so that's why the files weren't there to be downloaded. So you have to build from source, which is not a big deal, and should work, but didn't:
Not sure what's going on. Any help would be appreciated.
The log shows that the error was:
:info:build clang: warning: no such sysroot directory: '/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk' [-Wmissing-sysroot] :info:build In file included from uuid.xs:30: :info:build ../uuid.h:39:10: fatal error: 'sys/types.h' file not found :info:build #include <sys/types.h> :info:build ^~~~~~~~~~~~~ :info:build 1 error generated.
Does the directory /Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk exist? It should, since it is provided by the command line tools, which you should have installed in order to use MacPorts. If you didn't, you should install them now by running xcode-select --install
.
comment:3 follow-up: 4 Changed 5 years ago by sabinz
Hey Ryan!!!
Thanks so much for looking at my log file, I really appreciate your time and help - I know it's a time of year for everyone to be resting. I was on Mojave, upgraded to Catalina, and then things broke - somewhat as they always do with an upgrade. I opened Xcode and it was fine, and I even re-accepted the license agreement in Terminal - but I think you're right about the Command Line Tools. Even when I checked software for update (in System Preferences and in the App Store), it didn't come up. It was only when I installed Homebrew that it triggered the update of Command Line Tools. Weird - that's never happened before. You're also right about that specific Perl version - I used the restore functionality in Macports, so it must have assumed that I wanted a specific variant of Perl. I tried uninstalling and wiping Macports, and reinstalling - and just installing gmt6 (allowing it to get all the dependencies). I suppose that it didn't work properly because it still called for the older version of Perl (perhaps the sudo rm -rf line doesn't work in the new zsh in Catalina...)... I then restarted the machine, and then gmt6 seemed like it was installed properly - Macports didn't find any broken links and so on.
I guess my lesson is that I should do "sudo port upgrade outdated" before any system upgrade, so that when I restore, things like this can be avoided. Sorry to have troubled you with this - hopefully others don't stumble on this issue.
Thanks again, and Merry Christmas, Sabin
comment:4 Changed 5 years ago by ryandesign (Ryan Carsten Schmidt)
Resolution: | → invalid |
---|---|
Status: | new → closed |
MacPorts preserves your chosen variants across port upgrades, and our restore instructions try to preserve them as well. So even running sudo port upgrade outdated
beforehand would not have automatically switched your ossp-uuid port from the +perl5_26 variant you had chosen (or which MacPorts had chosen for you at the time because it was the default then) to the now-default +perl5_28 variant. If you had wanted to do that, either before or after upgrading your OS, you can reinstall the port with that variant, or just don't specify a variant when installing the port and the new defaults will be used.
Having both MacPorts and Homebrew installed on the same Mac will most likely cause you problems. To avoid problems, please choose one package manager and uninstall the other. We would of course be honored if you chose to stay with MacPorts.
Since it looks like the problem was that you didn't have the command line tools installed, and it is documented that we require the command line tools, I'll close this as invalid.
comment:5 Changed 5 years ago by sabinz
Hi Ryan,
Ah that's a great tip, thanks heaps! Yep, in the end this was invalid, despite my (failed) attempts at debugging on my own. Good learning experience, that's for sure. And definitely agree, I don't want to have both package managers going, I just wanted to see if there was some deeper issue in the meantime. All good now, phew! Thanks again, you rock!!!!!!
Regards, Sabin
Macports log file