2026 Clean pass to avoid homebrew for libsodium and pkg-config, also cmake built from source on MacOS
This commit is contained in:
parent
7e611f3bbc
commit
4420912b17
139
README.md
139
README.md
@ -33,21 +33,6 @@ stat
|
|||||||
Server response: Saturn | Elapsed: 41s | Progress: 22.65%
|
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
|
# Build
|
||||||
```
|
```
|
||||||
workdir/
|
workdir/
|
||||||
@ -56,77 +41,79 @@ workdir/
|
|||||||
├── libzmq/
|
├── libzmq/
|
||||||
├── cppzmq/
|
├── cppzmq/
|
||||||
├── efsw/
|
├── efsw/
|
||||||
├── belatui/
|
├── bellatui/
|
||||||
|
├── cmake/ (macos)
|
||||||
( additional Windows package manager dependency )
|
├── pkg-config/ (macos)
|
||||||
├── 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
|
|
||||||
|
|
||||||
```
|
```
|
||||||
mkdir workdir
|
|
||||||
cd workdir
|
## MacOS x64 and arm64
|
||||||
mkdir homebrew
|
|
||||||
curl -L https://github.com/Homebrew/brew/tarball/master | tar xz --strip-components 1 -C homebrew
|
```
|
||||||
eval "$(homebrew/bin/brew shellenv)"
|
# Install xcode
|
||||||
brew update --force --quiet
|
xcode-select --install
|
||||||
brew install libsodium
|
|
||||||
brew install pkg-config
|
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 ..
|
cd ..
|
||||||
git clone https://github.com/zeromq/libzmq
|
curl -LO https://downloads.bellarender.com/bella_engine_sdk-25.3.0-macos.zip
|
||||||
mkdir -p libzmq/build
|
tar -xvf bella_engine_sdk-25.3.0-macos.zip
|
||||||
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
|
# Get oom
|
||||||
make -j4
|
git clone https://git.indoodle.com/oomer/oom.git
|
||||||
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
|
|
||||||
cd bellatui
|
cd bellatui
|
||||||
|
git clone https://github.com/oomer/bellatui.git .
|
||||||
make all -j4
|
make all -j4
|
||||||
```
|
```
|
||||||
|
|
||||||
## Ubuntu Linux x64 and arm64
|
## Ubuntu Linux x64
|
||||||
|
|
||||||
### 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
|
|
||||||
```
|
```
|
||||||
|
sudo apt install -y build-essential cmake mesa-vulkan-drivers libgl1
|
||||||
mkdir workdir && cd workdir
|
mkdir workdir && cd workdir
|
||||||
mkdir libsodium libzmq cppzmq efsw bellatui
|
mkdir libsodium libzmq cppzmq efsw bellatui
|
||||||
|
|
||||||
# Build libsodium
|
# 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
|
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
|
tar xvf libsodium-1.0.20-stable.tar.gz --strip-components=1
|
||||||
./configure
|
./configure
|
||||||
@ -145,7 +132,7 @@ cmake --build ./build -j$(nproc)
|
|||||||
# Build efsw
|
# Build efsw
|
||||||
cd ../efsw && git clone https://github.com/SpartanJ/efsw.git .
|
cd ../efsw && git clone https://github.com/SpartanJ/efsw.git .
|
||||||
cmake -B ./build
|
cmake -B ./build
|
||||||
make -j$(nproc)
|
cmake --build ./build -j$(nproc)
|
||||||
|
|
||||||
# Get bella sdk
|
# Get bella sdk
|
||||||
cd ..
|
cd ..
|
||||||
@ -156,7 +143,6 @@ tar -xvf bella_engine_sdk-25.3.0-linux.tar.gz
|
|||||||
cd ..
|
cd ..
|
||||||
git clone https://git.indoodle.com/oomer/oom.git
|
git clone https://git.indoodle.com/oomer/oom.git
|
||||||
|
|
||||||
|
|
||||||
# Build bellatui
|
# Build bellatui
|
||||||
cd ../bellatui
|
cd ../bellatui
|
||||||
git clone https://github.com/oomer/bellatui.git .
|
git clone https://github.com/oomer/bellatui.git .
|
||||||
@ -165,7 +151,6 @@ make all -j$(nproc)
|
|||||||
|
|
||||||
[TODO]
|
[TODO]
|
||||||
Fix in Makefile
|
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/
|
cp ../libzmq/build/lib/libzmq.so.5 bin/Linux/release/
|
||||||
|
|
||||||
# Windows
|
# Windows
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user