Linux Mint & Lazarus V4.4 [gelöst]
-
DonAlfredo
- Beiträge: 90
- Registriert: Do 28. Sep 2017, 10:26
Re: Linux Mint & Lazarus V4.4
You need some extra libs to install. Use this script:
https://github.com/LongDirtyAnimAlf/fpc ... /debian.sh
https://github.com/LongDirtyAnimAlf/fpc ... /debian.sh
-
MmVisual
- Beiträge: 1637
- Registriert: Fr 10. Okt 2008, 23:54
- OS, Lazarus, FPC: Winuxarm (L 4.4 FPC 3.2.2)
- CPU-Target: 32/64Bit
Re: Linux Mint & Lazarus V4.4
Nun habe ich in dem zuvor neu installierten Mint 22.3 die FpcUpDeluxe Variante aus dem ZIP versucht:
Diese EXE startet leider ebenfalls nicht.
EleLa - Elektronik Lagerverwaltung - www.elela.de
-
MmVisual
- Beiträge: 1637
- Registriert: Fr 10. Okt 2008, 23:54
- OS, Lazarus, FPC: Winuxarm (L 4.4 FPC 3.2.2)
- CPU-Target: 32/64Bit
Re: Linux Mint & Lazarus V4.4
Die Module aus dem Debian Script sind nicht mehr alle aktuell:
Wenn ich diese 3 Pakete nicht installiere, die anderen Befehle laufen durch.
FPCUpDeluxe qt6, startet nun auch. ... und ist DONE.
Wenn ich diese 3 Pakete nicht installiere, die anderen Befehle laufen durch.
FPCUpDeluxe qt6, startet nun auch. ... und ist DONE.
Zuletzt geändert von MmVisual am So 18. Jan 2026, 17:11, insgesamt 1-mal geändert.
EleLa - Elektronik Lagerverwaltung - www.elela.de
Re: Linux Mint & Lazarus V4.4
Sage ich ja.MmVisual hat geschrieben: So 18. Jan 2026, 16:43 Dann habe ich mit fpcupdeluxe-x86_64-linux versucht Lazarus zu installieren:
Du musst immer irgendwas nachinstallieren. Ob GTK2 oder Qtx.
Für GTK2 sind die Abhängigkeiten z.B. hier angegeben:
https://wiki.freepascal.org/fpcupdeluxe/de
Siehe: "Die fehlenden Pakete kann man folgendermassen nachinstallieren: "
- h-elsner
- Lazarusforum e. V.
- Beiträge: 305
- Registriert: Di 24. Jul 2012, 15:42
- OS, Lazarus, FPC: LINUX Mint21.1, Win10, Lazarus 4.3, FPC3.2.3
- CPU-Target: X86-64; arm 32bit
- Wohnort: Illertissen
- Kontaktdaten:
Re: Linux Mint & Lazarus V4.4
Zurück zum 1. Beitrag:
Ich habe gerade Lazarus 4.4 mit FPCupdeluxe installiert und kann den Fehler nicht nachstellen. Alles läuft wie gewohnt ohne Probleme.
Lazarus 4.4 (rev lazarus_4_4)
FPC 3.2.2
x86_64-linux-gtk2
Linux Mint 22.3
Mate 1.26.2
Ich habe gerade Lazarus 4.4 mit FPCupdeluxe installiert und kann den Fehler nicht nachstellen. Alles läuft wie gewohnt ohne Probleme.
Lazarus 4.4 (rev lazarus_4_4)
FPC 3.2.2
x86_64-linux-gtk2
Linux Mint 22.3
Mate 1.26.2
-
MmVisual
- Beiträge: 1637
- Registriert: Fr 10. Okt 2008, 23:54
- OS, Lazarus, FPC: Winuxarm (L 4.4 FPC 3.2.2)
- CPU-Target: 32/64Bit
Re: Linux Mint & Lazarus V4.4
Die QT6 Variante von Lazarus läuft. Allerdings muss jetzt noch extra die Datei "libQt6Pas.so.6" im gleichen Verzeichnis wie die EXE sein, sonst startet diese nicht.
Lazarus funktioniert nun auf den ersten Blick besser. Früher war es immer so dass man in den Optionen die Sprache nicht auf Deutsch stellen konnte, das geht nun auch.
Edit: Der THtmlFrameviewer zeigt nun die HTML Seiten nicht mehr an. QT6 ist auch noch nicht das richtige für mich.
Ich schaue mal ob ich jetzt, mit diesen ganzen vielen "agt-get install ..." das Lazarus ohne das QT6 zum laufen bekomme.
Lazarus funktioniert nun auf den ersten Blick besser. Früher war es immer so dass man in den Optionen die Sprache nicht auf Deutsch stellen konnte, das geht nun auch.
Edit: Der THtmlFrameviewer zeigt nun die HTML Seiten nicht mehr an. QT6 ist auch noch nicht das richtige für mich.
Ich schaue mal ob ich jetzt, mit diesen ganzen vielen "agt-get install ..." das Lazarus ohne das QT6 zum laufen bekomme.
EleLa - Elektronik Lagerverwaltung - www.elela.de
- h-elsner
- Lazarusforum e. V.
- Beiträge: 305
- Registriert: Di 24. Jul 2012, 15:42
- OS, Lazarus, FPC: LINUX Mint21.1, Win10, Lazarus 4.3, FPC3.2.3
- CPU-Target: X86-64; arm 32bit
- Wohnort: Illertissen
- Kontaktdaten:
Re: Linux Mint & Lazarus V4.4
Auch Umstellung der Sprache geht. Selbst Russisch mit den komischen Buchstaben macht keine Probleme.
-
MmVisual
- Beiträge: 1637
- Registriert: Fr 10. Okt 2008, 23:54
- OS, Lazarus, FPC: Winuxarm (L 4.4 FPC 3.2.2)
- CPU-Target: 32/64Bit
Re: Linux Mint & Lazarus V4.4
In der "Normalen" Linux Version geht nun ebenfalls alles wieder richtig, auch die HTML Komponente.
Ich vermute mal dass diverse Pakete irgendwie defekt waren oder nicht vorhanden. Jetzt ist alles richtg.
Vielen Dank für die Unterstützung
Ein Programm, das die eigene WAN IP Adresse loggt und an diverse Dienste senden kann. Damit weis ich meine TCP/IP Adresse von zu Hause, wenn ich unterwegs bin und der DNS Dienst mal defekt sein sollte. Als Backup Strategie. Und die Doku ist in der EXE mit drin, daher die TFrameViewer Komponente.
Ich vermute mal dass diverse Pakete irgendwie defekt waren oder nicht vorhanden. Jetzt ist alles richtg.
Vielen Dank für die Unterstützung
Ein Programm, das die eigene WAN IP Adresse loggt und an diverse Dienste senden kann. Damit weis ich meine TCP/IP Adresse von zu Hause, wenn ich unterwegs bin und der DNS Dienst mal defekt sein sollte. Als Backup Strategie. Und die Doku ist in der EXE mit drin, daher die TFrameViewer Komponente.
EleLa - Elektronik Lagerverwaltung - www.elela.de
-
MmVisual
- Beiträge: 1637
- Registriert: Fr 10. Okt 2008, 23:54
- OS, Lazarus, FPC: Winuxarm (L 4.4 FPC 3.2.2)
- CPU-Target: 32/64Bit
Re: Linux Mint & Lazarus V4.4
Hier nochmals die Zusammenfassung was ich nach der Neuinstallation von Mint so alles dazu installiert habe:
Code: Alles auswählen
Linux Mint 22.3 Cinnamon
sudo apt-get update
sudo apt-get upgrade
Installierte Programme:
- git
- Geany
- MC
- Krusader
- mariadb-client
- SQLite
- KChmViewer
- Filezilla
- samba
- kdiff3
- krename
Dies wird für Lazarus benötigt:
#!/bin/bash
# Paketliste auf neusten Stand bringen und Updaten
sudo apt-get update
sudo apt-get upgrade
# Die fehlenden Pakete installieren.
sudo apt-get install libx11-dev
sudo apt-get install libgdk-pixbuf2.0-dev
sudo apt-get install libpango1.0-dev
sudo apt-get install libgtk2.0-dev
# wenn gdb nicht installiert ist (zB. Lubuntu)
sudo apt-get install gdb
# Für SVN
sudo apt-get install subversion
# Für GIT
sudo apt-get install git
# Wenn OpenGL ( TOpenGLControl ) verwendet wird.
sudo apt-get install freeglut3-dev
# Beim RasPi noch das extra:
sudo apt-get install libgl-dev
Für Lazarus in qt6 wird extra das benötigt, 3 Pakete gehen vermutlich nicht mehr, die dann aus der Liste entfernen:
sudo apt-get install -y xterm git subversion unzip wget make gcc build-essential binutils gdb libc6-dev libc-bin texinfo libglib2.0-dev libgtk2.0-0-dev libgtk2.0-dev gtk2-engines-pixbuf libcairo2-dev libXxf86vm-dev libxtst-dev libx11-dev libglvnd-dev appmenu-gtk2-module libcanberra-gtk-module libxft2 libfontconfig1 libsdl2-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-net-dev libsdl2-ttf-dev libgl-dev freeglut3-dev qt5-qmake qtbase5-dev qtbase5-dev-tools qtdeclarative5-dev libqt5x11extras5-dev libqt5pas-dev qt6-base-dev qt6-base-dev-tools libqt6pas-devEleLa - Elektronik Lagerverwaltung - www.elela.de
- Niesi
- Lazarusforum e. V.
- Beiträge: 659
- Registriert: So 26. Jun 2016, 19:44
- OS, Lazarus, FPC: Linux Mint Cinnamon, Laz 4.5 Fpc 3.2.3 und allerlei mit FpcUpDeLuxe
- Kontaktdaten:
Re: Linux Mint & Lazarus V4.4 [gelöst]
Sorry, dass ich erst jetzt was dazu schreibe - musste das erst mal testen.
Bei funktioniert nach dem Update von Linux Mint auf 22.3 alles ganz normal weiter, überhaupt keine Veränderung. Update war letzte Woche.
Lazarus / FreePascal mit FpcUpDeLuxe installiert, Version 4.5 (ich installiere immer die "fixes"). Und bei mir ist's gtk2 - da macht nix schlapp ...
Bei funktioniert nach dem Update von Linux Mint auf 22.3 alles ganz normal weiter, überhaupt keine Veränderung. Update war letzte Woche.
Lazarus / FreePascal mit FpcUpDeLuxe installiert, Version 4.5 (ich installiere immer die "fixes"). Und bei mir ist's gtk2 - da macht nix schlapp ...
Wissen ist das einzige Gut, das sich vermehrt, wenn es geteilt wird ...
Re: Linux Mint & Lazarus V4.4 [gelöst]
@MmVisual: bist du sicher, daß Mint 22.3 nur mit Virtualbox 7.2.4 geht? Weil ich habe bis Mint 22.2 alles in Virtualbox 6.1.x durchbekommen und verspüre da auch wenig Lust nur wegen einem marginalen Mint-Update hoch zu gehen?
Zum Mint 22.3 / Lazarus 4.4 kann ich nichts beitragen, da ich noch keine Zeit für super-aktuelles Zeug hatte. Ich habe aber vor Weihnachten ziemlich intensiv von Mint 20 bis 22.2 und Lazarus bis 4.0 alles getestet, wenn auch unter einer anderen Aufgabenstellung: Ich wollte endlich mein leidiges 32bit "Problem" lösen, sprich daß ich zum Compilieren und Testen immer auf die nativen 32bit Linuxe angewiesen war und die ja fast ausgestorben sind.
Nun habe ich es aber geschafft, die 32bit Architektur und die mir wichtigen Tools für Lazarus, Java und Python, QT und GTK usw alle zu installieren und damit habe ich ein 32/64 kombiniertes Mint. Hier mein Script, es enthält alles für 64bit (für dich zum Vergleich) und auch 32bit.
Vielleicht kannst du mal mit deiner Liste vergleichen. Das Script lief bis Mint 22.2 - ich sehe auf Anhieb erstmal nicht warum bei 22.3 nicht, aber okay man erlebt immer wieder Überraschungen. Und ach ja, LMDE 6/7 habe ich auch getestet, war insgesamt etwas spröder und und irgendwas habe ich auch auskommentiert, erinnere mich aber nicht mehr was. DIe DEB etc könnte ich dir bei Interesse in eine Cloud stellen, das Script läßt sich mehrfach starten solange bis alle ok ist. Dann noch fpcupdeluxe starten und voila...
Zum Mint 22.3 / Lazarus 4.4 kann ich nichts beitragen, da ich noch keine Zeit für super-aktuelles Zeug hatte. Ich habe aber vor Weihnachten ziemlich intensiv von Mint 20 bis 22.2 und Lazarus bis 4.0 alles getestet, wenn auch unter einer anderen Aufgabenstellung: Ich wollte endlich mein leidiges 32bit "Problem" lösen, sprich daß ich zum Compilieren und Testen immer auf die nativen 32bit Linuxe angewiesen war und die ja fast ausgestorben sind.
Nun habe ich es aber geschafft, die 32bit Architektur und die mir wichtigen Tools für Lazarus, Java und Python, QT und GTK usw alle zu installieren und damit habe ich ein 32/64 kombiniertes Mint. Hier mein Script, es enthält alles für 64bit (für dich zum Vergleich) und auch 32bit.
Code: Alles auswählen
#!/usr/bin/env bash
set -euo pipefail
# set -x
# setup.sh - Modulares, sicheres Installationsskript
# Aufruf: ./setup.sh 64bit | 32bit | java | lazarus | dirs | all
#
# Eigenschaften:
# - Simuliert Installationen zuerst, um Paketentfernungen zu erkennen.
# - Führt sichere automatische Installs ohne Nachfrage aus, wenn keine Entfernung nötig ist.
# - Fragt gezielt, wenn eine Aktion Paketentfernungen oder andere Auffälligkeiten verursacht.
# - Keine automatischen Paket-Entfernungen ohne explizite Bestätigung.
# - DEB-Dateien im aktuellen Verzeichnis werden mit dpkg -i installiert.
# - fpc32/64 werden nur kopiert, wenn vorhanden.
#
# sudo USER **** PWD ****
###############################################################################
# Farben
###############################################################################
RED="\e[31m"
GREEN="\e[32m"
YELLOW="\e[33m"
BLUE="\e[34m"
BOLD="\e[1m"
RESET="\e[0m"
ok() { echo -e "${GREEN}[OK]${RESET} $*"; }
info() { echo -e "${BLUE}[..]${RESET} $*"; }
warn() { echo -e "${YELLOW}[!!]${RESET} $*"; }
err() { echo -e "${RED}[ERR]${RESET} $*" >&2; }
###############################################################################
# Konfiguration: Pfade & DEBs
###############################################################################
USER_HOME="$HOME"
ECLIPSE="${USER_HOME}/eclipse"
ECLIPSE_OXYGEN32="${USER_HOME}/eclipse/oxygen32"
ECLIPSE_2024="${USER_HOME}/eclipse/2024"
JAVA_DIR="${USER_HOME}/eclipse/workspace"
PYTHON_DIR="${USER_HOME}/python"
LAZARUS_DIR="${USER_HOME}/lazarus"
TEST_DIR="${USER_HOME}/bernd-test-oxygen"
# DEB-Dateien (müssen im aktuellen Verzeichnis liegen)
DEB_VSCODE="code_1.106.3-1764110892_amd64.deb"
DEB_JAVA_8_X32="openlogic-openjdk-8u412-b08-linux-x32-deb.deb"
DEB_JAVA_8_X64="bellsoft-jdk8u472+11-linux-amd64.deb"
DEB_JAVA_11_X64="bellsoft-jdk11.0.29+12-linux-amd64.deb"
DEB_JAVA_17_X64="bellsoft-jdk17.0.17+15-linux-amd64.deb"
DEB_JAVA_21_X64="bellsoft-jdk21.0.9+15-linux-amd64.deb"
DEB_JAVA_25_X64="bellsoft-jdk25.0.1+13-linux-amd64.deb"
# Binaries in current directory (fpc32 / fpc64)
BIN_FPC32="fpc32"
BIN_FPC64="fpc64"
###############################################################################
# check_broken(): Einheitliche Behandlung von "apt --fix-broken install"
###############################################################################
check_broken() {
info "Prüfe auf kaputte Paketabhängigkeiten…"
simfix=$(sudo apt-get -s --fix-broken install 2>&1 || true)
if echo "$simfix" | grep -Eiq "Remv|Remove:|will be REMOVED|Conflicts"; then
warn "Fix-Broken würde Pakete entfernen oder Konflikte lösen!"
echo "-----------------------------------"
echo "$simfix" | sed -n '1,25p'
echo "-----------------------------------"
read -r -p "Jetzt 'sudo apt --fix-broken install' ausführen? [j/N] " ans
if [[ "${ans,,}" =~ ^j|y ]]; then
sudo apt --fix-broken install
ok "Fix-broken ausgeführt."
else
warn "Fix-broken übersprungen. System evtl. inkonsistent."
return 1
fi
else
info "Fix-broken unkritisch — führe automatisch aus."
sudo apt --fix-broken install -y
fi
return 0
}
###############################################################################
# Utility: sichere Installation mit Simulation
# - Wenn Simulation ("apt-get -s install") Entfernen anzeigt -> WARN + Prompt
# - Falls keine Entfernung nötig -> automatisches -y für Komfort
# - Bei bestätigter Risk-Option wird normale apt install ohne -y ausgeführt
###############################################################################
safe_install() {
packages=("$@")
if [ "${#packages[@]}" -eq 0 ]; then
return 0
fi
pkglist="${packages[*]}"
info "Simuliere Installation: ${pkglist}"
simout=$(sudo apt-get -s install "${packages[@]}" 2>&1 || true)
# Prüfen auf Anzeichen, dass Pakete entfernt würden
# apt-get -s zeigt "Remv" oder "Remove" lines for remove actions
if echo "$simout" | grep -Eiq "Remv|Remove:|Conflicts|will be REMOVED"; then
warn "Simulation zeigt mögliche Paket-Entfernungen oder Konflikte."
echo
echo "Simulation-Auszug (erste 25 Zeilen):"
echo "-----------------------------------"
echo "$simout" | sed -n '1,25p'
echo "-----------------------------------"
read -r -p "Fortfahren und Installation (ohne automatisches -y) durchführen? [j/N] " ans
if [[ "${ans,,}" =~ ^j|y ]]; then
info "Führe apt install (mit manueller Bestätigung, ohne -y) aus."
sudo apt install "${packages[@]}"
else
err "Installation abgebrochen vom Benutzer."
return 1
fi
else
info "Keine Paket-Entfernungen erkannt — führe Installation automatisch (mit -y) aus."
sudo apt install -y "${packages[@]}"
fi
# prüft ob Installationen "broken" sind
check_broken
}
# Prüft ob Paketlisten aktuell sind, und führt apt update falls nötig
ensure_updated() {
# immer updaten zu Beginn eines Moduls
info "Aktualisiere Paketquellen (sudo apt update)..."
sudo apt update
ok "Paketquellen aktualisiert."
}
###############################################################################
# DEB-Installer mit Fix-Broken-Simulation
###############################################################################
install_deb_file() {
debfile="$1"
if [ ! -f "$debfile" ]; then
warn "DEB-Datei nicht gefunden: $debfile (übersprungen)"
return 0
fi
info "Installiere DEB: $debfile"
sudo dpkg -i "./${debfile}" || true
# prüft ob Installationen "broken" sind
# check_broken
}
###############################################################################
# Module: Directories
###############################################################################
setup_dirs() {
info "Erstelle Projekt- und Eclipse-Verzeichnisse..."
for d in "$ECLIPSE" "$ECLIPSE_OXYGEN32" "$ECLIPSE_2024" "$JAVA_DIR" "$PYTHON_DIR" "$LAZARUS_DIR" "$TEST_DIR"; do
if [ -d "$d" ]; then
info "Existiert bereits: $d"
else
mkdir -p "$d"
ok "Erstellt: $d"
fi
done
echo
info "Hinweis: ZIP-Dateien für Eclipse (Oxygen/2024), Java/Python/Lazarus bitte in die obigen Ordner entpacken."
info "Empfohlene Orte:"
echo " - Oxygen 64-bit: $ECLIPSE"
echo " - Oxygen 32-bit: $ECLIPSE_OXYGEN32"
echo " - Eclipse 2024: $ECLIPSE_2024"
echo " - Java-Projekte: $JAVA_DIR"
echo " - Python-Projekte:$PYTHON_DIR"
echo " - Lazarus-Sources:$LAZARUS_DIR"
echo " - Test: $TEST_DIR"
}
###############################################################################
# Module: Java (alle deine DEBs)
###############################################################################
ensure_fonts() {
info "Installiere vollständige DejaVu-Fonts..."
sudo apt update
sudo apt install -y fonts-dejavu fonts-dejavu-core fonts-dejavu-extra
}
setup_java() {
ensure_fonts
ensure_updated
info "Installiere Java-DEBs (falls vorhanden)..."
# --- DEBs installieren ---
for deb in "$DEB_JAVA_8_X64" "$DEB_JAVA_11_X64" "$DEB_JAVA_17_X64" "$DEB_JAVA_21_X64" "$DEB_JAVA_25_X64"; do
install_deb_file "$deb"
done
# EINMAL Reparatur versuchen
check_broken || warn "System evtl. inkonsistent – fahre trotzdem fort."
echo
info "Registriere Java-Versionen bei update-alternatives..."
# Java-Version → Priorität
declare -A JAVA_PRIO=(
[8]=30000000
[11]=11000000
[17]=17000000
[21]=21000000
[25]=25000000
)
# nullglob verhindert Probleme, wenn nichts matched
shopt -s nullglob
for ver in 8 11 17 21 25; do
jdir=""
# for d in /usr/lib/jvm/*{jdk,java}*"$ver"*; do
for d in /usr/lib/jvm/*java*"$ver"*; do
if [ -d "$d/bin" ] && [ -x "$d/bin/java" ]; then
jdir="$d"
break
fi
done
if [ -z "$jdir" ]; then
warn "Kein gültiges JVM-Verzeichnis für Java $ver gefunden – übersprungen."
continue
fi
prio="${JAVA_PRIO[$ver]}"
info "-> Java $ver: $jdir (Priorität $prio)"
sudo update-alternatives --install /usr/bin/java java "$jdir/bin/java" "$prio"
if [ -x "$jdir/bin/javac" ]; then
sudo update-alternatives --install /usr/bin/javac javac "$jdir/bin/javac" "$prio"
else
warn "javac fehlt in $jdir – nur java registriert."
fi
done
shopt -u nullglob
echo
ok "Java-Setup abgeschlossen."
echo "Standard prüfen mit:"
echo " java -version"
echo " sudo update-alternatives --config java"
}
###############################################################################
# Module: 64-bit Setup
###############################################################################
setup_64bit() {
ensure_updated
info "Installiere Basis-Tools (64-bit)."
safe_install git krusader kate kdiff3 libgtk2.0-dev sqlite3 libsqlite3-dev fpc
# VS Code DEB
install_deb_file "$DEB_VSCODE"
# Java (64-bit) - falls DEBs bereits installiert via setup_java, wird nichts passieren
info "Installiere Java-DEBs (64-bit), wenn vorhanden."
setup_java
# Hinweis für Eclipse / ZIPs
info "Eclipse-ZIPs werden nicht automatisch entpackt. Lege Oxygen/2024 in die vorgesehenen Ordner."
ok "64-bit Basispaket-Installation abgeschlossen."
}
###############################################################################
# Module: 32-bit Setup
###############################################################################
setup_32bit() {
ensure_updated
info "Aktiviere i386 Architektur (falls noch nicht aktiv)."
if dpkg --print-foreign-architectures | grep -q "i386"; then
info "i386 Architektur ist bereits aktiviert."
else
sudo dpkg --add-architecture i386
info "i386 Architektur hinzugefügt. Paketquellen werden jetzt aktualisiert."
sudo apt update
fi
info "Installiere 32-bit Laufzeit-Bibliotheken."
# Liste hier in Gruppen, safe_install akzeptiert mehrere Pakete
safe_install libc6:i386 libstdc++6:i386 libc6-dev-i386 gcc-multilib
safe_install libsqlite3-0:i386 libsqlite3-dev:i386
safe_install libgtk2.0-0:i386 libglib2.0-0:i386 libgobject-2.0-0:i386
safe_install libqt5gui5:i386 libqt5widgets5:i386 libqt5core5a:i386
safe_install libgl1:i386 libgl1-mesa-dri:i386 libglx-mesa0:i386
safe_install libx11-6:i386 libxext6:i386 libxrender1:i386 libxi6:i386 libxrandr2:i386 libxcursor1:i386 libxinerama1:i386 libxfixes3:i386
safe_install libatk1.0-0:i386 libatk-bridge2.0-0:i386 at-spi2-core:i386 libatspi2.0-0:i386
safe_install libxcb1:i386 libxcb-xinerama0:i386 libxcb-icccm4:i386 libxcb-image0:i386 libxcb-keysyms1:i386 libxcb-randr0:i386 libxcb-render-util0:i386 libxcb-shape0:i386 libxcb-sync1:i386 libxcb-xfixes0:i386 libxkbcommon-x11-0:i386
safe_install gtk2-engines:i386 gtk2-engines-pixbuf:i386 adwaita-icon-theme:i386
# Installiere 32-bit Java 8 DEB
if [ -f "$DEB_JAVA_8_X32" ]; then
install_deb_file "$DEB_JAVA_8_X32"
check_broken
j32dir=$(ls -d /usr/lib/jvm/*-openjdk-8* 2>/dev/null | grep i386 | head -n1)
[ -n "$j32dir" ] && {
sudo update-alternatives --install /usr/bin/java java "$j32dir/bin/java" 5000000
sudo update-alternatives --install /usr/bin/javac javac "$j32dir/bin/javac" 5000000
ok "32-bit Java 8 installiert (Priorität 800, 64-bit Standard bleibt)."
}
else
warn "32-bit Java 8 DEB nicht gefunden (übersprungen)."
fi
# FPC32 / FPC64 kopieren
[ -f "./$BIN_FPC32" ] && sudo cp -v "./$BIN_FPC32" /usr/local/bin/fpc32 && sudo chmod 755 /usr/local/bin/fpc32 && ok "fpc32 installiert." || warn "fpc32 nicht gefunden."
[ -f "./$BIN_FPC64" ] && sudo cp -v "./$BIN_FPC64" /usr/local/bin/fpc64 && sudo chmod 755 /usr/local/bin/fpc64 && ok "fpc64 installiert." || warn "fpc64 nicht gefunden."
ok "32-bit Support abgeschlossen."
}
###############################################################################
# Module: Lazarus / FPC - fpcupdeluxe Hinweis
###############################################################################
setup_lazarus() {
ensure_updated
info "Installiere fpc (Free Pascal Compiler) - falls noch nicht vorhanden."
safe_install fpc
info "Wichtiger Hinweis zum fpcupdeluxe-Workflow:"
echo
echo " * Falls du fpcupdeluxe benutzt, wechsle vorher in das Verzeichnis, in dem die"
echo " fpcupdeluxe-Binärdatei liegt (z.B. /home/fpcdeluxe) und starte es manuell."
echo
echo " Beispiel:"
echo " cd /home/fpcdeluxe"
echo " ./fpcupdeluxe"
echo
echo " Das Script startet fpcupdeluxe NICHT automatisch, weil du manuell das Zielverzeichnis"
echo " und Optionen wählen möchtest."
echo
ok "Lazarus-Teil abgeschlossen (fpc installiert; fpcupdeluxe manuell ausführen)."
}
############ NEU: grub-customizer ################
setup_grub() {
sudo add-apt-repository ppa:danielrichter2007/grub-customizer
ensure_updated
safe_install grub-customizer
info "Starte grub-customizer..."
sudo grub-customizer || warn "Konnte grub-customizer nicht starten."
ok "GRUB-Konfiguration abgeschlossen."
}
############ NEU: VirtualBox (vboxsf + Additions) ################
setup_vbox() {
info "Füge Benutzer ${USER} zur Gruppe vboxsf hinzu..."
sudo usermod -aG vboxsf "$USER"
ok "Benutzer wurde zu vboxsf hinzugefügt (Neustart nötig)."
info "Suche VBox Guest Additions ISO..."
GA_ISO=$(ls /usr/share/virtualbox/VBoxGuestAdditions.iso 2>/dev/null || true)
if [ -f "$GA_ISO" ]; then
info "Installiere Guest Additions von: $GA_ISO"
sudo mkdir -p /mnt/vbox
sudo mount "$GA_ISO" /mnt/vbox || true
sudo /mnt/vbox/VBoxLinuxAdditions.run || warn "GuestAdditions-Installer meldete Warnungen."
sudo umount /mnt/vbox
ok "Guest Additions installiert."
else
warn "Keine VBoxGuestAdditions.iso gefunden. Bitte ISO manuell einlegen."
fi
}
###############################################################################
# Hauptsteuerung
###############################################################################
usage() {
cat <<EOF
Usage: $0 <modul>
Module:
64bit - Installiert 64-bit Basis-Tools, VSCode DEB, Java (64-bit via setup_java)
32bit - Aktiviert i386 und installiert 32-bit libs und Java8 (32-bit)
java - Installiert alle angegebenen 64-bit Java-DEBs (8/11/17/21/25)
lazarus - Installiert fpc und gibt Hinweise zu fpcupdeluxe
dirs - Erstellt Eclipse/Projekt/Test-Verzeichnisse
grub - Erstell Grub-Customizer
vbox - Führt die Gasterweiterungen aus und gewährt bernd Zugriff auf vboxsf
all - Führt dirs, 64bit, 32bit, lazarus aus
EOF
}
if [ $# -lt 1 ]; then
usage
exit 1
fi
cmd="$1"
case "$cmd" in
64bit)
setup_dirs
setup_64bit
;;
32bit)
setup_32bit
;;
java)
setup_java
;;
lazarus)
setup_lazarus
;;
dirs)
setup_dirs
;;
grub)
setup_grub
;;
vbox)
setup_vbox
;;
all)
setup_dirs
setup_64bit
setup_32bit
setup_lazarus
setup_grub
setup_vbox
;;
*)
usage
exit 1
;;
esac
ok "Scriptende. Wenn Fehler auftraten, sieh dir die Ausgaben oben an."
- af0815
- Lazarusforum e. V.
- Beiträge: 7090
- Registriert: So 7. Jan 2007, 10:20
- OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
- CPU-Target: 32Bit (64Bit)
- Wohnort: Burgenland
- Kontaktdaten:
Re: Linux Mint & Lazarus V4.4 [gelöst]
Beim Update von Mint wird auch der Kernel gewechselt und in den Beschreibungen dazu finden sich die inkompatibilitäten mit VB und auch die Abhilfe dazu. Das ist eher ein Kernelproblem und nicht ein Problem von Mint direkt.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).
- Niesi
- Lazarusforum e. V.
- Beiträge: 659
- Registriert: So 26. Jun 2016, 19:44
- OS, Lazarus, FPC: Linux Mint Cinnamon, Laz 4.5 Fpc 3.2.3 und allerlei mit FpcUpDeLuxe
- Kontaktdaten:
Re: Linux Mint & Lazarus V4.4 [gelöst]
Ja, stimmt - und ich kann nach dem Update keinerlei Abweichung feststellen. Ist alles wie gehabt ...
Wissen ist das einzige Gut, das sich vermehrt, wenn es geteilt wird ...
-
DonAlfredo
- Beiträge: 90
- Registriert: Do 28. Sep 2017, 10:26
Re: Linux Mint & Lazarus V4.4 [gelöst]
For scripting, you might use fpc[laz]up itself.
https://github.com/LongDirtyAnimAlf/Rei ... p/releases
This is the commandline version of fpcupdeluxe. And this version accepts all kinds of parameters, including install directory.
E.g. : install FPC and Lazarus.
./fpclazup --fpcURL="trunk" --lazURL="trunk" --installdir=$HOME/mytrunklazarus --noconfirm
E.g. : install FPC cross-compiler for aarch64 .
./fpcup --installdir=$HOME/mytrunklazarus --ostarget=linux --cputarget=aarch64 --only="FPCCleanOnly,FPCBuildOnly" --autotools --noconfirm --verbose
https://github.com/LongDirtyAnimAlf/Rei ... p/releases
This is the commandline version of fpcupdeluxe. And this version accepts all kinds of parameters, including install directory.
E.g. : install FPC and Lazarus.
./fpclazup --fpcURL="trunk" --lazURL="trunk" --installdir=$HOME/mytrunklazarus --noconfirm
E.g. : install FPC cross-compiler for aarch64 .
./fpcup --installdir=$HOME/mytrunklazarus --ostarget=linux --cputarget=aarch64 --only="FPCCleanOnly,FPCBuildOnly" --autotools --noconfirm --verbose