apothecary of openFrameworks https://github.com/openframeworks/openframeworks/

July 22, 2024 ยท View on GitHub

potions of C++ Libraries used in openFrameworks formulae included apothecary is a bash build system, using CMake/Bash/Make with multiple compile targets to build C++ libraries multiplatform ./apothecary/apothecary -tios -a arm64 update core

Libraries :

openssl, brotli, boost, curl, cario, assimp, fmt, freetype, glew, glfw, FreeImage, glm, json, libpng, libxml2, pugixml, pixman, poco, rtAudio, svgtiny, tess2, uriparser, videoInput, utf8, zlib, libusb

Automation

Libraries are all built securely on and thanks to @Github actions / servers and hashes are deployed alongside libraries in latest with a .pkg hash

Latest openFrameworks Libraries

https://github.com/openframeworks/apothecary/releases/tag/bleeding

  • in openFrameworks | scripts | platform download_latest_libs.sh

Stable openFrameworks 0.12 Libaries

https://github.com/openframeworks/apothecary/releases/tag/nightly

  • in openFrameworks | scripts | platform and downloaded by running the download_libs.sh

openFrameworks

apothecary, a bash build system with bash formulaes, Controlling Potions (CMake Build Commands) for Compiling all dependency Libraries for openFrameworks. Built libraries can be used by all and we try and build them all up to date and all licenses are packaged.

Build status

PlatformStatusInfoExtra Info
Windows x86_64build-vs2022-64VS2022C++2b, C17
Windows arm64build-vs2022-arm64VS2022C++2b, C17
Windows arm64ECbuild-vs2022-arm64ecVS2022C++2b, C17
Linux x86_x64completeMake, VSCodeC++2b, C17, Package Manager
Linux armv6completeMakeC++2b, C17, Package Manager
Linux armv7completeMakeC++2b, C17, Package Manager
Linux arm64MakeC++2b, C17, Package Manager
macOS x86_64build-macosXcode, VSCode.xcFrameworks, C++2b, C17
macOS arm64build-macosXcode, VSCode.xcFrameworks, C++2b, C17
emscriptenbuild-emscriptenMakeC++17, C17
emscripten memory64build-emscriptenMakeC++17, C17
iOS arm64build-iosXcode, VSCode.xcFrameworks, C++2b
iOS x86_64 Simulatorbuild-iosXcode, VSCode.xcFrameworks, C++2b
iOS arm64 Simulatorbuild-iosXcode, VSCode.xcFrameworks, C++2b
tvOS arm64build-tvosXcode, VSCode.xcFrameworks, C++2b
tvOS x86_64 Simulatorbuild-tvosXcode, VSCode.xcFrameworks, C++2b
tvOS arm64 Simulatorbuild-tvosXcode, VSCode.xcFrameworks, C++2b
visionOS arm64build-macosXcode, VSCode.xcFrameworks, C++2b
visionOS x86_64 Simulatorbuild-macosXcode, VSCode.xcFrameworks, C++2b
visionOS arm64 Simulatorbuild-macosXcode, VSCode.xcFrameworks, C++2b
macOS catOS arm64build-macosXcode, VSCode.xcFrameworks, C++2b
macOS catOS x86_64build-macosXcode, VSCode.xcFrameworks, C++2b
xcframeworksbuild-xcframeworksXcode, VSCode.xcFrameworks, C++2b, C17
Android arm64build-androidNDK 23, Android StudioCMake
Android x86_64build-androidNDK 23, Android StudioCMake
Android x86build-androidNDK 23, Android StudioCMake
Android armv7build-androidNDK 23, Android StudioCMake

and scripts in openFrameworks if working from git.

Setup your Environment to build apothecary

For your target type, run the script:

Setup your Environment to build apothecary

For your target type, run the script/osx/install.sh

Build scripts for target

For your target type, run the build and deploy scripts. This will build all the calculated formulaes required for type and install them in output dir . For macOS:

scripts/osx/build_and_deploy_all.sh

Build VS 2022:

scripts/vs/build_and_deploy_all.sh

Build iOS:

scripts/ios/build_and_deploy_all.sh

Build Android:

scripts/android/build_android_arm64.sh
scripts/android/build_android_armv7.sh
scripts/android/build_android_x86.sh
scripts/android/build_android_x86_64.sh

Running directly

To build one of the dependencies, you can run a command like this to compile OpenCV on OSX`

./apothecary/apothecary -t osx -a64 -j 6 update opencv

To build all of the dependencies, you can run a command like this for Android

./apothecary/apothecary -t android -a arm64 update core
./apothecary/apothecary -t android -a x86_64 update addons

To build all of the dependencies, you can run a command like this for macOS

./apothecary/apothecary -t osx -a arm64 update core
./apothecary/apothecary -t osx -a x86_64 update core

To build all of the dependencies, you can run a command like this for VS

./apothecary/apothecary -t vs -a arm64 update core
./apothecary/apothecary -t vs -a x86_64 update core

To build all of the dependencies, you can run a command like this for VS

./apothecary/apothecary -t emscripten update core
./apothecary/apothecary -t emscripten update addons

See the help section for more options

./apothecary/apothecary --help

2014 openFrameworks team 2013 Dan Wilcox danomatika@gmail.com supported by the CMU Studio for Creative Inquiry 2024 Dan Rosser