Gambas 3 op Raspberry Pi 400 kit

Op de meegeleverde SD kaart staat Raspbian 11.
Na installatie/configuratie bij het eerste opstarten van de Pi, moet je Gambas apart bij installeren.

  • Add/Remove software
  • Linkse kolom bij de software groepen: Ontwikkeling (Development)
  • of zoek “Gambas”
  • Kies bv “Complete Visual Development environment for Gambas”, om de hele IDE+andere onderdelen te krijgen, bevestig
  • Bevestig, wachtwoord geven : “installing packages – please wait ..”

Als de installatie klaar is, staat Gambas3 in het menu onder Programmeren: het is versie 3.15.2. De voorbeelden zijn niet mee geïnstalleerd.

Gambas3 op Raspberry Pi 5 (2)

Een andere configuratie:
- Raspberry Pi 5 Model B Rev 1.0 8GB
- OS: Debian GNU/Linux 12 (bookworm)

Gambas installeren

Add/Remove software: Gambas3 IDE 3.18.0-4 (64 bit)
Eerst even:
apt-get update

Ergens melding versie gewijzigd van 12.6 naar 12.7

apt-get upgrade

Er gebeurt een hele upgrade … nadien herstart en nog eens de updates van het desktop icoon gedraaid.

Dan software installeren, zoek gambas3
Bovenaan gambas3-3.18.0 (meta package) complete visual development environment for Gambas.

Daarna staan alle (of toch veel) gambas3 componenten geselecteerd in de Add/Remove software tool.
Bevestigen…
In het programmeermenu is nu Gambas aanwezig.

Gambas start niet

Maar ik kan het niet starten, er gebeurt op het eerste zicht niets als je via het menu start.

De opdracht in het menu-item is gambas3

Foutmelding als je van de commandline start:

ERROR #27 Cannot load component ‘gb.gtk3.wayland’: cannot find component

Check in Add/Remove Software: welke staan grijs (en zijn dus niet geïnstalleerd):

gambas3-gb-gui-opengl-3.18.0-4 transitional package
gambas3-gb-gui-qt-3.18.0-4 " "
gambas3-gb-gui-qt-webkit-3.18.0-4 " "
gambas3-gb-gui-trayicon-3.18.0-4 " "
...
gambas3-gb-inotify-3.18.0-4 filesystem events monitoring component
..
gambas3-gb-libxml-3.18.0-4 libxml component
..
gambas3-gb-option-3.18.0-4 option component
..
gambas3-gb-pdf-3.18.0-4 pdf component
..
gambas3-gb-qt5-3.18.0-4 Qt5 GUI component
gambas3-gb-qt5-ext-3.18.0-4 QT5 GUI component
gambas3-gb-qt5-opengl-3.18.0-4 OpenGL component with QT5 toolkit
gambas3-gb-qt5-wayland-3.18.0-4 Wayland
gambas3-gb-qt5-webkit-3.18.0-4
gambas3-gb-qt5-webview-3.18.0-4
gambas3-gb-qt5-X11-3.18.0-4
..
gambas3-gb-report-3.18.0-4
..
gambas3-gb-sdl-3.18.0-4 oudere SDL component vervangen door SDL2
gambas3-gb-sdl-sound-3.18.0-4
..
gambas3-gb-v4l-3.18.0-4 video for Linux
..
gambas3-gb-web-form-3.18.0-4 web application - verv d. web-gui?

De wayland component is inderdaad één van de gambas3 componenten die grijs staan, niet geïnstalleerd werden.

Bijgeïnstalleerd via software Add/Remove..

Er zijn verschillende “uitgerangeerde” componenten, zoals bv pdf die functioneel vervangen wordt door poppler, waarbij normaal is dat ze niet geïnstalleerd worden.

Gambas crasht

Vanuit Menu Programmeren: Gambas start op maar krijgt onmiddellijk een gestreept scherm (Gambas venster op volledig scherm), met in het midden er bovenop een wel leesbaar kleiner venster met de Gambas tip van de dag. Ik sluit de tooltips en druk op escape om de venstergrootte te veranderen, maar dat sluit Gambas.
Daarna kan ik niet terug starten uit het menu.
Wel vanop de commandolijn. Beetje proberen en daarna ook terug uit het menu.
Het lukt me om het venster van de Gambas IDE wat kleiner te maken, en nu krijg ik wel beeld zonder strepen.

Deze installatie-combinatie heeft dezelfde bug als voorheen al ontmoet; bij het klikken op een document uit “Data” of “Gegevens”. Zelfs al heb je het daarvoor zelf aangemaakt… programma crasht.
Voorlopig dus dezelfde truuk: die bestanden niet aanklikken (en als ze moeten veranderen dat buitenaf doen).

Gambas kan project niet openen
Maar dan, met het afhalen van bestaande projecten merk ik foutmeldingen bij het openen ervan.

Read-only array

Kan project bestand niet openen:
/home/ara/gb3prj/runcounter

Read-only array
[gb.gui.base].^^Desktop.GetDesktop.58 [gb.gui.base].^^Desktop.Types_Read.72 [gb.gui.base].^^Desktop.Is.79 VersionControl.GetTextEditor.56 VersionControl.Refresh.99 Project.Open.688 FWelcome.btnOpen_Click.186 CCoolButton.Panel_MouseUp.149 ?

Ontbreekt er nog iets van Gambas3?

Ik probeer met alle “transitional packages” (gb-gui/gui-qt/gui-qt-webkit/trayicon) bij te installeren, maar ook dat helpt niet om de bestaande projecten te openen, ook niet die op een (oudere) Raspberry Pi gemaakt zijn.

Ik kan wel een mini-project maken met een knop en een menu, dat draait en kan gecompileerd worden tot uitvoerbaar programma, en ook gestart van een icoon op de desktop.

Het lijkt dus iets te maken te hebben met de Desktop, en ik ga eens proberen een library die geen enkele Form heeft over te nemen/aan te passen uit een bestaand project. Ik pas een bestaand project in die zin aan, maar dat is niet de oorzaak blijkbaar.

Eén van de verschillen is dat de bestaande projecten allemaal in git zitten (afgehaald zijn met git clone).
Ik vindt een oude fout terug ivm het gedefinieerd zijn van EDITOR (en VISUAL ?)
Maar die instellen lijkt niets te veranderen aan de problemen.

GIT
Toch nog verdergaan op git: mijn voorbeelden waren allemaal binnengehaald van gitlab, en ik probeer nu van één daarvan de .git directory te verwijderen, en de .gitignore ook. Resultaat: ik kan het project nu wel openen! (*)

* Opgelet: het crash-probleem blijft, dus niet op README of Changes.txt klikken!

openSUSE: where is Gambas3?

(Uitzonderlijk een Engelstalige post om het probleem wat breder aan te kaarten:)
Because of general missing information, a cry for help in English on this Dutch site:

Update 4/11/2024: Zie ook “Gambas is back! Gambas3 is terug in openSUSE

Missing Gambas3

Gambas is a great programming language/application to make Linux applications (in my case for the KDE desktop), and it worked very well on openSUSE, I use it since version 1.x.

I consider Gambas(3) as a universal Linux application; I used it on several distributions, and also on Raspberry Pi.

Suddenly, in the summer of 2024, Gambas3 disappeared from openSUSE Tumbleweed. It was so bad that when doing a normal zypper dup on Tumbleweed, the Gambas3 IDE was removed! (runtime was still there).

Gambas also disappeared from the repositories normally used to install Gambas3 on openSUSE Leap (eg obs:/:build.opensuse.org/home:munix). When it was installed already, the software is marked red in Yast Software Management (I locked it now not to lose it).

Last ramaining current version I can find is in the repo home:Henry15ea: home:Henry15ea Community 3.18.1, where only a version for openSUSE Tumbleweed is available, no other versions.

On software.opensuse.org, search gambas3, under “experimental/unsupported”, you can find traces of older version 3.14:
openSUSE:Backports:SLE-15-SP3 3.14.3

I can find nowhere an explanation, or even a description of the problem for the moment.

Right now (aug 2024) the only thing that works for me is to compile Gambas3 from source (from the git repository, eg 3.19.90) on openSUSE Tumbleweed.

There used to be good support with different possibilities to install Gambas in openSUSE since Gambas2, for years and years, so I hope Gambas3 will be back soon in openSUSE…

Update 17/09: gambas3 from source still compiles fine on openSUSE Tumbleweed.

Update 4/11: gambas3 is back in openSUSE 15.6 via the Munix repo: see Gambas is back! Gambas3 is terug in openSUSE

gambas3 verdwenen na update openSUSE

Gambas3 is verdwenen …
– uit de repo’s van opensuse Tumbleweed
– uit het development menu na de zypper dup update van openSUSE Tumbleweed;
Gambas3-ide komt niet voor bij software, maar de andere onderdelen als de runtime zijn wel (nog) aanwezig, bv:

gambas3-runtime - Gambas runtime interpreter

Version:
3.19.3-1.2
Build Time:
Wed 03 Jul 2024 01:46:34 PM CEST
Install Time:
Fri 05 Jul 2024 05:25:44 PM CEST
License:
GPL-2.0-or-later
Installed Size:
2.2 MiB
Download Size:
0 B
Distribution:
home:munix9 / openSUSE_Tumbleweed
Vendor:
obs://build.opensuse.org/home:munix9
Packager:

Architecture:
x86_64
Build Host:
reproducible
URL:
https://gambas.sourceforge.net/
Source Package:
gambas3-3.19.3-1.2
Media No.:
0
Authors:

Andere versies/repo’s

In de education repository is gambas 3.14 aanwezig, dus die repo aanzetten zou een mogelijkheid kunnen zijn als een oudere versie volstaat.

In de home:Henry15ea Community is versie 3.18.1 aanwezig.

Andere openSUSE versies

In openSUSE 15.5 waren de updates gebeurd tot 2024-07-28
OpenSUSE 15.5: Gambas3 v 3.19.3
. Nu in Yast, Software Management staat alles van Gambas3 “rood”; ik heb de hele gambas3 lijst van programma’s “protected” gezet.

In openSUSE 15.4 in Yast staat alles van Gambas3, versie 3.18.4 “rood”.

Gambas3 is niet meer terug te vinden in de repo waar het uit geïnstalleerd is (obs:/:build.opensuse.org/home:munix) Zie ook software.opensuse.org

Over het verdwijnen uit de munix repo is nergens iets te vinden op dit moment.

Het heeft blijkbaar met openSUSE (of de – versie) te maken …

Op de website van gambas is niets abnormaals gemeld.

Vertrek van de bron
Mogelijkheid: de broncode van gambas afhalen en zelf compileren tot werkend programma.
Dat lukte op deze manier nog met versie 3.19.90 (20-8-2024).

Raspbian 11: $EDITOR gezocht

Editor of $EDITOR?
Een van de eerste dingen die opvallen na installatie van Gambas3 op de Raspberry Pi met OS Raspbian GNU/Linux 11 is dat Gambas naar de “Editor” vraagt bij het openen van een bestaand (git-)project:

Please set the $EDITOR environment variable with your favorite graphical text editor. Some version control commands need it

Dit heb ik opgelost door de volgende lijn toe te voegen aan /etc/profile.
export EDITOR=/usr/bin/mcedit

Select-editor
De .bashrc oplossing zoals andere Linux distributies (bv OpenSUSE Gambas opstart set $Editor) werkt hier niet op Raspbian.
De Raspberry Pi heeft zijn eigen tool voor het instellen van de editor (waarvan het resultaat niet herkend werd door Gambas), het commando

select-editor.

Daarna krijg je een keuzemenu met genummerde mogelijkheden, en kan je met een cijfer je keuze maken, bv 1. Nano.
Als je zelf bv al midnight commander geïnstalleerd had, komt mcedit ook voor in de keuzelijst.
Select-editor toont helaas niet wat de huidige keuze is.
Na de keuze zet select-editor een verborgen bestand .selected_editor in je home direoctory, met daarin
SELECTED_EDITOR="/usr/bin/mcedit"
Ik vermoed dat het bij de volgende start/login gelezen wordt.

Of toch niet?
Maar Gambas blijft de $EDITOR variabele vragen, zelfs na de volgende login. 
Ik weet dat de keuze aktief is door een test met crontab -e.

Het bestand ~/.bashrc bestaat ook hier, en ik voeg toe: 
EXPORT EDITOR=/usr/bin/mcedit
maar op geen enkele manier (met aanhalingstekens, zonder, met $, zonder..) werkt dat.
(m.a.w. Gambas3 blijft de vraag stellen).

Ik probeer de volgende lijn  toe te voegen aan /etc/profile:
export EDITOR=/usr/bin/mcedit
(sudo nodig).

Na herstarten op de commandline 
echo $EDITOR
/usr/bin/mcedit

Deze keer ok!

Gambas weg na update naar openSUSE 15.4

Gambas heeft in de main repositories van openSUSE gezeten, en kan daaruit geïnstalleerd geweest zijn in een oorspronkelijke installatie.

Maar in 15.4 zit Gambas NIET MEER in de standaar repositories. Bij de Distribution Update (zypper dup) wordt Gambas3 GEWIST.

Je moet dan Gambas3 opnieuw installeren, en dat kan gemakkelijk van de opensuse software site:
https://software.opensuse.org/package/gambas3-ide

Kies gambas3-ide, dan komt de rest automatisch mee.

Fouten op “../GA/pool/” repositories zouden dat nog kunnen tegenhouden, schakel die uit of sla die over, de Gambas repository zal wel toegevoegd worden maar door de foutmeldingen is de installatie niet uitgevoerd. Die moet je opnieuw starten (kan ook vanuit Yast2; gambas3-ide aanduiden, rest bevestigen)

Gambas opstart: “set $EDITOR” bericht

Bij het opstarten geeft Gambas3 de melding:

Please set the $EDITOR environment variable with your favorite graphical text editor. Some version control commands need it.

Je kan die variabele instellen met:

export EDITOR=mijnprogramma
export VISUAL=mijnanderprogramma

bv
export EDITOR=nano

Om vast in te stellen:
.bashrc

In opensuse staan al een paar voorbeelden klaar, je moet enkel het hekje verwijderen:

#export EDITOR=/usr/bin/vim
#export EDITOR=/usr/bin/mcedit

Gebruik één van de voorbeelden of vul je eigen favoriet in, als ..

  1. /bin/ed
  2. /bin/nano
  3. /usr/bin/vim.basic
  4. /usr/bin/vim.tiny

Nadien zal de vraag niet meer gesteld worden.
Git zal ook die editor gebruiken. (?check)

Gambas 3 op openSUSE 15.4

Na installatie is er geen Gambas aanwezig in de software beheerder van Yast.
(openSUSE Leap 15.2 had een officiële 3.14.3)
(openSUSE Leap 15.3 had een officiële 3.14.3 bp153.1.25 ondertussen)

Zoek dan op software.opensuse.org:

https://software.opensuse.org/package/gambas3-ide

Show community packages, daar heb je keuze uit:

  • home:munix9 Community
    3.17.2
  • home:munix9:unstable Community
    3.17.90+git.20220519….

3.17.2 [1 click install]
Open with yast, install

Kreeg wat foutmeldingen:

An error occurred while initializing the software repository.
Details:
https-download.opensuse.org-e5b4b647: [https-download.opensuse.org-e5b4b647|https://download.opensuse.org/repositories/SUSE:/SLE-15-SP1:/GA/pool/] Valid metadata not found at specified URL
History:
– [https-download.opensuse.org-e5b4b647|https://download.opensuse.org/repositories/SUSE:/SLE-15-SP1:/GA/pool/] Repository type can’t be determined.

Try again?


Eerst ja, maar dat werkte niet, dus op den duur nee gezegd bij opnieuw proberen, en dan ging de isntallatie verder met de volgende onderdelen, weet niet wat er mist of mis zal gaan…

Gambas IDE komt niet voor in menu, dus ik ga terug naar yast en check de individuele paketten..

Repo is wel toegevoegd, ik kan nu gambas vinden bij software.
Ik selecteer en installeer verder van hieruit “gambas3-ide”, wat alle andere paketten automatisch selecteert (behalve de de debuginfo en nog een paar andere als gambas3-gb-web-form).

Installed Packages: 146
autoconf, automake, bison, bison-lang, dwz, gambas3, gambas3-dev-tools, gambas3-gb-args… (more)

Ok nu:
Menu Development, Gambas3: 3.17.2

Gambas3 zelf compileren

Van broncode
Als je de laatste nieuwe versie van gambas wil, kan je de broncode afhalen en zelf compileren; dat wordt op gambaswiki.org/wiki/install beschreven. In mijn geval had ik voordien al een werkende Gambas3 uit de distributis openSUSE 15.3, en vervolgde het zo (ik volg de bovenstaande handleiding):

Software te installeren:
– automake (gnu): 1.11.1 (OpenSuse: Ok; 1.15.1-4.10.2)
– autoconf (gnu): 2.68 (OpenSuse: Ok; 2.69-1.445)
– libtool (gnu): 2.4 (OpenSuse: Te installen: 2.4.6-3.4.1)
Deed ik via Yast, Software management.

Niet vermeld maar ook nodig: git
zypper in git

Dan zie ik onderaan nog een commando waarin veel meer dan dit geïnstalleerd wordt:

zypper update -y && zypper install -y libtool gcc glew-devel gmime-devel gtk2-devel gtk3-devel libqt5-qtx11extras-devel libqt5-qtwebengine-devel libQt5Xml-devel libQt5Sql-devel libqt5-qtsvg-devel libQt5Gui-devel libQt5Core-devel libQt5Sql5-postgresql libQt5Sql5-unixODBC libQt5Sql5-mysql libQt5Sql5-sqlite webkit2gtk3-devel libICE-devel libSM-devel unixODBC-devel libzip-devel libzstd-devel libmariadb-devel gsl-devel libopenssl-devel alure-devel postgresql-devel libcurl-devel libSDL_ttf-devel libSDL_mixer-devel libSDL-devel libSDL2_ttf-devel libSDL2_mixer-devel libSDL2_image-devel libSDL2-devel libxslt-devel libv4l-devel librsvg-devel gtkglext-devel libgnome-keyring-devel libjpeg62-devel libpoppler-devel libpoppler-glib-devel imlib2-devel gmp-devel gstreamermm-devel

Ik heb eerst wat “backports” repo’s moeten afzetten alvorens bovenstaande uit te kunnen voeren.
Ok.

Directory gemaakt om gambas in te compileren:
mkdir gambasfromsource
cd gambasfromsource

Afhalen van de gambas code (zonder history –depth=1):

$ git clone --depth=1 https://gitlab.com/gambas/gambas.git

Cloning into ‘gambas’…
remote: Enumerating objects: 7648, done.
remote: Counting objects: 100% (7648/7648), done.
remote: Compressing objects: 100% (6718/6718), done.
remote: Total 7648 (delta 1155), reused 5252 (delta 493), pack-reused 0
Receiving objects: 100% (7648/7648), 14.88 MiB | 13.98 MiB/s, done.
Resolving deltas: 100% (1155/1155), done.

Versie controleren:
cd ~/gambasfromsource/gambas>
cat VERSION

3.17.0

(latere versies waren bv 3.19, 3.19.90, ..)

Om te updaten naar weer laatste versie: git pull

git pull

Already up to date.

(omdat ik de code net afgehaald had).

Drie stappen:

Om te “compileren”; opeenvolgende commando’s van in de gambas dir:

./reconf-all
(cpu naar 65% en duurt ong 5 min)

./configure -C -q
(cpu naar 70% en duurt ong 2 min.)

Output: een heleboel “configure: WARNING: Unable to met … requirement: Qt.. ”
en eindigend:

|| THESE COMPONENTS ARE DISABLED:
|| – gb.db.sqlite2
|| – gb.qt4
|| – gb.qt4.ext
|| – gb.qt4.opengl
|| – gb.qt4.webkit
|| – gb.qt4.webview
|| – gb.qt5.webkit
||

Om te “maken” :

make -j $(nproc)

cpu: 100%, duurt ong. 15 min.

Om te “installeren”:
(moet als root)

sudo make install
Password:

cpu 50% duurt 4 min.

Daarna kan je gambas starten, en ik zie als versie nu 3.17 ipv 3.14.
In de titelbalk staat een waarschuwing:

ONTWIKKELVERSIE GEBRUIK OP EIGEN RISICO!

Nu ben je ook klaar om Gambas zelf aan te passen

Gambas3 na update opensuse 15.2

Vanuit Leap 42.3 – vanuit Leap 15.1

Vanuit Leap 42.3

Een werkend systeem op openSUSE Leap 42.3 is na een reeks upgrades tot openSUSE Leap 15.2 gekomen. Helaas lijkt gambas3 nu niet meer te werken. Op de desktop merk je gewoon dat de IDE niet start. Bestaande programma’s, gemaakt in gambas, blijven wel werken.

Op de commandolijn starten:
gambas3
gbx3: unable to find startup file

Dit verschijnsel zagen we vroeger al eens:
http://gambas.copyleft.be/blog/archives/1290

De oplossing is gelijkaardig; gambas3-gb-jit ontbreekt en moet bij-geïnstalleerd worden (of/ook gambas-ide).

Dat duurt maar een paar seconden… en de Gambas3 (IDE) start weer.
Continue reading