AztecProtocol / aztec-packages

Apache License 2.0
204 stars 234 forks source link

`bb` build system does not enforce that published binaries are usable on user systems #4190

Open TomAFrench opened 10 months ago

TomAFrench commented 10 months ago

See linked issue: https://github.com/noir-lang/noir/issues/4132

The crux of this issue is that nargo installs bb to act as a backend however aztec-packages does not expose a simple method to install bb while ensuring that the installer's environment supplies all of bb's dependencies.

The release process for bb should ensure that bb can be easily installed and used on target versions of ubuntu/mac, etc. If dependencies exist which are not provided by standard in these environments then the bb installation method should install these rather than pushing that onto the user.

Savio-Sou commented 9 months ago

A Noir user also reported the need to manually install libc++-dev in order to unblock himself from running nargo prove with barretenberg.

Discord thread: https://discord.com/channels/1113924620781883405/1204286987843018832/1204427488781144125 (Invite link for joining Noir Discord: https://discord.gg/JtqzkdeQ6G)

Savio-Sou commented 8 months ago

This existed when libc++-dev version required by bb is newer than the version in certain ubuntu/mac version that users are on.

Now that ubuntu/mac is updated with newer libc++-dev this comes up less frequently amongst users, but would still be good to tackle this to make sure the possibility of such version gap won't plague us again down the road.