Seite 3 von 8
Re: Empfehlung für minimalistisches Linux-Entwicklersystem
Verfasst: 16.04.2025 17:36
von MarkFranconia
Guten Tag Shardik,
danke für feedback.
Wie Du sicherlich weißt, haben wir alle nur ein Leben - und d.h. am Besten nur: A-G [JA] wurde schon erfolgreich mit Purebasic getestet.
Ich habe Slitaz auch schon probiert und verworfen - Soweit ich mich erinnere hatte ich es mit Freebasic/gcc und FLTK probiert.
Das wollte ich evt. weiter verfolgen - aber ist eben doch ein bischen wenig im Vgl. zu Purebasic - zumal man sich mit Purebasic evt. auch C spart,
weil Purebasic für kritische Sachen InlineAssembler hat und selbst relativ schnell ist.
also machen wir:
A) Puppy
B) TinyCore
C) NomadBSD
D) Haiku
E) SLAX /SLACKO
F) Lubunto
G) ReactOS
H) Slitaz
.. u. vielleicht kommen noch Andere dazu
Re: Empfehlung für minimalistisches Linux-Entwicklersystem
Verfasst: 16.04.2025 18:44
von MarkFranconia
matbal hat geschrieben: 16.04.2025 17:36
Prinzipiell läuft PureBasic auf Puppy-Linux. Habe es gerade noch mal mit aktuellem Puppy und PureBasic 6.20 ausprobiert. Neben Puppy brauchst du nur zusätzlich die devx...sfs mit den Entwicklerbibliotheken auf dem Stick.
Ich habe einige der PureBasic-Beispielcodes ausprobiert und festgestellt: Es fehlen die Libs für WebKit und für die Spieleentwicklung. Vielleicht auch noch mehr.
Eigenartig ist: Programme, die ich unter Manjaro erstellt habe, laufen nicht unter Puppy, weil sie libwebkit2gtk4 vermissen, auch wenn ich gar kein WebGadget verwendet habe.
Ich kann dieselbe App aber unter Puppy kompilieren und diese läuft dann auch unter Manjaro.
p.s. Ich bin überrascht, wie groß Puppy mittlerweile ist, früher waren es nur knapp über 100 MB.
und welches Puppy hast Du ?

.. Ich hatte es mit Puppy Bookworm 64 (Debian) probiert
Ich habe bspweise auch festgestellt unter Linux Mint, dass nicht alle OpenGL-Beispiele laufen aus der Purebasic Demoversion.
Man möchte eben doch sehen, dass alle Beispiele des Purebasic Demokits laufen, wenn man sich für diesen Weg entscheidet
brauchst du nur zusätzlich die devx...sfs mit den Entwicklerbibliotheken auf dem Stick.
Kannst Du dazu nochmal was schreiben ?
Muss ich das .sfs-File selbst erstellen aus allen Biblotheken, die Purebasic braucht ?
Re: Empfehlung für minimalistisches Linux-Entwicklersystem
Verfasst: 18.04.2025 20:52
von matbal
BookwormPup64_10.0.10.iso habe ich auch verwendet. Auf der Download-Seite findest du die dazugehörige SFS-Datei mit den Entwickler-Bibliotheken. In dem Fall ist es devx_dpupbw64_10.0.10.sfs
SFS-Dateien enthalten eine Verzeichnisstruktur, die transparent in Puppy eingebunden wird. Dort wird nur lesend zugegriffen. Meist werden so größere Programm angeboten. Es lässt sich in Puppy einstellen, welche SFS-Dateien beim Booten mitgeladen werden sollen. Immerhin wurde das System so konzipiert, Daß es komplett in den Speicher geladen werden kann, weswegen man bestimmte Teile eben auch für den nächsten Start deaktivieren kann.
Und wie gesagt, laufen mit den in dieser SFS enthaltenen Entwicklerbibliotheken auch nicht alle Beispiele. Ich habe mich aber auch nicht weiter damit beschäftigt.
Re: Empfehlung für minimalistisches Linux-Entwicklersystem
Verfasst: 18.04.2025 23:01
von matbal
Noch eine Ergänzung: Ich habe jetzt auch noch FossaPup64 (F96-CE_4.iso) ausprobiert inclusive der passenden Entwickler-SFS (devx_fossapup64_9.6.sfs). Es lassen sich deutlich mehr Beispiel-Codes kompilieren, auch die OpenGL- und 3D-Beispiele. Die WebKit-Libs fehlen auch hier und müßten manuell nachinstalliert werden.
Re: Empfehlung für minimalistisches Linux-Entwicklersystem
Verfasst: 19.04.2025 14:29
von MarkFranconia
Noch eine Ergänzung: Ich habe jetzt auch noch FossaPup64 (F96-CE_4.iso) ausprobiert inclusive der passenden Entwickler-SFS (devx_fossapup64_9.6.sfs). Es lassen sich deutlich mehr Beispiel-Codes kompilieren, auch die OpenGL- und 3D-Beispiele. Die WebKit-Libs fehlen auch hier und müßten manuell nachinstalliert werden.
... wer es vielleicht doch mal mit mir probieren will ...
Ich bin die Tage auch mit anderen Dingen beschäftigt - aber werde es mit
der Demoversion " PureBasic frei für Linux Ubuntu 20.04 or 22.04 (x64)" und FossaPup64 (F96-CE_4.iso) und devx_fossapup64_9.6.sfs probieren.
Dafür scheinen mir nach Stand der Dinge die Purebasic Beispiele am Wahrscheinlichsten lauffähig zu sein.
Falls es bekannte Einschränkungen oder Voraussetzungen für PureBasic (Linux Ubuntu 20.04 or 22.04 (x64) auf FossaPup64 gibt, bin ich für entsprechende Hinweise dankbar.
Eigenartig ist: Programme, die ich unter Manjaro erstellt habe, laufen nicht unter Puppy, weil sie libwebkit2gtk4 vermissen,
das kann nicht daran liegen, dass Purebasic "funkt" und dazu libwebkit2gtk benötigt ? - oder vielleicht doch ?
Wo muss ich devx_fossapup64_9.6.sfs ablegen, dass es beim Start zur Verfügung steht ?
danke für Feedback
Re: Empfehlung für minimalistisches Linux-Entwicklersystem
Verfasst: 19.04.2025 18:01
von mk-soft
Mit einen einfachen Programm habe ich keine Abhängigkeit von libwebkit2gtk gesehen
Code: Alles auswählen
ldd main
linux-vdso.so.1 (0x00007fffe49a1000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007ffa51e03000)
libcairo.so.2 => /lib/x86_64-linux-gnu/libcairo.so.2 (0x00007ffa51cdf000)
libgtk-3.so.0 => /lib/x86_64-linux-gnu/libgtk-3.so.0 (0x00007ffa51400000)
libgdk-3.so.0 => /lib/x86_64-linux-gnu/libgdk-3.so.0 (0x00007ffa512f6000)
libpango-1.0.so.0 => /lib/x86_64-linux-gnu/libpango-1.0.so.0 (0x00007ffa51c76000)
libgobject-2.0.so.0 => /lib/x86_64-linux-gnu/libgobject-2.0.so.0 (0x00007ffa51297000)
libglib-2.0.so.0 => /lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007ffa5115f000)
libX11.so.6 => /lib/x86_64-linux-gnu/libX11.so.6 (0x00007ffa5101d000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007ffa50e3c000)
/lib64/ld-linux-x86-64.so.2 (0x00007ffa51efc000)
libpixman-1.so.0 => /lib/x86_64-linux-gnu/libpixman-1.so.0 (0x00007ffa50d91000)
libfontconfig.so.1 => /lib/x86_64-linux-gnu/libfontconfig.so.1 (0x00007ffa51c29000)
libfreetype.so.6 => /lib/x86_64-linux-gnu/libfreetype.so.6 (0x00007ffa50cc7000)
libpng16.so.16 => /lib/x86_64-linux-gnu/libpng16.so.16 (0x00007ffa50c91000)
libxcb-shm.so.0 => /lib/x86_64-linux-gnu/libxcb-shm.so.0 (0x00007ffa51c22000)
libxcb.so.1 => /lib/x86_64-linux-gnu/libxcb.so.1 (0x00007ffa50c67000)
libxcb-render.so.0 => /lib/x86_64-linux-gnu/libxcb-render.so.0 (0x00007ffa50c59000)
libXrender.so.1 => /lib/x86_64-linux-gnu/libXrender.so.1 (0x00007ffa50c4c000)
libXext.so.6 => /lib/x86_64-linux-gnu/libXext.so.6 (0x00007ffa50c35000)
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007ffa50c16000)
libgmodule-2.0.so.0 => /lib/x86_64-linux-gnu/libgmodule-2.0.so.0 (0x00007ffa50c10000)
libgio-2.0.so.0 => /lib/x86_64-linux-gnu/libgio-2.0.so.0 (0x00007ffa50a30000)
libpangocairo-1.0.so.0 => /lib/x86_64-linux-gnu/libpangocairo-1.0.so.0 (0x00007ffa50a1f000)
libharfbuzz.so.0 => /lib/x86_64-linux-gnu/libharfbuzz.so.0 (0x00007ffa50919000)
libpangoft2-1.0.so.0 => /lib/x86_64-linux-gnu/libpangoft2-1.0.so.0 (0x00007ffa50900000)
libfribidi.so.0 => /lib/x86_64-linux-gnu/libfribidi.so.0 (0x00007ffa508e4000)
libcairo-gobject.so.2 => /lib/x86_64-linux-gnu/libcairo-gobject.so.2 (0x00007ffa508d9000)
libgdk_pixbuf-2.0.so.0 => /lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0 (0x00007ffa508ab000)
libatk-1.0.so.0 => /lib/x86_64-linux-gnu/libatk-1.0.so.0 (0x00007ffa50882000)
libepoxy.so.0 => /lib/x86_64-linux-gnu/libepoxy.so.0 (0x00007ffa50753000)
libXi.so.6 => /lib/x86_64-linux-gnu/libXi.so.6 (0x00007ffa5073d000)
libatk-bridge-2.0.so.0 => /lib/x86_64-linux-gnu/libatk-bridge-2.0.so.0 (0x00007ffa50701000)
libXfixes.so.3 => /lib/x86_64-linux-gnu/libXfixes.so.3 (0x00007ffa506f9000)
libxkbcommon.so.0 => /lib/x86_64-linux-gnu/libxkbcommon.so.0 (0x00007ffa506b3000)
libwayland-client.so.0 => /lib/x86_64-linux-gnu/libwayland-client.so.0 (0x00007ffa506a1000)
libwayland-cursor.so.0 => /lib/x86_64-linux-gnu/libwayland-cursor.so.0 (0x00007ffa50695000)
libwayland-egl.so.1 => /lib/x86_64-linux-gnu/libwayland-egl.so.1 (0x00007ffa50690000)
libXcursor.so.1 => /lib/x86_64-linux-gnu/libXcursor.so.1 (0x00007ffa50683000)
libXdamage.so.1 => /lib/x86_64-linux-gnu/libXdamage.so.1 (0x00007ffa5067e000)
libXcomposite.so.1 => /lib/x86_64-linux-gnu/libXcomposite.so.1 (0x00007ffa50679000)
libXrandr.so.2 => /lib/x86_64-linux-gnu/libXrandr.so.2 (0x00007ffa5066c000)
libXinerama.so.1 => /lib/x86_64-linux-gnu/libXinerama.so.1 (0x00007ffa50665000)
libthai.so.0 => /lib/x86_64-linux-gnu/libthai.so.0 (0x00007ffa5065a000)
libffi.so.8 => /lib/x86_64-linux-gnu/libffi.so.8 (0x00007ffa5064e000)
libpcre2-8.so.0 => /lib/x86_64-linux-gnu/libpcre2-8.so.0 (0x00007ffa505b4000)
libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007ffa50589000)
libbrotlidec.so.1 => /lib/x86_64-linux-gnu/libbrotlidec.so.1 (0x00007ffa5057a000)
libXau.so.6 => /lib/x86_64-linux-gnu/libXau.so.6 (0x00007ffa50575000)
libXdmcp.so.6 => /lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007ffa50200000)
libmount.so.1 => /lib/x86_64-linux-gnu/libmount.so.1 (0x00007ffa50512000)
libselinux.so.1 => /lib/x86_64-linux-gnu/libselinux.so.1 (0x00007ffa504e4000)
libgraphite2.so.3 => /lib/x86_64-linux-gnu/libgraphite2.so.3 (0x00007ffa504b6000)
libjpeg.so.62 => /lib/x86_64-linux-gnu/libjpeg.so.62 (0x00007ffa50423000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007ffa5041e000)
libatspi.so.0 => /lib/x86_64-linux-gnu/libatspi.so.0 (0x00007ffa501c5000)
libdbus-1.so.3 => /lib/x86_64-linux-gnu/libdbus-1.so.3 (0x00007ffa5016f000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007ffa50417000)
libdatrie.so.1 => /lib/x86_64-linux-gnu/libdatrie.so.1 (0x00007ffa5040d000)
libbrotlicommon.so.1 => /lib/x86_64-linux-gnu/libbrotlicommon.so.1 (0x00007ffa5014c000)
libbsd.so.0 => /lib/x86_64-linux-gnu/libbsd.so.0 (0x00007ffa50136000)
libblkid.so.1 => /lib/x86_64-linux-gnu/libblkid.so.1 (0x00007ffa500df000)
libsystemd.so.0 => /lib/x86_64-linux-gnu/libsystemd.so.0 (0x00007ffa5000f000)
libmd.so.0 => /lib/x86_64-linux-gnu/libmd.so.0 (0x00007ffa50002000)
libcap.so.2 => /lib/x86_64-linux-gnu/libcap.so.2 (0x00007ffa4fff6000)
libgcrypt.so.20 => /lib/x86_64-linux-gnu/libgcrypt.so.20 (0x00007ffa4feaf000)
liblzma.so.5 => /lib/x86_64-linux-gnu/liblzma.so.5 (0x00007ffa4fe80000)
libzstd.so.1 => /lib/x86_64-linux-gnu/libzstd.so.1 (0x00007ffa4fdc4000)
liblz4.so.1 => /lib/x86_64-linux-gnu/liblz4.so.1 (0x00007ffa4fd9e000)
libgpg-error.so.0 => /lib/x86_64-linux-gnu/libgpg-error.so.0 (0x00007ffa4fd76000)
main.pb
Code: Alles auswählen
;-TOP
#ProgramTitle = "Main Window"
#ProgramVersion = "v1.01.2"
Enumeration Windows
#Main
EndEnumeration
Enumeration MenuBar
#MainMenu
EndEnumeration
Enumeration MenuItems
#MainMenuAbout
#MainMenuExit
EndEnumeration
Enumeration Gadgets
#MainEdit
#MainButtonOk
#MainButtonCancel
EndEnumeration
Enumeration StatusBar
#MainStatusBar
EndEnumeration
Procedure UpdateWindow()
Protected dx, dy
dx = WindowWidth(#Main)
dy = WindowHeight(#Main) - StatusBarHeight(#MainStatusBar) - MenuHeight()
; Resize gadgets
ResizeGadget(#MainEdit, 5, 5, dx - 10, dy - 45)
ResizeGadget(#MainButtonok, 10, dy - 35, 120, 30)
ResizeGadget(#MainButtonCancel, dx - 130, dy - 35, 120, 30)
EndProcedure
Procedure Main()
Protected dx, dy
#MainStyle = #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_MaximizeGadget | #PB_Window_MinimizeGadget
If OpenWindow(#Main, #PB_Ignore, #PB_Ignore, 800, 600, #ProgramTitle , #MainStyle)
; Menu
CreateMenu(#MainMenu, WindowID(#Main))
MenuTitle("&File")
CompilerIf #PB_Compiler_OS = #PB_OS_MacOS
MenuItem(#PB_Menu_About, "")
CompilerElse
MenuItem(#MainMenuAbout, "About")
CompilerEndIf
; Menu File Items
CompilerIf Not #PB_Compiler_OS = #PB_OS_MacOS
MenuBar()
MenuItem(#MainMenuExit, "E&xit")
CompilerEndIf
; StatusBar
CreateStatusBar(#MainStatusBar, WindowID(#Main))
AddStatusBarField(#PB_Ignore)
; Gadgets
dx = WindowWidth(#Main)
dy = WindowHeight(#Main) - StatusBarHeight(#MainStatusBar) - MenuHeight()
EditorGadget(#MainEdit, 5, 5, dx -10, dy - 45)
ButtonGadget(#MainButtonok, 10, dy - 35, 120, 30, "Ok")
ButtonGadget(#MainButtonCancel, dx - 130, dy - 35, 120, 30, "Abbruch")
; Bind Events
BindEvent(#PB_Event_SizeWindow, @UpdateWindow(), #Main)
; Event Loop
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
Select EventWindow()
Case #Main
Break
EndSelect
Case #PB_Event_Menu
Select EventMenu()
CompilerIf #PB_Compiler_OS = #PB_OS_MacOS
Case #PB_Menu_About
PostEvent(#PB_Event_Menu, #Main, #MainMenuAbout)
Case #PB_Menu_Preferences
Case #PB_Menu_Quit
PostEvent(#PB_Event_CloseWindow, #Main, #Null)
CompilerEndIf
Case #MainMenuAbout
MessageRequester("About", #ProgramTitle + #LF$ + #ProgramVersion, #PB_MessageRequester_Info)
Case #MainMenuExit
PostEvent(#PB_Event_CloseWindow, #Main, #Null)
EndSelect
Case #PB_Event_Gadget
Select EventGadget()
Case #MainEdit
Select EventType()
Case #PB_EventType_Change
;
EndSelect
Case #MainButtonOk
;
Case #MainButtonCancel
;
EndSelect
EndSelect
ForEver
EndIf
EndProcedure : Main()
Re: Empfehlung für minimalistisches Linux-Entwicklersystem
Verfasst: 19.04.2025 19:44
von MarkFranconia
matbal hat geschrieben: 18.04.2025 23:01
Noch eine Ergänzung: Ich habe jetzt auch noch FossaPup64 (F96-CE_4.iso) ausprobiert inclusive der passenden Entwickler-SFS (devx_fossapup64_9.6.sfs). Es lassen sich deutlich mehr Beispiel-Codes kompilieren, auch die OpenGL- und 3D-Beispiele. Die WebKit-Libs fehlen auch hier und müßten manuell nachinstalliert werden.
devx_fossapup64_9.6.sfs - Mounten alleine reicht nicht

--- nunja.. ich guck die tage noch einmal
Schönen Abend

Re: Empfehlung für minimalistisches Linux-Entwicklersystem
Verfasst: 20.04.2025 14:08
von matbal
@mk-soft Das Programm, das ich als ersten Test gewählt hatte, verwendet für die Programmeinstellungen XMLDialogs.
@MarkFranconia Ich habe Puppy mit dem minimal frugal installer auf einen USB-Stick installiert. Bei dieser Installationsart wird Puppy in einem Verzeichnis installiert und besteht nur aus einigen wenigen SFS-Files. In dieses Verzeichnis habe ich auch die DEVX-SFS kopiert. Und dort legt Puppy auch die SAVE-Datei an.
Mit dem Startup Manager (Menü - System - Bootmanager) kannst du die DEVX-SFS-Datei hinzufügen (zweiter Karteireiter).
PureBasic selber habe ich einfach auf dem USB-Stick entpackt in einem eigenen Ordner.
Re: Empfehlung für minimalistisches Linux-Entwicklersystem
Verfasst: 20.04.2025 14:58
von MarkFranconia
matbal hat geschrieben: 20.04.2025 14:08
@MarkFranconia Ich habe Puppy mit dem minimal frugal installer auf einen USB-Stick installiert. Bei dieser Installationsart wird Puppy in einem Verzeichnis installiert und besteht nur aus einigen wenigen SFS-Files. In dieses Verzeichnis habe ich auch die DEVX-SFS kopiert. Und dort legt Puppy auch die SAVE-Datei an.
Mit dem Startup Manager (Menü - System - Bootmanager) kannst du die DEVX-SFS-Datei hinzufügen (zweiter Karteireiter).
PureBasic selber habe ich einfach auf dem USB-Stick entpackt in einem eigenen Ordner.
@matbal
Ich habe es dann mal mit FossaPub64 CE ausprobiert - und ich bin weiter gekommen als mit dem Bookworm
Ich kriege Purebasic Demo zumindest zum Starten:
Es kommt dann aber die Fehlermeldung von PureBasic: "Can't load OS libraries, please re-install PureBasic"
Ich habe auch grundsätzliche Verständnisprobleme von PuppyLinux. Ich bin kein Linuxanfänger - aber auch kein Experte.
Ich schaffe es bspweise nicht die persistente Speicherung auf USB anzulegen.
FossaPub speichert immer "default" auf Festplatte. Ich haette aber gerne irgendein Icon auf dem Desktop und persistente Speicherung auf USB.
Die grundsätzliche Idee ist einfach ein kleines superschlankes tragbares Entwicklersystem auf USB - und dazu ist es natürlich notwendig, dass die persistente Speicherung auf USB ist und man das System mit der Zeit einfach anpasst.
D.w. würde ich dann die Basis, die ich habe verkleinern und reorganisieren.
Ich will hier natürlich nicht nerven. Es wäre einfach etwas. was ich gerne hätte - kein MustHave - aber vielleicht befinden sich ja einige Leute auf einem ähnlichen Pfad.
Sollte Jemand Lust verspüren, sich darüber telefonisch auszutauschen, so würde ich über BoardMsg meine Telefonnummer austauschen.
Bei Erfolg würde ich mich natürlich erkenntlich erweisen - wenn es im Rahmen bleibt = Ich bin kein Konzern oder Firma = OneMan
anonsten ... vielleicht kommt ja hier noch etwas - ich bleibe dran
danke für Feedback,
markus
Re: Empfehlung für minimalistisches Linux-Entwicklersystem
Verfasst: 21.04.2025 17:16
von mk-soft
Ich habe mal Puppy in einer VM ausprobiert.
Auch wenn Puppy Debian als Basis verwendet war diese nicht aktuell und konnte auch NICHT die erforderlichen Developer Libraries installieren.
Vielleicht sollte man ein mittlere Linux Distribution als Entwickler System verwenden.
Zum Beispiel direkt von Debian mit LXDE. Dazu habe ich mal das Live-System geladen und dann in einer VM Installiert.
Hiermit konnte ich die erforderlichen Developer Libraries installieren und PureBasic lief somit auch sofort.
Link:
https://www.debian.org/distrib/
Link mit Calamares installer
https://cdimage.debian.org/debian-cd/cu ... so-hybrid/