Cardinal icon indicating copy to clipboard operation
Cardinal copied to clipboard

(build failing) CLAP arm64 SurgeStorage

Open kevleyski opened this issue 1 year ago • 3 comments

Version

24.05

Plugin type

CLAP

OS

macOS Sonoma 14.3 M3

DAW / Host (if applicable)

No response

Description

Creating CLAP plugin for Cardinal ld: warning: ignoring duplicate libraries: '-lm', '-lsndfile' Undefined symbols for architecture arm64: "surgextghc::filesystem::is_directory(surgextghc::filesystem::path const&)", referenced from: Surge::Storage::FxUserPreset::doPresetRescan(SurgeStorage*, bool) in libsurge-common.a3 Surge::Storage::FxUserPreset::doPresetRescan(SurgeStorage*, bool) in libsurge-common.a3 SurgeStorage::SurgeStorage(SurgeStorage::SurgeStorageConfig const&) in libsurge-common.a15 SurgeStorage::createUserDirectory() in libsurge-common.a15 SurgeStorage::refresh_wtlist() in libsurge-common.a15

kevleyski avatar Aug 01 '24 01:08 kevleyski

How are you building the plugin on your system?

Maybe look at the macOS specific prerequisites for the CI builds: https://github.com/DISTRHO/Cardinal/blob/main/.github/workflows/build.yml#L159-L208

dromer avatar Aug 02 '24 17:08 dromer

This is likely due to differences in base macOS system used for the build, and the cmake flags passed into surge.

Cardinal builds target 10.15 as the minimum version, but this is not the default on cmake when doing regular builds. I just added b5daa7dfa1f3d379bad12ec665af5dee99e309b0 that might fix this, please test

falkTX avatar Sep 21 '24 18:09 falkTX

FWIW: I'm also getting this error with a freshly cloned copy of the repo (i.e. all the surgextghc:::filesystem symbols)

Creating CLAP plugin for Cardinal
ld: warning: ignoring duplicate libraries: '-lm'
Undefined symbols for architecture arm64:
  "surgextghc::filesystem::is_directory(surgextghc::filesystem::path const&)", referenced from:
      Surge::Storage::FxUserPreset::doPresetRescan(SurgeStorage*, bool) in libsurge-common.a[3](FxPresetAndClipboardManager.cpp.o)
      Surge::Storage::FxUserPreset::doPresetRescan(SurgeStorage*, bool) in libsurge-common.a[3](FxPresetAndClipboardManager.cpp.o)
      SurgeStorage::SurgeStorage(SurgeStorage::SurgeStorageConfig const&) in libsurge-common.a[15](SurgeStorage.cpp.o)```

SilverTab avatar Feb 05 '25 13:02 SilverTab