Opened 6 years ago

Closed 6 years ago

#57312 closed defect (fixed)

gcl @2.6.12: ld: library not found for -lgcc_s.10.4

Reported by: rlhamil Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone:
Component: ports Version: 2.5.4
Keywords: mojave Cc:
Port: gcl

Description

log file attached.

Attachments (1)

main.log-gcl.txt (33.6 KB) - added by rlhamil 6 years ago.

Download all attachments as: .zip

Change History (4)

Changed 6 years ago by rlhamil

Attachment: main.log-gcl.txt added

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

Port: gcl added; gal removed

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

Summary: gcl @2.6.12 build fails on mojavegcl @2.6.12: ld: library not found for -lgcc_s.10.4

Because of using an old deployment target. We should patch it to not override MacPorts' choice of deployment target.

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

Owner: set to ryandesign
Resolution: fixed
Status: newclosed

In 40b9b64f091a082167b4152571eaf3f183a8b889/macports-ports (master):

gcl: Do not override the deployment target

The build system sets MACOSX_DEPLOYMENT_TARGET to 10.2. This was done
when Mac support was originally added back in July 2003:

http://git.savannah.gnu.org/cgit/gcl.git/commit/?id=b54cbfe43d04f84c53c6e211a763b8e02185f4fc

At that time the current version of Mac OS X was 10.2 and the default
value of MACOSX_DEPLOYMENT_TARGET was 10.1, which was apparently too
old for gcl so they changed it to 10.2.

Meanwhile, macOS Mojave does not support deployment targets that old so
I've removed this setting from the build system to allow the value set
by MacPorts (which matches the macOS version) to be used.

The build fails if the deployment target is 10.6 or later, which I fixed
by adding -fno-pie to CFLAGS and LDFLAGS, per a suggestion I found in a
ticket with a similar error message about emacs.

Closes: #57312

The build system also overrides the compiler, for reasons which appear
no longer to be relevant. We already had a patch to remove this override
on Intel. I've expanded that patch to include PowerPC.

Also disable the universal variant because it fails to configure.

Also prevent building while the port is active due to a different value
being detected for EMACS_DEFAULT_EL at configure time if the port is
already active, resulting in a destroot failure.

Note: See TracTickets for help on using tickets.