Opened 6 months ago

Closed 3 months ago

#68840 closed defect (worksforme)

librsvg @2.56.3_0 command execution fails during install on Sonoma

Reported by: docgawnz Owned by: mascguy (Christopher Nielsen)
Priority: Normal Milestone:
Component: ports Version: 2.8.1
Keywords: sonoma arm64 Cc:
Port: librsvg

Description

Port fails to install after all suggested troubleshooting steps (rebuilding cargo and rust, etc). Fresh install of macports after Sonoma update. Everything else building fine.

bash-3.2# port -s install librsvg
--->  Computing dependencies for librsvg
--->  Building librsvg
Error: Failed to build librsvg: command execution failed 

Attachments (1)

main.log (1.0 MB) - added by docgawnz 6 months ago.
Build log

Download all attachments as: .zip

Change History (8)

Changed 6 months ago by docgawnz

Attachment: main.log added

Build log

comment:1 Changed 6 months ago by docgawnz

This is for arm64

comment:2 Changed 6 months ago by ryandesign (Ryan Carsten Schmidt)

Keywords: sonoma arm64 added
Owner: set to mascguy
Status: newassigned

I see this in the log:

:info:build clang: error: no such file or directory: '/usr/local/lib/libintl.dylib'
:info:build clang: error: no such file or directory: '/usr/local/lib/libiconv.dylib'

Do you have anything installed in /usr/local? If so, remove it; see wiki:FAQ#usrlocal.

comment:3 Changed 6 months ago by docgawnz

I did attempt install -t as well, presumably deleting the entirety of /usr/local would be a terrible idea

comment:4 Changed 6 months ago by kencu (Ken)

If /usr/local is being populated due to homebrew, then you must delete homebrew if you want to use macports.

/usr/local is on the default search path for compilers, and it nearly impossible to avoid software installed in there, as it will be found by the compiler's built-in search paths.

So yes, deleting the entirety of /usr/local is required if you want to use macports.

However, it is reasonably possible to use both homebrew and macports now that homebrew (on arm64 at least) installs into /opt/homebrew instead of /usr/local. In that case, you can avoid cross-pollenation if you keep your wits about you.

comment:5 in reply to:  4 Changed 6 months ago by ryandesign (Ryan Carsten Schmidt)

Even though Homebrew installs to /opt/homebrew on arm64, MacPorts ports might inadvertently find it there, for example due to #64111.

comment:6 Changed 5 months ago by kencu (Ken)

so far, cmake is the only build tool I’ve found that is hard-coded to include homebrew by default. I fixed that some months ago for cmake-devel, but that has yet to roll out to the cmake port itself.

I have seen quite a few cmakelists.txt that hardcode homebrew paths, though, so no doubt you have to stay alert should you try to do this.

I have been using both for years now, though.

comment:7 Changed 3 months ago by kencu (Ken)

Resolution: worksforme
Status: assignedclosed

librsvg builds and works on every system MacPorts supports:

https://ports.macports.org/port/librsvg/details/

so this issue must be due to the software installation in /usr/local, and we can't debug that one.

Note: See TracTickets for help on using tickets.