Page 1 of 1

How to build LinuxSampler on macOS

Posted: Tue Jan 25, 2022 10:50 am
by georgeero
I've tried building LinuxSampler but the instructions in the README on GitHub seem to be out of date. I run the following commands:

Code: Select all

linuxsampler/osx $ sudo ln -s /Users/grol/dev/MacOSX10.4u.sdk /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.4u.sdk
linuxsampler/osx $ xcodebuild build
...
checking CoreMIDI/CoreMIDI.h usability... no
checking CoreMIDI/CoreMIDI.h presence... no
checking for CoreMIDI/CoreMIDI.h... no
checking CoreAudio/CoreAudio.h usability... no
checking CoreAudio/CoreAudio.h presence... yes
configure: WARNING: CoreAudio/CoreAudio.h: present but cannot be compiled
configure: WARNING: CoreAudio/CoreAudio.h:     check for missing prerequisite headers?
configure: WARNING: CoreAudio/CoreAudio.h: see the Autoconf documentation
configure: WARNING: CoreAudio/CoreAudio.h:     section "Present But Cannot Be Compiled"
configure: WARNING: CoreAudio/CoreAudio.h: proceeding with the compiler's result
checking for CoreAudio/CoreAudio.h... no
...
No supported MIDI input system found!
Sorry, LinuxSampler only supports the following MIDI drivers at the moment:
ALSA, JACK, MIDIShare, CoreMIDI, MME.
If you think you have one of those available on your system, make sure you
also have the respective development (header) files installed.

CreateBuildDirectory /Users/grol/dev/linuxsampler/osx/build/Development
    cd /Users/grol/dev/linuxsampler/osx/linuxsampler.xcodeproj
    builtin-create-build-directory /Users/grol/dev/linuxsampler/osx/build/Development
As above the CodeMidi and CoreAudio headers are rejected, and I'm not sure how to proceed.

Bonus question 1

Is there perhaps a CI pipeline I could have a look at instead?

Bonus question 2

One of the reasons I'm trying to build it myself is to debug an issue with the CoreMidi driver. I am only able to create one device with one port. I'm not even sure which MIDI device on the system it represents. Perhaps someone knows how to solve this issue?

Code: Select all

$ telnet localhost 8888
CREATE MIDI_INPUT_DEVICE COREMIDI
OK[0]

GET MIDI_INPUT_DEVICE INFO 0
DRIVER: COREMIDI
ACTIVE: true
PORTS: 1
.