Opened 2 years ago

Last modified 2 years ago

#64494 assigned defect

sqlite3 @3.37.2_0: configure fails installing +universal variant — at Version 6

Reported by: bal-agates Owned by: Schamschula (Marius Schamschula)
Priority: Low Milestone:
Component: ports Version: 2.7.1
Keywords: Cc:
Port: sqlite3

Description (last modified by bal-agates)

Attached are a sqlite3 config.log and main.log where the config failed. The failure appears to due to a compiler test trying to build an x86_64 object while linking against a library (/opt/local/lib/libunwind.dylib) that is only built for arm64.

I am not sure how to solve this. Is this a config tool problem or port problem? I suppose one of those could have a dependency added to make sure whatever port is providing libundind.dylib checks that it is built universal?

I put this at low priority because this doesn't really affect me. It was the result of another port errantly wanting to rebuild everything "+universal". See #64488.

Change History (8)

Changed 2 years ago by bal-agates

Attachment: sqlite3-config.log added

sqlite3 config.log showing failure

Changed 2 years ago by bal-agates

Attachment: sqlite3-main.log added

sqlite3 main.log showing failure

comment:1 Changed 2 years ago by jmroot (Joshua Root)

Keywords: sqlite3 universal removed
Owner: set to Schamschula
Status: newassigned

comment:2 Changed 2 years ago by jmroot (Joshua Root)

What does port provides /opt/local/lib/libunwind.dylib say?

comment:3 Changed 2 years ago by Schamschula (Marius Schamschula)

Or perhaps file /opt/local/lib/libunwind.1.dylib?

To my knowledge sqlite3 is not built using libunwind. Perhaps the configure script opportunistically finds it?

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

Description: modified (diff)

Right... libunwind probably gets used opportunistically by a lot of stuff. Either uninstall libunwind or build it universal before trying to build something else universal that might use it.

comment:5 Changed 2 years ago by kencu (Ken)

having that ancient libunwind installed on an M1 system can only cause havoc.

Goodness knows how it ever got there. Now that it is there, the linker finds it first (as that is the link order that has been set up) but you should never have it installed. It is from about 6 years ago.

Just uninstall it. If something complains, let MacPorts know.

The libunwind port should be modified to not allow installation on anything newer than SnowLeopard.

comment:6 Changed 2 years ago by bal-agates

Description: modified (diff)
$ port provides /opt/local/lib/libunwind.dylib
/opt/local/lib/libunwind.dylib is provided by: libunwind

I am not sure what libunwind is. After encountering the sqlite3 issue I updated my ports a got the message

Error: libgcc-devel cannot be built while libunwind-headers is active.
Error: Please forcibly deactivate libunwind-headers, e.g. by running:
Error: 
Error:     sudo port -f deactivate libunwind-headers
Error: 
Error: Then try again. You can reactivate libunwind-headers again later.

Possible multiple ports provide the same thing? I inactivated libunwind-headers, upgraded libgcc-devel, that activated libunwind-headers. That seemed to work. So they might be related to gcc?

$ port rdependents libunwind
The following ports are dependent on libunwind:
  PDAL
    grass7
      qgis3

I suspect "configure script opportunistically finds it" is true.

Note: See TracTickets for help on using tickets.