# Providing artifacts/libraries for unsupported platforms (e.g. Apple Silicon)

**URL:** https://discourse.julialang.org/t/providing-artifacts-libraries-for-unsupported-platforms-e-g-apple-silicon/75411
**Category:** General Usage
**Tags:** mac-m1, apple
**Created:** [January 29, 2022, 9:50am UTC](https://discourse.julialang.org/t/providing-artifacts-libraries-for-unsupported-platforms-e-g-apple-silicon/75411 "2022-01-29T09:50:31Z")
**Posts on this page:** 6
**Page:** 1

<div class="post-metadata">

### Author: ![Hawkes](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/hawkes/32/22365_2.png) [@Hawkes](https://discourse.julialang.org/u/Hawkes)
#### Post date: [January 29, 2022, 9:50am UTC](https://discourse.julialang.org/t/providing-artifacts-libraries-for-unsupported-platforms-e-g-apple-silicon/75411/1 "2022-01-29T09:50:32Z")

</div>

Hi,

as I have recently switched to a MBP with Apple M1 I have experienced some issues with packages relying on Artifacts/JLL packages which do not yet include a wrapper in their JLL package.  
In particular I have encountered these issues while trying to use LibSerialPort and NetCDF/NCDatasets. There are no errors/warnings when installing these packages but they will fail as soon as the C-DLL is called using ccall.

Is it possible to manually provide the path to the library locally for the package? I have already read the documentation on overriding Artifacts locations ([8. Artifacts · Pkg.jl](https://pkgdocs.julialang.org/dev/artifacts/#Overriding-artifact-locations-1)) but it seems this is not enough as the library is still not found by the LibSerialPort package. I have installed the library locally using Homebrew. I have the same problem with providing NetCDF.

Thanks!

---

<div class="post-metadata">

### Author: ![gbaraldi](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/gbaraldi/32/22101_2.png) [@gbaraldi](https://discourse.julialang.org/u/gbaraldi)
#### Post date: [January 29, 2022, 4:33pm UTC](https://discourse.julialang.org/t/providing-artifacts-libraries-for-unsupported-platforms-e-g-apple-silicon/75411/2 "2022-01-29T16:33:05Z")

</div>

Hi, I updated the jll packages of both libs and they should be working. They pass their own tests at least.

---

<div class="post-metadata">

### Author: ![Hawkes](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/hawkes/32/22365_2.png) [@Hawkes](https://discourse.julialang.org/u/Hawkes)
#### Post date: [January 29, 2022, 4:48pm UTC](https://discourse.julialang.org/t/providing-artifacts-libraries-for-unsupported-platforms-e-g-apple-silicon/75411/3 "2022-01-29T16:48:12Z")

</div>

Awesome!

Just out of curiosity: Is there another option just in case there is no one around for updating Yggdrasil? 😉

---

<div class="post-metadata">

### Author: ![carstenbauer](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/carstenbauer/32/4981_2.png) [@carstenbauer](https://discourse.julialang.org/u/carstenbauer)
#### Post date: [January 29, 2022, 5:41pm UTC](https://discourse.julialang.org/t/providing-artifacts-libraries-for-unsupported-platforms-e-g-apple-silicon/75411/4 "2022-01-29T17:41:31Z")

</div>

I wonder why the Overrides.toml approach didn’t work for you. I’ve used it before with success (in a different context). Maybe you can elaborate a bit what you tried.

---

<div class="post-metadata">

### Author: ![giordano](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/giordano/32/2166_2.png) [@giordano](https://discourse.julialang.org/u/giordano)
#### Post date: [January 29, 2022, 5:59pm UTC](https://discourse.julialang.org/t/providing-artifacts-libraries-for-unsupported-platforms-e-g-apple-silicon/75411/5 "2022-01-29T17:59:02Z")

</div>

I don’t think at the moment there is any way to override/provide the libraries for platforms that the JLL package itself doesn’t support

---

<div class="post-metadata">

### Author: ![Hawkes](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/hawkes/32/22365_2.png) [@Hawkes](https://discourse.julialang.org/u/Hawkes)
#### Post date: [January 29, 2022, 9:32pm UTC](https://discourse.julialang.org/t/providing-artifacts-libraries-for-unsupported-platforms-e-g-apple-silicon/75411/6 "2022-01-29T21:32:07Z")

</div>

> [@carstenbauer](#):
>
> I wonder why the Overrides.toml approach didn’t work for you. I’ve used it before with success (in a different context). Maybe you can elaborate a bit what you tried.

I think the reason is that no “Product” is provided if the target platform is not supported by the JLL package. I’ve tried to use an Override.toml with the following content for LibSerialPort.

```julia
[220460dc-b50e-5ed0-8176-09b0fd261e90]
libserialport = "/opt/homebrew/Cellar/libserialport/"

```

The file was parsed by Pkg (I know that because I had a syntax error which lead to an error with Pkg).

Thanks again to @gbaraldi for updating the packages.
