Hi,

On 04/10/2023 11:08 am, Maxim Abalenkov wrote:
Dear Murray, Chris et al.,

How are you? I’m very sorry. I didn’t mean to mislead anybody. I’m also learning. What user does MacPorts run as? Maybe it would be possible to pass these environment variables to that ‘MacPorts’ user?

Its possible for ports to define specific environment variables, which will get set during the variable phases as that port builds. see

https://guide.macports.org/#reference.phases.configure

for more details.

for the specific issue here though, the canonical fix would be to add the linker option to the ldflags for a specific port. e.g.

configure.ldflags-append  -Wl,-ld_classic

that should be done inside a check on the Xcode version, so its only applied when needed. See e.g.

https://github.com/macports/macports-ports/commit/41cce53c601d6c407a48eaf7c705b45bec848dcb

where I did just this for the root6 port, and there it fixed the issues.

This will work for ports that are well behaved and respect the build flags macports sets. Unfortunately not all ports are and I have run into a number where the above does not work (e.g. looking at you py-scipy...)

cheers Chris


—
Best wishes,
Maxim

Maxim Abalenkov \\ maxim.abalen...@gmail.com
+44 7 486 486 505 \\ www.maxim.abalenkov.uk

On 3 Oct 2023, at 21:25, Chris Jones <jon...@hep.phy.cam.ac.uk> wrote:

Hi,

Just incase any one else reads this, anything you add to your user profile will nit have any effect on port builds, as these do not run as your user. So don’t try this expecting it to fix port builds.

Chris

On 2 Oct 2023, at 4:18 pm, Maxim Abalenkov <maxim.abalen...@gmail.com> wrote:

Hello Murray,

How are you? As mentioned in the previous posts on this list, please see Apple’s comments on the new linker issue:

<developer-og.jpg>
Xcode 15 Release Notes | Apple Developer Documentation <https://developer.apple.com/documentation/xcode-release-notes/xcode-15-release-notes#Linking> developer.apple.com <https://developer.apple.com/documentation/xcode-release-notes/xcode-15-release-notes#Linking>

<https://developer.apple.com/documentation/xcode-release-notes/xcode-15-release-notes#Linking>

For now, use Xcode 15 and its command line tools and try to enforce the old linker by defining the following environment variables:

  export MACOSX_DEPLOYMENT_TARGET=12
  export OTHER_LDFLAGS=-Wl,-ld_classic

You may place them into your ~/.profile file. I hope this helps.

—
Best wishes,
Maxim

Maxim Abalenkov \\ maxim.abalen...@gmail.com
+44 7 486 486 505 \\ www.maxim.abalenkov.uk

On 2 Oct 2023, at 15:29, Murray Eisenberg <murrayeisenb...@gmail.com> wrote:

As reported at grac.macports.org <http://grac.macports.org/>, a number of ports will no longer install because configure fails with Xcode 15, which apparently has a linker issues.

Some have suggested reverting to Xcode 14.3.1, to work around those issues.

But under macOS Sonoma, that does not seem to be an option: After replacing Xcode 15 with Xcode 14.3.1, and similarly for the command-line tools, if I open Xcode 14.3.1, I get an error that this version of Xcode will not work with the OS (Sonoma).

Is there some other work-around?

---
Murray eisenbergmurrayeisenb...@gmail.com
Mobile (413)-427-5334
503 King Farm Blvd #101
Rockville, MD 20850-6667





Reply via email to