38 lines
1.2 KiB
Bash
38 lines
1.2 KiB
Bash
#!/bin/bash
|
|
# build_observer.sh — build the observer daemon under WSL/Linux.
|
|
# The daemon uses Linux flags and relies on libzmq + NVML on WSL's system include path.
|
|
# Do NOT build with Windows nvcc + cl.exe — it can't find zmq.h/nvml.h.
|
|
#
|
|
# Prereqs (one-time, inside WSL):
|
|
# sudo apt install -y libzmq3-dev
|
|
# (NVML header nvml.h ships with the CUDA toolkit at /usr/local/cuda)
|
|
#
|
|
# Run from inside WSL: bash /mnt/d/resonance-engine-active/build_observer.sh
|
|
set -e
|
|
|
|
export PATH=/usr/local/cuda/bin:$PATH
|
|
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
|
|
|
|
SRC=/mnt/d/resonance-engine-active/cuda/khra_gixx_1024_v5_observer.cu
|
|
OUT=/mnt/d/resonance-engine-active/build/khra_gixx_1024_v5_observer
|
|
|
|
echo "=== Building observer daemon (WSL) ==="
|
|
echo "nvcc: $(which nvcc)"
|
|
nvcc --version | grep release || true
|
|
echo "source: $SRC"
|
|
mkdir -p /mnt/d/resonance-engine-active/build
|
|
|
|
nvcc "$SRC" \
|
|
-o "$OUT" \
|
|
-lzmq -lnvidia-ml \
|
|
-O3 -g -lineinfo \
|
|
-arch=sm_89 \
|
|
-Xcompiler -rdynamic
|
|
|
|
echo ""
|
|
echo "=== BUILD COMPLETE ==="
|
|
ls -la "$OUT"
|
|
echo ""
|
|
echo "Verifying set_param feature present:"
|
|
strings "$OUT" | grep -i "set_param\|OBSERVER\|coarse" | head -5 || echo " (no set_param yet — this is the pre-knobs build)"
|