Are the binaries ready? #1

Open
opened 2026-10-29 19:03:52 +01:00 by soegaard · 6 comments

Hi.

To demonstrate the Racket bindings for Skia, I have made a small "Bad Apple!!" demo.
I wanted to use racket-audio for sound, but would prefer automatic installation of the shared libraries.

Poking around, I found "racket-audio-native-libs" which seems to be the solution.
But I don't see it on the package server.

Have I missed something?

/Jens Axel

Hi. To demonstrate the Racket bindings for Skia, I have made a small "Bad Apple!!" demo. I wanted to use `racket-audio` for sound, but would prefer automatic installation of the shared libraries. Poking around, I found "racket-audio-native-libs" which seems to be the solution. But I don't see it on the package server. Have I missed something? /Jens Axel
Owner

Hi Jens,

On MacOS I decided that it would probably be most convenient to use homebrew.
On linux, e.g. debian, apt would be preferable.
So in the end I only provided native libs for windows.

https://git.dijkewijk.nl/hans/racket-audio/src/branch/main/private/utils.rkt

Best wishes,

Hi Jens, On MacOS I decided that it would probably be most convenient to use homebrew. On linux, e.g. debian, apt would be preferable. So in the end I only provided native libs for windows. https://git.dijkewijk.nl/hans/racket-audio/src/branch/main/private/utils.rkt Best wishes,
Author

Hi Hans,

It would be more convenient (for me as a user of racket-audio) that the
binaries were installed automatically.

Now, I need to add an installation section.
And I also need to handle the situation where my program is run without audio libraries available.

I do understand that shared libraries are a pain to maintain though.

Best wishes,
Jens Axel

Hi Hans, It would be more convenient (for me as a user of racket-audio) that the binaries were installed automatically. Now, I need to add an installation section. And I also need to handle the situation where my program is run without audio libraries available. I do understand that shared libraries are a pain to maintain though. Best wishes, Jens Axel
Owner

I'll look into it. Problem is that I do not really have a Mac. My wife has one, but it's her Macbook. Maybe it's possible to use the homebrew stuff. The current solution downloads pre-compiled libraries (windows version) and puts them somewhere in the prefs/cache section of racket. What would you prefer?

I'll look into it. Problem is that I do not really have a Mac. My wife has one, but it's her Macbook. Maybe it's possible to use the homebrew stuff. The current solution downloads pre-compiled libraries (windows version) and puts them somewhere in the prefs/cache section of racket. What would you prefer?
Author

I have a mac, so maybe I can help?

Recently, I have been working on Racket bindings for the graphics library Skia.
I had an AI setup tests for all platforms (macOS, Windows and Linux) on Github Actions.
So usually, I just run the macOS tests locally before I push - and then I look at Github Actions to see if anything needs attention on the other platforms.

Wrt the question of which binaries to use:
It's a bit tricky to use brew binaries, since they often depend on other brew binaries.

For Skia I was lucky that the binaries were distributed as "releases" on github.

I'll check the audio repos and see if they also distribute binaries.

I have a mac, so maybe I can help? Recently, I have been working on Racket bindings for the graphics library Skia. I had an AI setup tests for all platforms (macOS, Windows and Linux) on Github Actions. So usually, I just run the macOS tests locally before I push - and then I look at Github Actions to see if anything needs attention on the other platforms. Wrt the question of which binaries to use: It's a bit tricky to use brew binaries, since they often depend on other brew binaries. For Skia I was lucky that the binaries were distributed as "releases" on github. I'll check the audio repos and see if they also distribute binaries.
Author

I begin to see why you settled on Brew.
There are bindings for quite a few libraries in racket-audio.
And it seems most of the the projects only distribute source.

Should I experiment with building binaries on Github Actions?
Then the results could be distributed from this repo?

I begin to see why you settled on Brew. There are bindings for quite a few libraries in racket-audio. And it seems most of the the projects only distribute source. Should I experiment with building binaries on Github Actions? Then the results could be distributed from this repo?
Owner

Sounds good to me! I think that the number of dependencies will be quite low for these libraries. Maybe it’s also possible to just copy the homebrew ones. Although I don’t know the compiler optioneel for the minimal OS X version it uses.

Sounds good to me! I think that the number of dependencies will be quite low for these libraries. Maybe it’s also possible to just copy the homebrew ones. Although I don’t know the compiler optioneel for the minimal OS X version it uses.
Sign in to join this conversation.
No Label
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: hans/racket-audio-native-libs#1