# Is there a way to find out the compilation details of binary artifacts shipped with a package?

**URL:** https://discourse.julialang.org/t/is-there-a-way-to-find-out-the-compilation-details-of-binary-artifacts-shipped-with-a-package/98987
**Category:** General Usage
**Tags:** package, fftw, binarybuilder
**Created:** [May 17, 2023, 8:32am UTC](https://discourse.julialang.org/t/is-there-a-way-to-find-out-the-compilation-details-of-binary-artifacts-shipped-with-a-package/98987 "2023-05-17T08:32:07Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![vvbond](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/vvbond/32/10105_2.png) [@vvbond](https://discourse.julialang.org/u/vvbond)
#### Post date: [May 17, 2023, 8:32am UTC](https://discourse.julialang.org/t/is-there-a-way-to-find-out-the-compilation-details-of-binary-artifacts-shipped-with-a-package/98987/1 "2023-05-17T08:32:07Z")

</div>

My particular use case concerns the FFTW library shipped with the FFTW.jl package, but my interest is general.

Investigating performance of a FFT-based signal processing pipeline implemented in c++, I’ve noticed a performance gain when linking against `libfftw3f` from FFTW.jl as opposed to linking against my custom-built library. Therefore, I’m curious how exactly the FFTW.jl’s version was compiled for a given platform.

I’ve searched the [FFTW.jl](https://github.com/JuliaMath/FFTW.jl) repo for some clues, but to no avail. I assume it makes use of [BinaryBuilder](https://binarybuilder.org/), but not sure how to proceed with the investigation.

Hence the question: is there a consistent way to get to this kind of details about shipped binaries?

---

<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: [May 17, 2023, 9:16am UTC](https://discourse.julialang.org/t/is-there-a-way-to-find-out-the-compilation-details-of-binary-artifacts-shipped-with-a-package/98987/2 "2023-05-17T09:16:15Z")

</div>

The package providing the binary library is called FFTW\_jll:

> <https://github.com/JuliaMath/FFTW.jl/blob/e4a00b1d410a78288d4c3a4fd19202a78536458b/Project.toml#L7>

If you then go to the repository of [`FFTW_jll`](https://github.com/JuliaBinaryWrappers/FFTW_jll.jl) in the README you’ll find the link to the [originating `build_tarballs.jl`](https://github.com/JuliaPackaging/Yggdrasil/blob/9b47a018c828d07c801223fec00df12da4c9589e/F/FFTW/build_tarballs.jl) which is the script used to compile the library and has the information you’re looking for.

---

<div class="post-metadata">

### Author: ![vvbond](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/vvbond/32/10105_2.png) [@vvbond](https://discourse.julialang.org/u/vvbond)
#### Post date: [May 17, 2023, 9:24am UTC](https://discourse.julialang.org/t/is-there-a-way-to-find-out-the-compilation-details-of-binary-artifacts-shipped-with-a-package/98987/3 "2023-05-17T09:24:42Z")

</div>

Thanks a lot for help @giordano. The info was right in front of me.

Here is a brief summary for my own reference:

The right place to delve into Julia’s packages is [https://github.com/JuliaPackaging](https://github.com/JuliaPackaging). The recipes for BinaryBuilder-built binaries are found at [https://github.com/JuliaPackaging/Yggdrasil](https://github.com/JuliaPackaging/Yggdrasil).

Information relevant to my particular use case regarding FFTW.jl can be found at [https://github.com/JuliaPackaging/Yggdrasil/tree/master/F/FFTW](https://github.com/JuliaPackaging/Yggdrasil/tree/master/F/FFTW) which is also referenced by the [FFTW\_jll binary wrapper](https://github.com/JuliaBinaryWrappers/FFTW_jll.jl) - the actual package providing the libfftw3 binaries.
