From a984b8676652db8baa6e0b3d9860f5dcdd8dd194 Mon Sep 17 00:00:00 2001 From: dosangyoon Date: Mon, 23 Mar 2026 13:40:52 +0900 Subject: [PATCH] run.sh: avoid global LD_LIBRARY_PATH; pass conda lib only to uvicorn Prevents bash/libtinfo 'no version information available' when conda ncurses shadows system libtinfo. Document env -u LD_LIBRARY_PATH fallback. Made-with: Cursor --- run.sh | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/run.sh b/run.sh index be75fe6..100165d 100755 --- a/run.sh +++ b/run.sh @@ -1,4 +1,7 @@ #!/usr/bin/env bash +# libtinfo 경고: 터미널에 이미 conda가 켜져 LD_LIBRARY_PATH가 잡혀 있으면 +# env -u LD_LIBRARY_PATH ./run.sh +# 로 실행해 보세요. set -euo pipefail if [[ -z "${BASH_VERSION:-}" ]]; then @@ -11,9 +14,9 @@ cd /home/dsyoon/workspace/stt CONDA_BASE="/home/dsyoon/workspace/miniconda3" source "${CONDA_BASE}/bin/activate" ncue -# Torch/ctranslate2 런타임 로딩에 conda lib 경로 필요할 수 있음 -export LD_LIBRARY_PATH="${CONDA_PREFIX}/lib:${LD_LIBRARY_PATH:-}" - +# 전역 LD_LIBRARY_PATH에 conda lib를 넣으면, 같은 터미널의 bash가 conda의 +# libtinfo.so 를 물며 «no version information available» 경고가 날 수 있음. +# torch/ctranslate2 등은 uvicorn 자식 프로세스에만 경로를 넘긴다. PORT="${PORT:-8025}" RELOAD="${RELOAD:-0}" @@ -29,5 +32,6 @@ if [[ "${RELOAD}" == "1" ]]; then fi echo "Starting uvicorn on 127.0.0.1:${PORT} (reload=${RELOAD})" -nohup uvicorn app.main:app "${UVICORN_ARGS[@]}" > server.log 2>&1 & +nohup env LD_LIBRARY_PATH="${CONDA_PREFIX}/lib${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}" \ + uvicorn app.main:app "${UVICORN_ARGS[@]}" > server.log 2>&1 & echo "Server started (PID: $!). Logs: server.log"