Verbessere die CMake-Konfiguration zur Unterstützung von C++23, indem die Compiler-Auswahl dynamisch auf GCC 15 oder 13 basiert. Optimiere die Compiler-Flags für Leistung. In der Datenbankabfrage und im DirectorWorker werden konstante Referenzen und string_view verwendet, um die Leistung zu steigern. Reserviere Speicher für Vektoren in main.cpp zur Effizienzsteigerung.
This commit is contained in:
committed by
Torsten (PC)
parent
1f43df6d41
commit
4bafc3a61c
78
build-local.sh
Executable file
78
build-local.sh
Executable file
@@ -0,0 +1,78 @@
|
||||
#!/bin/bash
|
||||
|
||||
# YourPart Daemon Local Build Script für OpenSUSE Tumbleweed
|
||||
# Führen Sie dieses Script lokal auf Ihrem Entwicklungsrechner aus
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
# Farben für Output
|
||||
RED='\033[0;31m'
|
||||
GREEN='\033[0;32m'
|
||||
YELLOW='\033[1;33m'
|
||||
BLUE='\033[0;34m'
|
||||
NC='\033[0m' # No Color
|
||||
|
||||
log_info() {
|
||||
echo -e "${BLUE}[INFO]${NC} $1"
|
||||
}
|
||||
|
||||
log_success() {
|
||||
echo -e "${GREEN}[SUCCESS]${NC} $1"
|
||||
}
|
||||
|
||||
log_warning() {
|
||||
echo -e "${YELLOW}[WARNING]${NC} $1"
|
||||
}
|
||||
|
||||
log_error() {
|
||||
echo -e "${RED}[ERROR]${NC} $1"
|
||||
}
|
||||
|
||||
log_info "Starte lokalen Build für YourPart Daemon auf OpenSUSE Tumbleweed..."
|
||||
|
||||
# Prüfe ob wir im richtigen Verzeichnis sind
|
||||
if [ ! -f "CMakeLists.txt" ] || [ ! -f "daemon.conf" ]; then
|
||||
log_error "Bitte führen Sie dieses Script aus dem Projektverzeichnis aus!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Prüfe Dependencies
|
||||
log_info "Prüfe Dependencies..."
|
||||
if ! command -v cmake &> /dev/null; then
|
||||
log_error "CMake nicht gefunden. Führen Sie zuerst install-dependencies-opensuse.sh aus!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if ! command -v g++ &> /dev/null; then
|
||||
log_error "G++ nicht gefunden. Führen Sie zuerst install-dependencies-opensuse.sh aus!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Erstelle Build-Verzeichnis
|
||||
log_info "Erstelle Build-Verzeichnis..."
|
||||
if [ ! -d "build" ]; then
|
||||
mkdir build
|
||||
fi
|
||||
|
||||
cd build
|
||||
|
||||
# Konfiguriere CMake
|
||||
log_info "Konfiguriere CMake..."
|
||||
cmake .. -DCMAKE_BUILD_TYPE=Release
|
||||
|
||||
# Kompiliere
|
||||
log_info "Kompiliere Projekt..."
|
||||
make -j$(nproc)
|
||||
|
||||
cd ..
|
||||
|
||||
log_success "Lokaler Build abgeschlossen!"
|
||||
log_info ""
|
||||
log_info "Build-Ergebnisse:"
|
||||
log_info "- Binärdatei: build/yourpart-daemon"
|
||||
log_info "- Größe: $(du -h build/yourpart-daemon | cut -f1)"
|
||||
log_info ""
|
||||
log_info "Nächste Schritte:"
|
||||
log_info "1. Testen Sie die Binärdatei lokal"
|
||||
log_info "2. Deployen Sie auf den Server mit deploy.sh"
|
||||
log_info "3. Oder verwenden Sie deploy-server.sh direkt auf dem Server"
|
||||
Reference in New Issue
Block a user