diff --git a/README.md b/README.md index e9dbc0f..bfd5fb7 100644 --- a/README.md +++ b/README.md @@ -33,21 +33,6 @@ stat Server response: Saturn | Elapsed: 41s | Progress: 22.65% ``` -### Precompiled Binaries - -[Windows](https://a4g4.c14.e2-1.dev/bellatui/bellatui-windows.zip) - -[MacOS](https://a4g4.c14.e2-1.dev/bellatui/bellatui-mac.zip) -``` -Apple Gatekeeper blocks non-notarized executables by default. -``` - -[Ubuntu Linux](https://a4g4.c14.e2-1.dev/bellatui/bellatui-linux.tar.gz) -``` -apt install -y libsodium-dev -``` - - # Build ``` workdir/ @@ -56,77 +41,79 @@ workdir/ ├── libzmq/ ├── cppzmq/ ├── efsw/ -├── belatui/ - -( additional Windows package manager dependency ) -├── vcpkg/ - -( additional MacOS package manager dependency ) -└── homebrew/ -``` - -## MacOS -Install Cmake to /Applications -``` -curl -LO https://github.com/Kitware/CMake/releases/download/v3.31.6/cmake-3.31.6-macos-universal.dmg -open cmake-3.31.6-macos-universal.dmg -``` -Install Xcode +├── bellatui/ +├── cmake/ (macos) +├── pkg-config/ (macos) ``` -mkdir workdir -cd workdir -mkdir homebrew -curl -L https://github.com/Homebrew/brew/tarball/master | tar xz --strip-components 1 -C homebrew -eval "$(homebrew/bin/brew shellenv)" -brew update --force --quiet -brew install libsodium -brew install pkg-config + +## MacOS x64 and arm64 + +``` +# Install xcode +xcode-select --install + +mkdir workdir && cd workdir +mkdir cmake libsodium pkg-config libzmq cppzmq efsw bellatui + +# Build cmake +cd cmake +git clone https://github.com/Kitware/CMake.git . +./configure +make -j$(sysctl -n hw.ncpu) + +# Build libsodium +cd ../libsodium +curl -LO https://download.libsodium.org/libsodium/releases/libsodium-1.0.20-stable.tar.gz +tar xvf libsodium-1.0.20-stable.tar.gz --strip-components=1 +./configure +./configure --prefix=$(pwd)/install +make -j$(sysctl -n hw.ncpu) +install_name_tool -id @rpath/libsodium.26.dylib src/libsodium/.libs/libsodium.26.dylib + +# Build pkg-config +cd ../pkg-config +curl -LO https://pkgconfig.freedesktop.org/releases/pkg-config-0.29.2.tar.gz +tar xvf pkg-config-0.29.2.tar.gz --strip-components=1 +LDFLAGS="-framework CoreFoundation -framework Carbon" CFLAGS="-Wno-int-conversion" CXXFLAGS="-Wno-int-conversion" ./configure --with-internal-glib +make -j$(sysctl -n hw.ncpu) + +# Build libzmq +cd ../libzmq && git clone https://github.com/zeromq/libzmq . +../cmake/bin/cmake -B ./build -DENABLE_DRAFTS=OFF -DWITH_TLS=OFF -DENABLE_CURVE=ON -DWITH_LIBSODIUM=ON -DSODIUM_INCLUDE_DIRS=../libsodium/src/libsodium/include -DSODIUM_LIBRARIES=../libsodium/src/libsodium/.libs/libsodium.dylib -DPKG_CONFIG_EXECUTABLE=../pkg-config/pkg-config +/Applications/CMake.app/Contents/bin/cmake --build ./build -j$(sysctl -n hw.ncpu) + +# Build cppzmq +cd ../cppzmq && git clone https://github.com/zeromq/cppzmq . +../cmake/bin/cmake -B ./build -DZeroMQ_LIBRARY=../libzmq/build/lib/libzmq.dylib -DZeroMQ_INCLUDE_DIR=../libzmq/include +../cmake/bin/cmake --build ./build -j$(sysctl -n hw.ncpu) + +# Build efsw +cd ../efsw && git clone https://github.com/SpartanJ/efsw.git . +../cmake/bin/cmake -B ./build +../cmake/bin/cmake --build ./build -j$(sysctl -n hw.ncpu) + +# Get bella sdk cd .. -git clone https://github.com/zeromq/libzmq -mkdir -p libzmq/build -cd libzmq/build -/Applications/CMake.app/Contents/bin/cmake .. -DENABLE_CURVE=ON -DWITH_LIBSODIUM=../../homebrew/Cellar/libsodium/1.0.20/include/sodium -DSODIUM_INCLUDE_DIRS=~/homebrew/Cellar/libsodium/1.0.20/include -DSODIUM_LIBRARIES=~/homebrew/Cellar/libsodium/1.0.20/lib/libsodium.a -make -j4 -cd ../.. -git clone https://github.com/zeromq/cppzmq -git clone https://github.com/SpartanJ/efsw.git -mkdir -p efsw/build -cd efsw/build -/Applications/CMake.app/Contents/bin/cmake .. -make -j4 -cd ../.. -git clone https://github.com/oomer/bellatui.git +curl -LO https://downloads.bellarender.com/bella_engine_sdk-25.3.0-macos.zip +tar -xvf bella_engine_sdk-25.3.0-macos.zip + +# Get oom +git clone https://git.indoodle.com/oomer/oom.git + cd bellatui +git clone https://github.com/oomer/bellatui.git . make all -j4 ``` -## Ubuntu Linux x64 and arm64 - -### bella_engine_sdk -``` -curl -O https://downloads.bellarender.com/bella_engine_sdk-24.6.0.tar.gz -tar -xvf bella_engine_sdk-24.6.0.tar.gz -``` - -#### ubuntu dependencies -``` -apt install -y build-essential -apt install -y libx11-dev -apt install -y libgl1-mesa-dev -apt install -y libtool -apt install -y libsodium-dev -apt install -y cmake -apt install pkg-config -``` - -### building libzmq cppzmq +## Ubuntu Linux x64 ``` +sudo apt install -y build-essential cmake mesa-vulkan-drivers libgl1 mkdir workdir && cd workdir mkdir libsodium libzmq cppzmq efsw bellatui # Build libsodium -cd libsodium && git clone https://github.com/jedisct1/libsodium.git +cd libsodium wget https://download.libsodium.org/libsodium/releases/libsodium-1.0.20-stable.tar.gz tar xvf libsodium-1.0.20-stable.tar.gz --strip-components=1 ./configure @@ -145,7 +132,7 @@ cmake --build ./build -j$(nproc) # Build efsw cd ../efsw && git clone https://github.com/SpartanJ/efsw.git . cmake -B ./build -make -j$(nproc) +cmake --build ./build -j$(nproc) # Get bella sdk cd .. @@ -156,7 +143,6 @@ tar -xvf bella_engine_sdk-25.3.0-linux.tar.gz cd .. git clone https://git.indoodle.com/oomer/oom.git - # Build bellatui cd ../bellatui git clone https://github.com/oomer/bellatui.git . @@ -165,7 +151,6 @@ make all -j$(nproc) [TODO] Fix in Makefile -cp ../bella_engine_sdk/lib/libdl_usd_ms.so bin/Linux/release/ cp ../libzmq/build/lib/libzmq.so.5 bin/Linux/release/ # Windows