Files
fn_registry/bash/functions/pipelines/compile_cpp_app.md
T
egutierrez ca1bf5a59b feat(infra): auto-commit con 29 cambios
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-14 02:06:44 +02:00

2.3 KiB

name, kind, lang, domain, version, purity, signature, description, tags, uses_functions, uses_types, returns, returns_optional, error_type, imports, tested, tests, test_file_path, file_path, params, output
name kind lang domain version purity signature description tags uses_functions uses_types returns returns_optional error_type imports tested tests test_file_path file_path params output
compile_cpp_app pipeline bash pipelines 1.0.0 impure compile_cpp_app(app_name?: string) -> void Pipeline que resuelve la app C++ desde el nombre o CWD, la cross-compila para Windows con mingw-w64, y despliega el .exe al escritorio de Windows. Composicion de resolve_cpp_app_dir + build_cpp_windows + deploy_cpp_exe_to_windows.
cpp
compile
windows
mingw
cross-compile
deploy
pipeline
pendiente-usar
cpp-windows
resolve_cpp_app_dir_bash_infra
build_cpp_windows_bash_infra
deploy_cpp_exe_to_windows_bash_infra
false error_go_core
false
bash/functions/pipelines/compile_cpp_app.sh
name desc
app_name Nombre de la app a compilar (opcional). Sin arg se deduce desde el directorio actual si estamos dentro de cpp/apps/<X>/ o projects/*/apps/<X>/.
Compila el .exe y lo despliega al escritorio de Windows. Imprime progreso por steps a stderr y resumen final con ls -lh del .exe resultante.

Ejemplo

# Desde dentro del directorio de la app (sin arg)
cd /home/lucas/fn_registry/cpp/apps/chart_demo
fn run compile_cpp_app

# Con nombre explicito desde cualquier directorio
fn run compile_cpp_app registry_dashboard

# Directo
bash bash/functions/pipelines/compile_cpp_app.sh graph_explorer

Flujo

  1. resolve_cpp_app_dir — deduce nombre y directorio absoluto de la app (desde CWD o arg)
  2. Verifica que existe CMakeLists.txt en el directorio de la app
  3. build_cpp_windows — cross-compila con mingw-w64 solo el target de la app
  4. deploy_cpp_exe_to_windows — copia exe, DLLs, assets, enrichers y runtime al escritorio de Windows
  5. Imprime ls -lh del exe final en Desktop/apps//

Variables de entorno

  • FN_REGISTRY_ROOT — raiz del registry; default /home/lucas/fn_registry
  • BUILD_WIN — directorio de build Windows; default $FN_REGISTRY_ROOT/cpp/build/windows
  • WIN_DESKTOP_APPS — directorio destino; default /mnt/c/Users/lucas/Desktop/apps

Notas

Reemplaza la logica del slash command /compile. No lleva tag launcher porque no es un pipeline TUI-lanzable (tarda minutos en compilar).