# [développement] Test de gambas, VB pour linux

## bouleetbil

Salut,

Est-ce que quelqu'un a déjà utilisé gambas : http://gambas.sourceforge.net/

J'ai lu que les dernières versions permettaient de compiler des exe qui utilisent gtk au lieu QT. Est-ce que cela fonctionne bien ? 

Sinon j'avoue que pour un développement simple et rapide avec une interface graphique cela a l'air pas mal.

----------

## kwenspc

 *bouleetbil wrote:*   

> 
> 
> Sinon j'avoue que pour un développement simple et rapide avec une interface graphique cela a l'air pas mal.

 

Kdevelop est "un poil" à peine plus compliqué à prendre en main pour un résultat tout aussi bon. Et idem pour anjuta 2 maintenant. 

À la limite pour prototyper le gambas ça "peut" être intéressant moui.

----------

## xaviermiller

ou Code::Blocks, encore plus léger et dont le développement est hyper-actif (ebuild dans le forum "unsupported software").

Sinon, VB, bof : VB 6 ne sera plus supporté par M$ en 2008 (ils poussent pour .NET)

----------

## ghoti

 *XavierMiller wrote:*   

> VB 6 ne sera plus supporté par M$ en 2008 (ils poussent pour .NET)

 

Ah ? Parce que maintenant, c'est M$ qui dicte quels sont les logiciels à utiliser dans le libre ?

Gambas est un "vb-like" mais c'est pas vb !

Moi je le trouve à priori bien sympa ce gambas !  :Smile: 

Bon, ce n'est que mon avis ...

----------

## kwenspc

Le pb avec le vb (et je pense que c'est donc applicable à gambas) c'est que tu as vite fait d'avoir du code "tu purri": mal ou pas structuré du tout, une archi général digne d'un programme fait par un gosse de 5 ans (donc un souc pas croyable, pas forcément logique)...bref tout sauf un truc facile à appréhender et à maintenir. Donc je me remète un poil: ça doit à la limite valoir le coup pour du prototypage, sans plus. 

Ceci dit j'applaudis l'initiative: quid de tous ces softs d'entreprises codés en vb et plus maintenus, encore moins capables de tourner sur les nouvelles versions de ouïne? Est ce que la compatibilité de ces softs vb est possible sous Linux via gambas? (ça demanderait à avoir les sources originales des programmes en question par contre, bien entendu)

----------

## ghoti

 *kwenspc wrote:*   

> Le pb avec le vb (et je pense que c'est donc applicable à gambas) c'est que tu as vite fait d'avoir du code "tu purri" 

 

Tu n'as pas tort mais d'un autre côté, on peut coder comme un cochon en C aussi ...

 *Quote:*   

> Est ce que la compatibilité de ces softs vb est possible sous Linux via gambas?

 

L'auteur attire expressément l'attention sur le fait que la compatibilité n'est pas garantie (voir la FAQ). 

Cependant, les 2 langages sont suffisamment proches que pour espérer pouvoir récupérer certaines choses.

Evidemment, si ton programme fait des calls externes à tour de bras ou utilise les bibliothèques m$-office, ça risque d'être moins coton ...

Différences entre Gambas et VB

----------

## kwenspc

 *ghoti wrote:*   

>  *kwenspc wrote:*   Le pb avec le vb (et je pense que c'est donc applicable à gambas) c'est que tu as vite fait d'avoir du code "tu purri"  
> 
> Tu n'as pas tort mais d'un autre côté, on peut coder comme un cochon en C aussi ...
> 
> 

 

ah ah ah bon? ah bah oui tiens...   :Embarassed: 

----------

## boozo

 *kwenspc wrote:*   

>  *ghoti wrote:*    *kwenspc wrote:*   Le pb avec le vb (et je pense que c'est donc applicable à gambas) c'est que tu as vite fait d'avoir du code "tu purri"  
> 
> Tu n'as pas tort mais d'un autre côté, on peut coder comme un cochon en C aussi ...
> 
>  
> ...

 

[OT] D'un autre côté faudrait un jour définir une échelle de valeur entre le "tu purri" et le "carré" histoire de voir où on se situe   :Laughing: 

Bah on s'en tirera en disant que c'est qqch de relatif ; la qualité du code évolue au cours du temps jusqu'aux appli "cathédrales" avec tout plein de branches mortes partout... (et oui c'est l'âge) et selon qui et combien de personnes ont travaillé dessus (on le notera : facteur a)    :p

[/OT]

et pis de toute... Dans l'cochon : tout-est-bon !  :Mr. Green: 

ouéoué je sais...........>--)))°>............  :Arrow:   [ ]

----------

## kwenspc

 :Very Happy:   :Laughing:  !!!

----------

## bouleetbil

Salut,

Je savais qu'en parlant de VB sous Linux cela aller faire parler   :Laughing: 

Bon, maintenant j'ai installé la version 1.9.51(pas dans portage une simple copie de l'ebuild en le renommant 1.9.51 suffit) c'est assez simple à utiliser on peut faire du gtk. 

Sinon, au niveau de la qualité du code c'est vrai que certains langage permettent de faire du code sale très facilement mais après je pense qu'il suffit de faire attention.

Après, on pense ce que l'on veux de VB mais quand même chapeau c'est un environnement assez conviviale. (J'ai pas non plus beaucoup creusé c'était surtout par curiosité mais c'est sympa à utiliser)

----------

## ghoti

 *bouleetbil wrote:*   

> j'ai installé la version 1.9.51

 

Sais pas si tu as vu mais la 1.9.90 est sortie (dernière version avant la 1ère rc)

Même principe de renommage d'ebuild  :Wink: 

----------

## bouleetbil

 :Laughing:  C'est parti pour la version 1.9.90

Du coup je réécris mon script d'installation, je sais pas si j'irais jusqu'au bout mais c'est marrant de faire du VB sous GNU/linux

http://www.frogdev.info/images/Gambas.png

----------

## GarulfoLinux

J'utilise Gambas depuis pas mal de temps, Benoit (l'auteur de Gambas) fait du bon boulot et évitez de dire "faire du code pourri parce que c'et du VB".

Ce qui a poussé Benoit à faire ce langage c'est justement parce qu'il en avait marre de la quantité de bugs phénomènale de VB de MS et donc Gambas est un "VB" improved sans ses défauts (on retrouve d'ailleurs dans la documentation officiel des notes explicant la différence sur certains point du langage avec VB et Gambas.

Je rajoute que c'est un excellent langage et qu'on peut faire vraiment des choses sympas.

Son développement avance régulièrement, Benoit étant le seul développeur à coder le core mais beaucoup de contributeurs l'aide car ils savent que c'est très beau projet qui n'est pas fait n'importe comment. Contrairement à certains langages donc certains utilisent que je ne citerai pas..

Donc s'il vous plait, respectez le travail des développeurs et en tant que Linuxiens vous devriez avoir le réflexe de le faire et non de salir le travail d'autres personnes qui développe sur Linux. Et deuxièment, on ne critique pas quand on n'a jamais essayé..

----------

## kwenspc

 *GarulfoLinux wrote:*   

> 
> 
> et évitez de dire "faire du code pourri parce que c'et du VB". 
> 
> 

 

J'ai personnellement parlé du VB comme étant crade, de mon expérience sous windows (ça remonte...). Donc ici je critiquais ouvertement le produit VB MS (sans parler qu'on atteignais très vite les limites du système et qu'il fallait salement bidouiller pour réussir à faire tourner de gros soft). Pour ma part, relis bien, je ne critique aucunement Gambas itself que je n'ai pas testé.

 *GarulfoLinux wrote:*   

> 
> 
> Contrairement à certains langages donc certains utilisent que je ne citerai pas.. 
> 
> 

 

Ah si si je suis intéressé, quels langages?  :Very Happy:  (et qui? ^^)

 *GarulfoLinux wrote:*   

> 
> 
> Donc s'il vous plait, respectez le travail des développeurs et en tant que Linuxiens vous devriez avoir le réflexe de le faire et non de salir le travail d'autres personnes qui développe sur Linux. Et deuxièment, on ne critique pas quand on n'a jamais essayé..

 

Où as tu vus quelqu'un "salir" le travail du dev toi?   :Shocked: 

...Ou alors est-ce juste parce qu'on est un Vendredi d'où "troll day"...?

----------

## boozo

Remarque qui n'engage que moi n'étant intervenu que pour railler sur qqch que j'entends souvent également :

Je pense que tu te méprends sur les remarques qui ont été écrites... certes, avec la pertinence d'un discusion philosophique au café des sports un dimanche soir mais elle ne s'appliquait pas au typage ou à la qualité du language VB lui même mais plus généralement, aux framework pour générer automatiquement du code comme pourrait l'être nvu, kdevelop, ... 

La qualité du code de gambas n'a pas été mise en doutes si je comprends encore le français, juste et par présupposé, la qualité du code VB généré par gambas.

Maintenant tu défends que gambas génère du code VB de qualité soit, c'est donc un outil à conseiller et je garde l'info  en bookmark   :Wink: 

Edit: grilled :p

----------

## ghoti

 *GarulfoLinux wrote:*   

> Benoit (l'auteur de Gambas) fait du bon boulot et évitez de dire "faire du code pourri parce que c'et du VB".

 +10**3 !

Tu as évidemment raison sur tous les points : d'abord, c'est vrai que, outre d'être très sympa, Benoît est un excellent développeur; 

et puis ensuite, parce que "pourri" ne veut pas dire que le langage ne soit pas bon ! (cfr ma remarque concernant le C  :Wink: )

Un tout bête exemple en faveur de Gambas : il n'y a pas de variables globales au projet tandis que sous vb, oui !

C'est con, mais au niveau du développeur occasionnel, ça fait une sacrée différence !

Ca l'oblige à se poser les bonnes questions concernant l'utilisation de ses variables ...

S'il ne comprend pas la différence entre "local" et "global", il fera du code pourri sous vb mais pas sous gambas parce que le langage y mettra le holà !

Perso, j'ai pas mal travaillé avec vb mais bien que je ne développe plus, je surveille Gambas de près depuis des années et je trouve que c'est un très chouette projet qui commence petit à petit à acquérir une belle maturité !

Et puis, même si on ne l'utilise que pour le prototypage, il peut rendre d'énormes services !

Il y a un autre projet BASIC ambitieux, HBasic. Il s'était arrêté pendant de nombreux mois (années?) mais il semble repartir un peu. Pour l'instant, il n'est pourtant pas aussi dynamique que Gambas ...

----------

## xaviermiller

un truc que je trouve dommage : le fait que GAMBAS ne tourne que sous linux 32 bits. Pourquoi pas sous Windows, MacOS et 64 bits?

Pourquoi ne pas avoir utilisé un GUI multi-plateformes genre GTK ou QT ?

----------

## GarulfoLinux

 *Quote:*   

> 
> 
> Pourquoi ne pas avoir utilisé un GUI multi-plateformes genre GTK ou QT ?

 

Elles sont multi-plateforme.

 *Quote:*   

> Pourquoi pas sous Windows, MacOS

 

Will you port Gambas to Windows ?

I won't, but I will help any people trying to do that. I already compiled Gambas sources under Cygwin in the past, but didn't really succeed. Note that there is a lot of things to port: process management, Qt component, and so on... This is a huge job.

(sortie tout droit de la FAQ du site officiel). http://gambasdoc.org/help/doc/faq?show

 *Quote:*   

> et 64 bits? 

 

C'est dans la TODOLIST de Benoit. (Voir toujours le site officiel pour de plus ample informations)

----------

## bouleetbil

Salut

 *XavierMiller wrote:*   

> 
> 
> Pourquoi ne pas avoir utilisé un GUI multi-plateformes genre GTK ou QT ?

 

Je me trompe peut-être mais je pense qu'il parlait de gambas qui ne tourne pas sous d'autre OS, et non le fait de générer un exe utilisant gtk ou QT.

Car perso j'aurais bien voulu l'installer au boulot (Windows).

Par contre, j'ai pas trouvé, donc si quelqu'un le sait . Je suppose qu'il faut livrer un framework avec l'exe. Il est où ?

----------

## bouleetbil

Ebuild pour la version svn. Cette version corrige la génération de package d'installation "autotools"

dev-util/gambas-9999.ebuild

```

# Copyright 1999-2006 Gentoo Foundation

# Distributed under the terms of the GNU General Public License v2

# $Header: /var/cvsroot/gentoo-x86/dev-util/gambas/gambas-1.9.23.ebuild,v 1.5 2007/06/26 02:04:02 mr_bones_ Exp $

inherit eutils qt3 subversion

MY_P="${PN}2-${PV}"

DESCRIPTION="a RAD tool for BASIC"

HOMEPAGE="http://gambas.sourceforge.net/"

#SRC_URI="mirror://sourceforge/gambas/${MY_P}.tar.bz2"

ESVN_REPO_URI="https://gambas.svn.sourceforge.net/svnroot/gambas/2.0/trunk/"

LICENSE="GPL-2"

SLOT="2"

KEYWORDS="~x86 -amd64"

IUSE="postgres mysql sdl doc curl sqlite xml zlib kde bzip2 odbc ldap pdf opengl sqlite3 pcre gtk"

S=${WORKDIR}/${MY_P}

# TODO: add flags for opengl, v4l and corba components

RDEPEND="$(qt_min_version 3.2)

   kde? ( >=kde-base/kdelibs-3.2 )

   sdl? ( media-libs/libsdl media-libs/sdl-mixer )

   mysql? ( virtual/mysql )

   postgres? ( dev-db/postgresql )

   curl? ( net-misc/curl )

   sqlite? ( =dev-db/sqlite-2* )

   sqlite3? ( >=dev-db/sqlite-3 )

   xml? ( dev-libs/libxml2 dev-libs/libxslt )

   zlib? ( sys-libs/zlib )

   bzip2? ( app-arch/bzip2 )

   odbc? ( dev-db/unixODBC )

   ldap? ( net-nds/openldap )

   gtk? ( >=x11-libs/gtk+-2.6.4 )

   pdf? ( app-text/poppler )

   pcre? ( dev-libs/libpcre )"

#DEPEND="${RDEPEND}

#   >=sys-devel/autoconf-2.59

#   >=sys-devel/automake-1.7.5"

#src_unpack() {

#   unpack ${A}

#   cd "${S}"

#   epatch "${FILESDIR}"/${PN}-1.0.6-configure-CFLAGS.patch

   # replace braindead Makefile (it's getting better, but

   # still has the stupid symlink stuff)

#   rm Makefile*

#   cp "${FILESDIR}/Makefile.am-1.0_rc2" ./Makefile.am

#   aclocal && autoconf && automake || die "autotools failed"

#}

src_compile() {

   local ext_conf=""

   # TODO: work opengl deps out first

   #if use opengl; then

   #   ext_conf="${ext_conf} $(use_enable sdl sdlopengl)"

   #   ext_conf="${ext_conf} $(use_enable qt qtopengl)"

   #fi

        ./reconf-all

   econf \

      --enable-qt \

      --enable-net \

      --enable-crypt \

      --enable-vb \

      --disable-corba \

      --disable-opengl \

      --disable-sdlopengl \

      --disable-sdl_opengl \

      --disable-qtopengl \

      --disable-v4l \

      $(use_enable mysql) \

      $(use_enable postgres) \

      $(use_enable sqlite) \

      $(use_enable sqlite3) \

      $(use_enable sdl) \

      $(use_enable curl) \

      $(use_enable zlib) \

      $(use_enable xml) \

      $(use_enable bzip2 bzlib2) \

      $(use_enable kde) \

      $(use_enable gtk) \

      $(use_enable odbc) \

      $(use_enable pdf) \

      $(use_enable pcre) \

      $(use_enable ldap) \

      ${ext_conf} \

      --disable-optimization \

      --disable-debug \

      --disable-profiling \

      || die

   emake CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" || die

}

src_install() {

   export PATH="${D}/usr/bin:${PATH}"

   make DESTDIR="${D}" install || die

   dodoc README INSTALL NEWS AUTHORS ChangeLog TODO

   # only install the API docs and examples with USE=doc

   if use doc ; then

      mv "${D}"/usr/share/${PN}/help "${D}"/usr/share/doc/${PF}/html

      mv "${D}"/usr/share/${PN}/examples "${D}"/usr/share/doc/${PF}/examples

   else

      dohtml ${FILESDIR}/WebHome.html

   fi

   rm -r "${D}"/usr/share/${PN}/help "${D}"/usr/share/${PN}/examples

   dosym ../doc/${PF}/html /usr/share/${PN}/help

   dosym ../doc/${PF}/examples /usr/share/${PN}/examples

}

```

----------

## ghoti

 *bouleetbil wrote:*   

> Ebuild pour la version svn. Cette version corrige la génération de package d'installation "autotools"
> 
> dev-util/gambas-9999.ebuild

 

Compilation impeccable !  :Smile: 

----------

## titoucha

 *GarulfoLinux wrote:*   

> 
> 
>  *Quote:*   et 64 bits?  
> 
> C'est dans la TODOLIST de Benoit. (Voir toujours le site officiel pour de plus ample informations)

 

Pas trouvé cette fameuse TodoList, si tu pouvais me dire quand il compte faire cette mise à jour.

----------

## julroy67

 *titoucha wrote:*   

>  *GarulfoLinux wrote:*   
> 
>  *Quote:*   et 64 bits?  
> 
> C'est dans la TODOLIST de Benoit. (Voir toujours le site officiel pour de plus ample informations) 
> ...

 

Idem, j'aimerais le tester, et je n'ai  qu'une Gentoo 64 sous la main.

----------

## ghoti

 *titoucha wrote:*   

>  *GarulfoLinux wrote:*   
> 
>  *Quote:*   et 64 bits?  
> 
> C'est dans la TODOLIST de Benoit. (Voir toujours le site officiel pour de plus ample informations) 
> ...

 

En effet, ce n'est pas dans la todo officielle.

[EDIT] Ah ben si : http://gambas.sourceforge.net/

Voir la rubrique "prospective"

J'avais lu sur une M-L que Benoît voulait avant tout finaliser la v2.0 (désolé, je n'ai plus le lien  :Sad: ) ...

----------

## titoucha

Merci, mais il n'y a pas de date ou de délai de noter dans son todo, dommage   :Confused: 

----------

## kopp

Il a raison. Il donne pas de date en l'air pour repousser ou bacler le truc à la fin. En tous cas, c'est un joli travail.

----------

## titoucha

Pas obligatoirement une date mais par exemple prévu pour version 3.

----------

## bouleetbil

Salut,

quelqu'un pourrait donner le lien de ce todo je le trouve pas   :Embarassed: 

----------

## ghoti

 *bouleetbil wrote:*   

> quelqu'un pourrait donner le lien de ce todo je le trouve pas  

 

 *Ghoti wrote:*   

> [EDIT] Ah ben si : http://gambas.sourceforge.net/
> 
> Voir la rubrique "prospective" 

 

J'aurais dû préciser que c'était dans la rubrique "prospective" du chapitre "Introduction".  :Embarassed: 

http://gambas.sourceforge.net/introduction.html

----------

## bouleetbil

Merci   :Laughing: 

----------

