Gambas2 op OpenSUSE 13.1: meer dan de runtime?!

Het lijkt erop dat Gambas2 stilaan en onvermijdelijk Einde Loopbaan is. In de huidige installatie van OpenSUSE 13.1 komt bv alleen nog de runtime voor van Gambas2, tenminste als je de community repositories/Educational geïnstalleerd hebt. (bronnen van de gemeenschap)
Gambas 2.24.0 is installeerbaar van de One Click install
Ik ging specifiek op zoek naar de gambas2 IDE en vond die ook:
http://software.opensuse.org/package/gambas2-ide:

Als u doorgaat zullen de volgende wijzigingen worden aangebracht aan uw systeem:
Toe te voegen installatiebronnen:
http://download.opensuse.org/distribution/13.1/repo/non-oss/ (openSUSE:13.1:NonFree)
http://download.opensuse.org/distribution/13.1/repo/oss/ (openSUSE:13.1)
http://download.opensuse.org/repositories/Education/openSUSE_13.1/ (Education)
http://download.opensuse.org/repositories/devel:/languages:/perl/openSUSE_13.1/ (devel:languages:perl)
http://download.opensuse.org/repositories/devel:/languages:/python/openSUSE_13.1/ (devel:languages:python)

Te installeren software:
gambas2-ide

Gambas2 programmeeromgeving duikt op in het klassiek KDE menu recent geïnstalleerd.

Ubuntu 12.04 LTS naar 14.04 zonder Gambas2

Op Ubuntu 12.04 draait Gambas2 vlot en snel. Bij een upgrade naar 14.04 krijg je heel wat nieuwe softwareversies; maar wat gebeurt met de geïnstalleerde Gambas2 (2.23) ?

Gambas3 is immers niet zomaar een nieuwe versie van Gambas2 als bij een nieuwe Firefox versie; sommige fundamentele zaken zijn veranderd, en je ontsnapt er niet aan om de broncode van programma’s aan te passen voor gebruik in Gambas3.

Na installatie van de upgrade krijg je de vraag om oude softwarepaketten te verwijderen; zo’n 200-tal zijn niet meer nodig, een 120 worden aangeboden om te verwijderen met een klik.

Kijk even naar de “Details”, in de alfabetische lijst ben je vrij snel bij de “g” van Gambas. Gambas2 staat aangeduid om te verwijderen! Je kan kiezen voor “behouden”.

Daarna is het computer herstarten. Gambas2 IDE, en de in Gambas2 gemaakte applicaties (met hun icoon op de desktop) werken nu nog.

ps: Ik weet niet hoe het zit in andere distributies; op openSUSE heeft de combinatie Gambas2 en Gambas3 lang goed gewerkt (nog op dit moment september 2014).

Gambas3 start niet meer op na upgrade openSUSE 13.1: omzeilen

Kort:

Probleem na upgrade van openSUSE 13.1: gambas3 start niet meer op.

openSUSE 13.1 – Gambas 3.5.4-3.1 na upgrade: “unable to find startup file”
(of start met commando gambas3: “KDEInit could not launch ‘gambas3.gambas’: Could not find ‘gambas3.gambas’ executable)

Oplossing: installeer van de home:munix9:gambas repository (** Beschrijving om probleem op te lossen/te omzeilen)

Probleem-beschrijving

/usr/bin/gambas3
gbx3: unable to find startup file

Er zijn gambas2 en gambas3 files te vinden in:
/usr/bin
/usr/share

cyb@linuxbox:/usr/bin> ls gb*
gba2 gba3 gbc2 gbc3 gbi2 gbi3 gbr2 gbr3 gbs2 gbs2.gambas gbs3 gbs3.gambas gbw2 gbw3 gbx2 gbx3

cyb@linuxbox:/usr/bin> ls gamb*
gambas2 gambas2-database-manager.gambas gambas2.gambas gambas3

en

:/usr/share> ls gamb*
gambas2:
examples help info

gambas3:
control examples gb.sdl help icons info

en dan nog wat links en iconen en zo.

Info: opensuse 13.1 / 64 bit / KDE 4.11.5/gambas 3.5.4-3.1
Repository: OpenSUSE / Education.
Geen beschrijvingen op web gevonden op dit moment (16/7).

Gambas3 komt voor in 3 repositories: educational, home:ccgx en home:munix9:gambas. (software.opensuse.org/package/gambas3)
Ik probeer om te schakelen naar home:ccgx , wat gambas 3.5.4-4.2 installeert.
Maar dat werkt evenmin; exact dezelfde melding “unable to find startup file”, na:

  • 1. de-installeren- alle bestanden ivm gambas3 en gb3 zijn weg in beide directories;
  • 2. uitschakelen softwarebron en inschakelen andere softwarebron;
  • 3. opnieuw installeren

Sommige bestanden hebben een grootte van 0, en bij het starten van gbi3 krijg ik foutmeldingen.
(zien helemaal onderaan *)

** Beschrijving om probleem op te lossen/te omzeilen:

Verander repository naar home:munix9:gambas

Je kan ook via software.opensuse.org zoeken op gambas3; daar heb je de mogelijkheid tot “1-click” install. Daarbij worden volgende repositories toegevoegd:

  • http://download.opensuse.org/repositories/home:/munix9/gambas/openSUSE_13.1/
  • http://download.opensuse.org/repositories/openSUSE:/13.1/standard/

Deze keer is het goed; de “munich” repository installeert wel een versie die opstart.
in Yast 18/7: Gambas 3.5.4-2.2 Build time Sat 12 Jul 2014 09:59:16 PM CEST
Deze versie kreeg (een update) updates:
22/7/2014 Gambas 3.5.4-4.1 Build time Tue 22 Jul 2014 02:06:39 AM CEST
23/7/2014 Gambas 3.5.4-5.1 Build time Tue 22 Jul 2014 08:55:53 AM CEST
06/8/2014 Gambas 3.5.4-5.2 Build time Wed 30 Jul 2014 03:50:31 PM CEST
12/8/2014 Gambas 3.5.4-5.3 Build time Mon 06 Aug 2014 03:25:52 PM CEST
21/8/2014 Gambas 3.5.4-5.4 Build time Thu 21 Aug 2014 12:14:22 AM CEST
22/8/2014 Gambas 3.5.4-5.5 Build time Fri 22 Aug 2014 01:11:56 AM CEST
22/8/2014 Gambas 3.5.4-5.6 Build time Sat 23 Aug 2014 03:37:15 AM CEST

18/9/2014 Gambas 3.5.4-5.10 Build time Thu 18 Sep 2014 05:56:46 AM CEST
23/9/2014 Gambas 3.5.4-6.1 Build time Sun 21 Sep 2014 08:01:17 PM CEST
23/9/2014 Gambas 3.5.4-6.3 Build time Wed 24 Sep 2014 03:26:56 PM CEST (6.2 gemist?)
29/9/2014 Gambas 3.5.4-6.4 Build time Mon 29 Sep 2014 07:52:39 PM CEST
07/10/2014 Gambas 3.5.4-6.5 Build time Mon 06 Oct 2014 04:57:15 PM CEST

Regelmatige updates blijkbaar, niet slecht dus!

Update 22/10/2014:
Als ik na een niet-werkende gambas3 uit de education repo, nu die uit de munich repo probeer te installeren krijg ik een foutmelding op de “ports” repositories:
ports/
Ports/extra/
Update/ports/

Ik heb die ge-deselecteerd, en de installatie verdergezet.
Lijkt te werken.

Continue reading

Component in Gambas2

Basis-uitleg:

  • hoe componenten in Gambas werken
  • hoe ze zelf te maken
  • hoe ze te installeren.

De originele documentatie over componenten vermeldt uitdrukkelijk dat alle “onderstaande tekst” voor Gambas3 is, dus ik doorloop het even in en voor Gambas2:

Componenten

De componenten die je in de Gambas IDE ziet (project, properties), zijn mee geïnstalleerd met de Gambas IDE. (Kijk in je Linux pakket manager om bij te installeren).

In bv OpenSUSE vind je ze na installatie in: /usr/lib64/gambas2/
Bv de gb.chart.component en gb.chart.gambas

De .component is een tekstbestand, en bevat voor gb.chart:

[Component]
Key=gb.chart
State=2
Authors=Fabien Bodard
Needs=Form
Requires=gb.form

en voor gb.settings:

[Component]
Key=gb.settings
Authors=Benoît Minisini

In de IDE zijn de componenten uit te kiezen bij de projecteigenschappen, en tonen bovenstaande zich als:

gb.chart
Chart drawing (Beta version)
Authors: Fabien Bodard
Requires: Graphical form management, gb.form.

en

gb.settings
Application settings managament
Authors: Benoit Minisini

Bij het gebruik van Settings in je broncode worden volgende methodes en eigenschappen zichtbaar in de editor:

De broncode, van bv Settings, vind je na het afhalen en uitpakken van de broncode:
gambas2-2.23.1/comp/src/gb.settings

Een uittreksel (… is overgeslagen code):

' Gambas class file
'
EXPORT
CREATE STATIC
'
CLASS Window
'
STATIC PROPERTY READ Path AS String
'
PRIVATE $sPath AS String
PRIVATE $sTitle AS String
PRIVATE $cSlot AS Collection
PRIVATE $bModify AS Boolean
'
PRIVATE SUB Load()
'  
  DIM hFile AS File
  DIM iLine AS Integer
  DIM sLine AS String
  DIM sSlot AS String
  DIM iPos AS Integer
'
  $cSlot = NEW Collection
  IF NOT Exist($sPath) THEN RETURN
' ...
PUBLIC SUB _new(OPTIONAL Path AS String, OPTIONAL Title AS String)
'
  DIM sDir AS String
  DIM sPath AS String
  DIM sElt AS String
'
  IF Left(Path) <> "/" THEN 
    IF NOT Path THEN
' ...
PUBLIC SUB _free()
'
  TRY ME.Save
'
END
'
PUBLIC SUB Save()
'
  DIM aKey AS NEW String[]
  DIM cSlot AS Collection
  DIM sKey AS String
  DIM hFile AS File
  DIM vVal AS Variant
'
  IF NOT $bModify THEN RETURN
' ....
PRIVATE FUNCTION GetSlot(sKey AS String) AS String
' ...
PUBLIC FUNCTION _get(Key AS String, OPTIONAL {Default} AS Variant) AS Variant
' ...
PUBLIC SUB _put(Value AS Variant, Key AS String)
' ...
PUBLIC SUB Clear(ParentKey AS String)
' ...
PUBLIC SUB Read(hObject AS Object, OPTIONAL sKey AS String, OPTIONAL vDefault AS Variant)
  '
  DIM sVal AS String
  DIM aVal AS String[]
  '
  IF Object.Is(hObject, "Window") THEN
    sKey = Object.Type(hObject) &/ sKey
    LoadWindow(hObject, sKey)
  ELSE
    IF NOT sKey THEN TRY sKey = hObject.Name
    sKey = GetTopLevel(hObject) &/ sKey
    'DEBUG sKey
    TRY hObject.Settings = ME[sKey, vDefault]
  ENDIF
  '
END
'
PUBLIC SUB Write(hObject AS Object, OPTIONAL sKey AS String)
  '
  IF Object.Is(hObject, "Window") THEN
    sKey = Object.Type(hObject) &/ sKey
    SaveWindow(hObject, sKey)
  ELSE 'IF Object.Is(hObject, "SidePanel") THEN
    IF NOT sKey THEN TRY sKey = hObject.Name
    sKey = GetTopLevel(hObject) &/ sKey
    'DEBUG sKey
    TRY ME[sKey] = hObject.Settings
  ENDIF
  '
END
'
STATIC PRIVATE FUNCTION Path_Read() AS String
  '
  DIM sPath AS String = Application.Env["XDG_CONFIG_HOME"]
  IF NOT sPath THEN sPath = System.User.Home &/ ".config"
  RETURN sPath &/ "gambas"
  '
END
'
STATIC PUBLIC FUNCTION Array(...) AS String[]
  '  
  DIM aVal AS NEW String[]
  DIM iInd AS Integer
  DIM sVal AS String
  DIM vVal AS Variant
  '
  FOR iInd = 0 TO Param.Max
    vVal = Param[iInd]
    IF IsBoolean(vVal) THEN 
      sVal = IIf(vVal, "1", "0")
    ELSE
      sVal = CStr(vVal)
    ENDIF
    aVal.Add(sVal)
  NEXT
  '
  RETURN aVal
  '
END
' 
PUBLIC SUB Reload()
  '
  Load
  '
END

Conclusies:

Classe begint met:
EXPORT
CREATE STATIC

De bruikbare, dwz van buitenaf zichtbare elementen zijn vet weergegeven in de broncode hierboven.

Het path is een eigenschap die van buitenaf (enkel) leesbaar moet zijn.

Dat wordt gerealiseerd met een interne variabele die in de (automatisch bestaande) functie _Read() wordt gebruikt om de externe alleen-lezen variabele af te schermen. Als gevolg komt die eigenlijk twee keer voor, waarbij je onderscheid moet kunnen maken tussen de namen, wat hier gedaan wordt door de private variabele als $sPath te definieren, en de externe gewoon als Path:

 
STATIC PROPERTY READ Path AS String

PRIVATE $sPath AS String
'
STATIC PRIVATE FUNCTION Path_Read() AS String
  '
  DIM sPath AS String = Application.Env["XDG_CONFIG_HOME"]
  IF NOT sPath THEN sPath = System.User.Home &/ ".config"
  RETURN sPath &/ "gambas"
  '
END

Allerlei procedures (groene bol) zonder of met (één of meer optionele) parameters:

PUBLIC SUB Save()
PUBLIC SUB Reload()
PUBLIC SUB Clear(ParentKey AS String)
PUBLIC SUB Write(hObject AS Object, OPTIONAL sKey AS String)
PUBLIC SUB Read(hObject AS Object, OPTIONAL sKey AS String, OPTIONAL vDefault AS Variant)

De array ziet er zo uit (groene kubus):

STATIC PUBLIC FUNCTION Array(...) AS String[]

Zelf Component maken

Zelf maak je in de IDE een nieuw project, of wijzigt* een bestaand via menu:

Project, Properties, Options

kruis aan:

Options, Component: Yes. (Advancement: Beta)

Dat voegt onmiddellijk de tabbladen “Provides” en “Requieres” toe:

Schermafbeelding project venster gambas

Component in Gambas2

* Wijzigen van een bestaand, niet als component gestart project naar “component” leverde me een crash op bij een klik in het tabblad “Provides” als daar nog niets aanwezig is.

Bij een nieuw project krijg je dan
Classes:

  • CContainer
  • CControl

En onder Data de Controls:

  • ccontainer.png
  • ccontrol.png

Class CContainer bevat:

' Gambas class file

EXPORT

INHERITS UserContainer

PUBLIC SUB _new()

END

En Class CControl bevat:

' Gambas class file

EXPORT

INHERITS UserControl

PUBLIC SUB _new()

  DIM hLabel AS Label
  
  hLabel = NEW Label(ME) AS "MyLabel"
  hLabel.Text = "Gambas!"
  hLabel.Font = Font["+4,Bold,Italic"]
  hLabel.Border = Border.Plain
  
END

PUBLIC SUB MyLabel_Enter()

  LAST.Text = "Gambas Almost Means BASIC!"

END

PUBLIC SUB MyLabel_Leave()

  LAST.Text = "Gambas!"

END

De IDE maakte deze bestanden aan, samen met 2 grafische bestanden, en ik veronderstel dat de code een soort voorbeeldcode is die je zelf kan aanpassen of weggooien als je ze niet nodig hebt.

Bij een bestaand project met classen die je algemeen wil hergebruiken: Begin van je project en pas aan zoals hierboven uitgelegd. Ter vergelijking kan je de broncode van Gambas2 gebruiken als voorbeeld.

In de broncode van je class zelf moet je volgens de documentatie met sleutelwoord “EXPORT” aangeven dat ze geëxporteerd moet worden.

Je kan er een gewoon source archive van maken (tar.gz) om te verspreiden naar de gebruikers.

Je kan als gebruiker het project “compileren”; met “make executable”. Daar krijg je een extra optie:

“Install in the user component directory”

Daardoor wordt de component bruikbaar vanuit je Gambas2 IDE, menu Project, Properties, Components.
Hij komt onderaan in de lijst van de componenten, onder de extra titel “User Components”. Geniaal eenvoudig!

De bestanden .gambas en .component worden geïnstalleerd(*) in
~/.local/lib/gambas2
waardoor ze bruikbaar worden in al de gebruiker’s gambas2 projecten.

* Opgelet!
Ze worden daar niet naartoe gekopieerd, maar er wordt slechts een link, een verwijzing gemaakt naar de gecompileerde versie (i.e. de locatie waar je ze gecompileerd hebt). Gooi het originele project daar weg, en je hebt een probleem!

Nota: virtuele class
In geval van een hierarchie van klassen, waarbij de hoogste een virtuele klasse is, die nooit rechtstreeks gebruikt wordt, moet je ze benoemen met een begin-underscore “_”, zodat ze onzichtbaar wordt. De verwijzing INHERITS hoofdklasse in de subklassen ook aanpassen naar INHERITS _hoofdklasse natuurlijk.

Gambas 2 op openSUSE 11.4

Door omstandigheden moet ik Gambas2 op een nieuwe openSUSE 11.4 installeren, op het randje (over eigenlijk) van de levensduur van deze distributie. Onmiddellijk duikt ook de vraag op hoe hier gambas2 op te krijgen, als de repositories niet meer beschikbaar zouden zijn.

http://software.opensuse.org/package/gambas2

levert twee mogelijkheden op voor openSUSE 11.4:

KDE:KDE3
2.24.0
32 Bit
64 Bit
Source
1 Click Install

home:swyear
2.20.2
Source
1 Click Install

Geluk?

(upd 2015-05) Versie 2.20
Ook nu een “nieuwe” opensuse 11.4 install waarvoor ik Gambas nodig heb. Ik plak de swyear URL in Yast Softwarebronnnen:
repositories/home:/swyear/openSUSE_11.4
Gambas2 kan daarna gestart worden in KDE, maar kreeg geen menu-item/icoon (zelfs niets in recent geïnstalleerd menu).
Bovendien

  • is dit (v. 2.20) niet de meest recente versie die bestaat van Gambas2 (v. 2.24)
  • zitten de voorbeelden er niet bij.

Een menu-item kan je zelf maken, het icoon vind je hier op https://build.opensuse.org/package/show/Education/gambas2
(end upd 2015-05)

2.24
Ik kies de meest recente (bovenste), hoewel daar enkel gesproken wordt over de runtime.

Er wordt kort iets geïnstalleerd, maar in het menu komt Gambas niet voor nadien.

In Yast, Software Management, zoek “gambas”, krijg je wel een uitgebreide keuze aan gambas op het menu: het zijn alle aparte onderdelen; de Gambas2 Runtime Environment blijkt al aanwezig te zijn. Ik selecteer nu de “Gambas IDE” : (dan komt de rest van de componenten mee)

gambas2-ide – The Gambas Development Enviroment.

Nadien is Gambas 2.24 geïnstalleerd, en ook vanuit het menu bereikbaar (niet zo fraai benoemd*):

Menu Recently Installed/Gambas2

Menu Development (nieuw bijgekomen) / “Integrated Envir. (Basic Development Environment) *
Je kan die bescrhijving veranderen met de menu editor: Menu, “programma’s bewerken”, Development openklikken en daar blijkt dat de oorzaak KDE is: Als er maar 1 item voorkomt in het menu krijgt het menu geen submenu’s om dat item te starten, maar telt het menu zelf, hier “Integrated Environment”. Dat werkt goed als je een menu hebt dat “Spreadsheet” heet, en dan bevolkt wordt door 1 of meer spreadsheet programma’s, maar hier is het onduidelijk. Maak eventueel een nieuw submenu op hoofdniveau aan (bv “Snel” met icoon van hartje of rode bol of iets zeer herkenbaars) en zet het daarin (kopieer of sleep).

Upd: Of pech?
Later lukte het niet meer op deze manier, maar eind oktober 2014 installeerde ik zo:
– Yast, Softwarebronnen, toevoegen (URL opgeven).
– plak daar:
http://download.opensuse.org/repositories/KDE:/KDE3/openSUSE_11.4/
Bevestigen en in het softwarbeheer gaan kijken.
Zoek, “gambas2”; kies de gambasIDE en alles wat nodig is wordt mee geselecteerd.


Upd nov 2014
Andere situatie: nieuwe opensuse 2014 installatie met alleen de runtime: ook van http://software.opensuse.org/package/gambas2, dan onder “unsupported distributions” openen, en dan
KDE:KDE3 – 2.24.0 32 Bit
En bevestigen; er begint een download die redelijk wat extra paketten ook afhaalt.
Nadien is de gambas runtime geïnstalleerd:

gambas2 – Runtime Environment for Gambas

/usr/bin/gambas2
/usr/bin/gambas2-database-manager.gambas
/usr/bin/gambas2.gambas

3 files total

Volgende vraag: hoe gebruiken? Ik heb de runtime geïnstalleerd en ik heb een programma dat in de gambas IDE gecompileerd werd tot een .gambas bestand. Bij pogingen het programma te draaien krijg ik altijd foutmeldingen, bv

/usr/bin/env: gbr2: No such file or directory

gbr is een link naar gbx (zag ik op een systeem met de hele Gambas2 IDE); gbr en gbx bestaan niet hier. Maar zelfs als ze even geleend worden van het andere systeem werkt het hier niet mee.

Ik doe nog eens het ommetje langs de opensuse website en kies nog eens de install van de 32bit versie uit de KDE3 repository:
http://software.opensuse.org/package/gambas2
En na wachtwoord vraag begint packagekit weer iets te installeren. Een hele lijst zelfs, waarin ik zie voorbijkomen:
waarin ook gambas2, en verder: samba, gimp-help, libreoffice converter en extentions, enz… om te eindigen in “File was installed successfully”.
Maar ik zie verder niet veel verschil, behalve dat mijn harddisk nu voor 4.4 Gb vol is ipv 3.9.

Ik voeg dus nog de KDE3 repository toe, manueel, want de community optie werkt niet in mijn huidige 11.4:
http://download.opensuse.org/repositories/KDE:/KDE3/openSUSE_11.4/

Daarna is er veel meer Gambas2 in Yast/Software management.
Ik zie nu alle afzonderlijke componenten, en kies de gambas2-gb-gui alleen uit. Die vereist dan nog een paar extra componenten, zoals de “runtime”- die zal daarmee vervangen worden veronderstel ik.
Ik zit nu aan 4.5 Gb ruimtegebruik.
Ik mis nu gb.form, die in het package management eruitziet als:
gambas2-gb-form - The control component for both GTK+ and qt
(Dat moet je weten als je zypper wil gebruiken). Install.
Zelfde voor:
gb.db: zypper install gambas2-gb-db
gb.db.form: zypper install gambas2-gb-db-form
gb.settings: zypper install gambas2-gb-settings
gb.qt: (dit zijn er een paar meer):
zypper install gambas2-gb-qt

Loading repository data…
Warning: Repository ‘openSUSE-11.4-Update’ appears to outdated. Consider using a different mirror or server.
Reading installed packages…
Resolving package dependencies…

The following NEW packages are going to be installed:
gambas2-gb-qt kdelibs3-default-style qt3

The following recommended package was automatically selected:
kdelibs3-default-style

3 new packages to install.
Overall download size: 3.1 MiB. After the operation, additional 10.2 MiB will be used.
Continue? [y/n/?] (y):
Retrieving package qt3-3.3.8c-219.1.i586 (1/3), 2.8 MiB (9.1 MiB unpacked)
Retrieving: qt3-3.3.8c-219.1.i586.rpm [done (377.9 KiB/s)]
Retrieving package kdelibs3-default-style-3.5.10-232.1.i586 (2/3), 128.0 KiB (381.0 KiB unpacked)
Retrieving: kdelibs3-default-style-3.5.10-232.1.i586.rpm [done (0 B/s)]
Retrieving package gambas2-gb-qt-2.24.0-22.1.i586 (3/3), 190.0 KiB (696.0 KiB unpacked)
Retrieving: gambas2-gb-qt-2.24.0-22.1.i586.rpm [done]
Installing: qt3-3.3.8c-219.1 [done]
Installing: kdelibs3-default-style-3.5.10-232.1 [done]
Installing: gambas2-gb-qt-2.24.0-22.1 [done]

Maar daarna draait de applicatie perfect! En zonder de Gambas2-IDE.

Eens de meestgebruikte componenten geïnstalleerd zijn toekomstige programma’s minder omslachtig te installeren, tenzij ze weer een nieuwe component nodig hebben.
Dit soort afhankelijkheden wordt waarschijnlijk opgevangen als je vanuit Gambas installatie-packages maakt.


Upd 2016-01-19: toevoegen repo gaat niet in Yast, wel zo:
zypper ar http://download.opensuse.org/repositories/KDE:/KDE3/openSUSE_11.4 gambasKDE3

Gambas 2 en Gambas 3 op OpenSUSE 12.1

Gambas 2 uit gbvalor
Dit is een andere (*) installatie van Gambas 2 en 3 op openSUSE 12.1 en ze verliep vlekkeloos:
– openSUSE 12.1 van DVD geïnstalleerd.
– software bijgeïnstalleerd: lamp server enz.
– community repositories laten scannen, en .
– repository bijgeïnstalleerd: Google zoek op “gbvalor”, waarvan ik weet dat het de gambas repository is die ik meestal gebruik.
– in Yast, repositories, nieuwe, geef URL, de URL ingeplakt; die wordt gecheckt en aanvaard.
– software management, zoek “gambas”; de hele reeks gambas componenten is beschikbaar.
– Kies Gambas2 IDE, bevestig alles.
– Daarna is het menu-item “Development” bijgekomen (in de “classic” menu-style), met daarin Gambas2; start perfect.
– Nadien wordt het pakket vermeld als behorende tot “Development/Tools/IDE” en als leverancier “openSUSE-Education”.

Als je view op Repositories zet, vind je zowel Gambas 2 als 3 terug onder openSUSE BuildService – Education.

Hetzelfde voor Gambas3:
– Yast, software management, zoek “Gambas”
– Selecteer “Gambas 3 IDE”, bevestig.
– Gambas 3 is daarna opgenomen in het menu onder “Developement”, en start perfect.
– Nadien bij “Package Group: Development/Tools/IDE”, vendor “openSUSE-Education”

Bij Software, view “Pattern” is gambas3 IDE terug te vinden onder “Youth Education Desktop software”, gambas2 vind ik niet terug.

(*)
Op een eerdere openSUSE 12.1 installatie kreeg ik Gambas3 oorspronkelijk niet vlot geïnstalleerd, maar dat was misschien niet representatief…

Gambas 3 (en 2) zoeken voor OpenSUSE 12.1

Vooraf: Installeer openSUSE 12.1, bv van een CD/DVD waarvan je de inhoud kan afhalen van http://software.opensuse.org/121/en ( Algemeen: http://www.opensuse.org/ )

Gambas 3
Daarna zoek je Gambas voor openSUSE:
http://en.opensuse.org/Gambas; in de rechtse kolom heb je “Download for openSUSE:” en de links naar 12.1, 11.4 en 11.3 (op moment van dit schrijven).

opensuse install gambas
Je komt op een soort Package Search, waar je kan kiezen uit Gambas 2 en 3 voor verschillende versies van openSUSE.

  • Versie 3 is net uit: “3.0.0.3”

Bovenaan de lijst met software staat meestal het algemene pakket – de interpreter- (zoek programmeeromgeving of “IDE”, met alles erbij of installeer dat later), eronder de afzonderlijke modules, om enkel te installeren wat je nodig hebt.

Rechts staat de “repository” waar het uitkomt; bv “Education/oepnSUSE_12.1”.

Net daaronder een “1 Click install” link.

Net daaronder krijg je een gedetailleerde tabel met (link naar) i586-, src- (source) en x86_64- (64 bit) versies.

Een klik op “1 Click install” link en Firefox biedt aan om gambas3.ymp te openen met “Yast 1-Click Install”. (ok)

Er worden automatisch een paar repositories (perl, python, Education, non-oss..) toegevoegd. (bevestig: next).

Select the software components you wish to install: [v] gambas3
Alles staat klaar, dus bevestig (next) en bevestig nog eens het overzicht.

Geef het root wacthwoord om te mogen installeren. Ik bevestigde de key van Perl en van python (trust).

Sluit af na:

Software installation
Installation was successful. (Finish)

Gambas IDE

Meestal staat na installatie Gambas bij in je menu; ik merk hier in het “traditionele” KDE-menu dat er geen rubriek (programmeren of Educational of zo) is bijgekomen. Evenmin zie ik het verwachte “laatst geïnstalleerd” menu-item. Nee, opnieuw inloggen voegt het niet toe.
De gambas die ik gekozen had was dus de basis Gambas Basic interpreter, niet de volledige IDE (= Integrated Development Environment; programmeeromgeving).

Gelukkig zijn nu wel de juiste repositories aanwezig en is het maar kwestie van de IDE te gaan kiezen in het softwarebeheer:
– Menu, Yast, install/remove software.
– Zoek “gambas”.
– Kies uit de lijst de IDE (automatisch worden een aantal andere mee geselecteerd), en al wat je nog denkt nodig te hebben.
– Bevestig (Accept), bekijk “Automatic changes”, ga verder (continue).

Je ziet dat er nu iets meer gedownload wordt; dat duurt even en je ziet alles voorbijrollen tot het klaar is.

Nu krijg je in het menu wel een “Recently Installed” keuze, met daarin
Gambas3 (Basic Development Environment 3)
Er is ook een menu “Development” bijgekomen (als je dat nog niet had), met daarin dezelfde keuze om Gambas te starten.

Update:
Direct na installatie: Oops!! Gambas3 start niet uit het menu!
Na een hele reeks updates (op 5/3/2012) waarin ik heel wat “Gambas” bestanden zag voorbijrollen op het scherm, start Gambas 3 perfect op, en het eerste beste voorbeeldprogramma dat erbij zat kon geopende worden in de IDE en gecompileerd/gestart worden.

Gambas 2

Optie: installeer daarnaast tevens Gambas2, ook via Yast, Software Management.

  • Versie 2-2.23 is de (laatste?) stabiele versie van de 2.x tak (voor KDE3), terwijl de huidige distributies aan KDE4 toe zijn. (Bv mijn laatste installatie op openSUSE 11.3 was versie 2-2.21)

Nota: Daar haal je wel een hoop KDE3 mee binnen!
De installatie verloopt vlot (repositories zijn al voorzien, dus enkel kiezen uit de software).
Er komt een menu-item bij onder Development-Integrated Environment: Gambas2…
Gambas 2 start op met het bekende scherm, voorzien van voorbeeldprogramma’s.

Nota:
Later, op een andere installatie gebruikte ik een andere weg: Gambas 2 en Gambas 3 op OpenSUSE 12.1

Veel programmeer-plezier!

Gambas 1 + 2 + 3 op Fedora 16

Proficiat voor Fedora 16: Bij deze distributie is in het package management (install/remove software, zoekveld “gambas”) een uitgebreide keuze aanwezig:

  • Gambas 3 (2.99.5) 2.99.6 na een online update op 6/1/2012
  • Gambas 2 (2.23.1)
  • Gambas 1 (1.0.19)

Je kan zowel kiezen voor de individuele paketten als voor de hele programmeeromgeving als voor de runtime.

Bij installatie van de programmeeromgeving krijg ik nadien een foutmelding in verband met KDE.

Bij het opstarten blijken de “Examples” niet mee geïnstalleerd te zijn.

Ook de “Help Files” zijn niet automatisch geïnstalleerd, maar kunnen eenvoudig na-geïnstalleerd worden: klik op optie-box en “Apply”! Voor Gambas2 is dat gelukt, gambas 3 blijven de voorbeelden leeg maar ik weet niet of dat aan de pre-release versie ligt (2.9 ipv 3.0)

Gambas2 en Gambas3 op Fedora 15 – KDE

Ik gebruik een vers van DVD geïnstalleerde Fedora 15 (zonder updates) in KDE uitvoering.

In principe* kunnen Gambas2 en Gambas3 perfect naast elkaar draaien (* gelezen op de gambas mailinglist).

Als test selecteer ik de Gambas3 development environment met alle beschikbare onderdelen; ik klikte ze allemaal individueel aan om zeker alles te hebben.

Er werden automatisch een aantal bijkomende compenenten geselecteerd, bevestigd.

Ik installeer daarna ook Gambas2 bij, om eens te kijken of het conflicten geeft. Ook hier een aantal bijkomende packages voorgesteld, die ik bevestig (waaronder kde3 libs).

Na een paar keer net te lang wachten was ik toch eens op tijd voor het wachtwoord maar liep de installatie toch niet verder, dus ik sloot software installatie en startte het terug op.

Ik zoek op gambas2, krijg een lijst met alle gambas2 componenten. Zoals gezegd werkt CTRL-A niet (select all), en moet ieder pakket afzonderlijk aangeklikt worden. Ik zoek naar een verwijzing naar het complete pakket, of de IDE, dan wordt zoveel mogelijk mee geïnstalleerd: Gambas IDE, the complete gambas development environment.
Ik krijg een foutmelding dat een component dezelfde functionaliteit levert als een eerder geinstalleerde (nl bij Gambas3), en ik kan niet “skip” of “ignore” doen, alleen “ok”, wat eenvoudigweg afbreekt.

Ik verwijder de gambas3 scripter (die verdacht werd oorzaak te zijn van het overlappend pakket), en installeer daarna de gambas2 IDE (complete).

Gambas2 Examples en Gambas2 help worden niet automatisch mee-geïnstalleerd, selecteer apart en installeer.

Dan is het tijd voor een poging om de scripter van gambas3 terug te installeren: dat lukt niet (dezelfde foutmelding van overlapping). Misschien bestaat er nog een command-line manier om de installatie alsnog te forceren… mijn mijn experimentijd was om.

In het menu, onder “development” zijn nu zowel Gambas 2 (versie 2.23) als versie 3 (3.0 alfa; versienummer 2.99.5 – use at your own risk!) te starten.