Discussion:
[Gambas-user] Maybe a weird question
PaquitoSoft
2005-06-27 06:43:31 UTC
Permalink
Hi all:
I know that this question maybe has no sense beacause of the anture of
gambas but...
The only thing that I don't like about gambas is that it needs the
runtime to work. It would be great to be able to compile your program no
native code so it would be faster and independent.
I found a program that can do that called REALBasic from REALSoftware.
Actual linux version is free, but it has not the open source aid so I
think it is not as complete as gambas. But the chance to compile your
code to run under linux without any runtime machine is great.

So, is there any possibility in the future for gambas to complie in
native linux so you don't need that runtime machine??

Thanks all.
--
El tiempo es un gran profesor. Desafortunadamente, mata a todos sus
alumnos.
Heinz Sporn
2005-06-27 08:25:14 UTC
Permalink
Hi!

AFAIK Real Software did not have a real Linux version i.e. a development
environment in the past. The only Linux related thing you could do was
compiling a Linux binary derived from your Windows sources (strange
enough if you ask me) that may or may not have ran on your Linux system
- having GTK+ 2.0 installed (what's QT?) was mandatory.

Right now they are offering to participate in a Linux Public Beta test -
that's all.

Anyway: Gambas is open source whereas REALBasic is not. If the Linux
version will be open source in the future is not clear and so is the
question of licensing and royalties.

Regards

spox
Post by PaquitoSoft
I know that this question maybe has no sense beacause of the anture of
gambas but...
The only thing that I don't like about gambas is that it needs the
runtime to work. It would be great to be able to compile your program no
native code so it would be faster and independent.
I found a program that can do that called REALBasic from REALSoftware.
Actual linux version is free, but it has not the open source aid so I
think it is not as complete as gambas. But the chance to compile your
code to run under linux without any runtime machine is great.
So, is there any possibility in the future for gambas to complie in
native linux so you don't need that runtime machine??
Thanks all.
--
Mit freundlichen Grüßen

Heinz Sporn

SPORN it-freelancing

Mobile: ++43 (0)699 / 127 827 07
Email: ***@sporn-it.com
***@utanet.at
Snail: Steyrer Str. 20
A-4540 Bad Hall
Austria / Europe
Arkadiusz Zychewicz
2005-06-27 12:11:42 UTC
Permalink
Post by PaquitoSoft
So, is there any possibility in the future for gambas to complie in
native linux so you don't need that runtime machine??
I'm joining to this question/request.

And i ask if i make a install package (e.g *.rpm) and distribute it.
This package require some oder package (some gambas interpreter) or the
install package has inside a interpreter?

Arek.
Maurizio Pozzobon
2005-06-27 12:33:55 UTC
Permalink
AFAIK require the interpreter but it could be a really good thing
beign able to create a package with the interpreter (and maybe some
other dependences) and the program we want to distribute such that if
someone have a common linux box he just need that pack to be able to
use my program, since the great part of the dependences are probably
GPLed there shouldn't be any legal problem.
I'm thinking about something like the windows word where you need just
a setup file to install a program
--
Maurizio
PV
2005-06-27 13:02:44 UTC
Permalink
Post by Arkadiusz Zychewicz
Post by PaquitoSoft
So, is there any possibility in the future for gambas to complie in
native linux so you don't need that runtime machine??
I'm joining to this question/request.
I'm joining too :-)
Post by Arkadiusz Zychewicz
And i ask if i make a install package (e.g *.rpm) and distribute it.
This package require some oder package (some gambas interpreter) or the
install package has inside a interpreter?
In my opinion the goal should be to properly pack all that's needed (app,
interpreter, libraries [possibly to be referenced by something like a
GB_LIBRARY_PATH env variable, which can avoid system-wide installation] etc.)
in order to allow everyone to be able to run the applications developed with
Gambas, without the need to install Gambas itself.

I believe that could further boost Gambas diffusion as an extremely valuable
development tool.

That's my 0.02 :-)

Ciao,
Piero
Rob
2005-06-27 15:13:01 UTC
Permalink
Post by PaquitoSoft
The only thing that I don't like about gambas is that it needs the
runtime to work. It would be great to be able to compile your
program no native code so it would be faster and independent.
I would love to see this happen, but I don't have the know-how to make
it so. Maybe a GCC front-end that took Gambas bytecode would be
helpful, but I wouldn't even know where to begin. As an alternative,
making the interpreter a library that could be dynamically linked
(like the VB runtime) or statically linked (like RealBasic) would
make programs appear to be stand-alone, though that doesn't address
the issue of all the components (go ahead, statically link Qt, I dare
you ;) )

Here are the reasons I don't think it's necessary, even though I hope
the option becomes available eventually:

1. When VB went from pseudo-code to "native code" (albeit with most of
the functionality still in the runtime DLL) there was hardly any
performance gain, and often a performance loss. Don't forget, when
you're writing in an interpreted language, your code isn't doing the
heavy lifting... the interpreter is.

2. The way Linux package management is, it makes a lot more sense to
package your interpreted program in such a way as to require the
interpreter and any needed components. Under Windows, you're stuck
including all the dependencies in the installation package "just in
case".... under Linux, it's not so.

This is why, even though Perl, Python, Tcl, PHP and other languages
have compilers available, almost no one uses them to distribute their
applications.
Daniel Campos
2005-06-28 08:11:22 UTC
Permalink
The fake problem of the interpreter availability
-----------------------------------------------------------------

Often, some people says: Hey, Gambas programs should be compiled, if not,
we need the interpreter installed in the machine! We can not distribute it!

Let me tell you just one thing:

1) can you run any KDE program without all its dependencies installed?
2) Can you do it with a Gnome program?
3) May be just a QT or GTK program?
6) Any graphical program without all X libraries?
4) Can you use Mplayer without a lot of libraries for codecs?
5) Can you install a Apache to serve CGI applications without Perl or
Python (or Gambas)?
6) Can you run any perl, python or bash program without their interpreters?


Where's then the problem? The problem is that Gambas gbx is a program
and not a library? It is
strange.

Currenly almost all programs doing anything interesting have
dependencies, and this is not
a problem as Linux distributions install these dependencies, or you can
download them from
internet.

The only real problem I can see is that Gambas is recent software and
not all the distributions
include that runtime. This is not a problem, for example for
Linex/Ubuntu/Debian users as
they have official packages for Gambas at linex.org. But if the program
were compiled, you'd
have the same problem: you'd need the libgambas.so and all the rest of
libraries installed
(recent version of QT/GTK, may be SDL, may be libxml, may be libcurl and
of course glibc)

And as Rob says, there would be not a big difference in performance, as
the major part of the
work is done internally in the gbx program or in the linked libraries,
written in C or C++.

Regards,

D. Campos
Maurizio Pozzobon
2005-06-28 08:36:46 UTC
Permalink
Post by Daniel Campos
The fake problem of the interpreter availability
-----------------------------------------------------------------
Often, some people says: Hey, Gambas programs should be compiled, if not,
we need the interpreter installed in the machine! We can not distribute it!
1) can you run any KDE program without all its dependencies installed?
2) Can you do it with a Gnome program?
3) May be just a QT or GTK program?
6) Any graphical program without all X libraries?
4) Can you use Mplayer without a lot of libraries for codecs?
5) Can you install a Apache to serve CGI applications without Perl or
Python (or Gambas)?
6) Can you run any perl, python or bash program without their
interpreters?
Where's then the problem?
The problem is that to all yours questions the answer is "No". As you can
see in my previous mail I'd like to be able to create an All-in-One package
(rpm or deb) easy to install so that the user could be able to choose
between the normal pack for those who alredy have the dep installed, or like
to install them form source, and the big one for those who like the easy
way.
I think that no one would care if it is interpretable if it is easy to
distribute and ofcourse to use
--
Maurizio
Daniel Campos
2005-06-28 09:04:32 UTC
Permalink
In that case, you can look at some projects that can help you in this
task, for example:

http://www.bitrock.com/
https://www.plaasoft.de/?mod=content&id=Installer


There are some installers (some of them free, look at sourceforge or
freshmeat), in which
you can mark all dependencies, and the installer can contain these
packages for some
distributions, or have links to download them from internet, or compile
them if necessary.


Hope it helps,

D. Campos
Heinz Sporn
2005-06-28 10:23:35 UTC
Permalink
Hi!

Sorry Maurizio, but I believe you immersed a little too much into
Windoze-like software deployment. There's a reason why no Python, Perl
or let's say PHP application is distributed in a bundle with the
regarding interpreter. There's simply too much flavours of Linux out
there.

And here comes the beauty with all the reusable libraries, application
frameworks and interpreters: your application does not have to bother
wether or not this or that library is installed at all or carries a
specific version number. The only thing you have to say is: I don't care
what type of Linux you're using or what libraries are installed - just
get Gambas running on your fancy machine and you're fine.

Anyway pre-compiled packages would set too much limits. An example: I'm
a happy Gentoo user. Why should I bother with rpms and debs? I would
need the Gambas sources anyway to compile them against may running
environment. A pre-compiled package would propably not even execute on
my machines and if it would run like a lame duck ;-)

Regards

spox
Post by Daniel Campos
The fake problem of the interpreter availability
-----------------------------------------------------------------
Often, some people says: Hey, Gambas programs should be compiled, if not,
we need the interpreter installed in the machine! We can not distribute it!
1) can you run any KDE program without all its dependencies installed?
2) Can you do it with a Gnome program?
3) May be just a QT or GTK program?
6) Any graphical program without all X libraries?
4) Can you use Mplayer without a lot of libraries for codecs?
5) Can you install a Apache to serve CGI applications without Perl or
Python (or Gambas)?
6) Can you run any perl, python or bash program without their interpreters?
Where's then the problem?
The problem is that to all yours questions the answer is "No". As you
can see in my previous mail I'd like to be able to create an
All-in-One package (rpm or deb) easy to install so that the user could
be able to choose between the normal pack for those who alredy have
the dep installed, or like to install them form source, and the big
one for those who like the easy way.
I think that no one would care if it is interpretable if it is easy to
distribute and ofcourse to use
--
Maurizio
--
Mit freundlichen Grüßen

Heinz Sporn

SPORN it-freelancing

Mobile: ++43 (0)699 / 127 827 07
Email: ***@sporn-it.com
***@utanet.at
Snail: Steyrer Str. 20
A-4540 Bad Hall
Austria / Europe
Maurizio Pozzobon
2005-06-28 12:12:40 UTC
Permalink
Post by Heinz Sporn
Anyway pre-compiled packages would set too much limits. An example: I'm
a happy Gentoo user. Why should I bother with rpms and debs? I would
need the Gambas sources anyway to compile them against may running
environment. A pre-compiled package would propably not even execute on
my machines and if it would run like a lame duck ;-)
The fact is that I would release both the source and the All-in-One pack so
that you could use the source and those who like the easytoinstall-lame-duck
could use it. It's all about choice.
Thanks to Daniel I've found a prog which could be what I need, actually I
haven't tried it yet because in this period I'm quite busy (exams) so if
someone wanna give it a try here is the link:

http://installbase.sourceforge.net/main.shtml
--
Maurizio
Arkadiusz Zychewicz
2005-06-28 09:01:06 UTC
Permalink
Post by Daniel Campos
The fake problem of the interpreter availability
-----------------------------------------------------------------
Often, some people says: Hey, Gambas programs should be compiled, if not,
we need the interpreter installed in the machine! We can not distribute it!
1) can you run any KDE program without all its dependencies installed?
2) Can you do it with a Gnome program?
3) May be just a QT or GTK program?
6) Any graphical program without all X libraries?
4) Can you use Mplayer without a lot of libraries for codecs?
5) Can you install a Apache to serve CGI applications without Perl or
Python (or Gambas)?
6) Can you run any perl, python or bash program without their interpreters?
Where's then the problem? The problem is that Gambas gbx is a program
and not a library? It is
strange.
Currenly almost all programs doing anything interesting have
dependencies, and this is not
a problem as Linux distributions install these dependencies, or you can
download them from
internet.
The only real problem I can see is that Gambas is recent software and
not all the distributions
include that runtime. This is not a problem, for example for
Linex/Ubuntu/Debian users as
they have official packages for Gambas at linex.org. But if the program
were compiled, you'd
have the same problem: you'd need the libgambas.so and all the rest of
libraries installed
(recent version of QT/GTK, may be SDL, may be libxml, may be libcurl and
of course glibc)
And as Rob says, there would be not a big difference in performance, as
the major part of the
work is done internally in the gbx program or in the linked libraries,
written in C or C++.
Ok. I agree but it would be nice that i can say my user: this is a
package of my program and this is a package of interpreter witch my
program require.
And now i must tell: this is a package of my program and you must install
also a gambas program to run it (all IDE program).

Arek.
My English is rather not good so i don't know that i clearly express.
Michael Isaac
2005-06-29 02:22:03 UTC
Permalink
Post by Daniel Campos
The fake problem of the interpreter availability
-----------------------------------------------------------------
Often, some people says: Hey, Gambas programs should be compiled, if not,
we need the interpreter installed in the machine! We can not
distribute it!
1) can you run any KDE program without all its dependencies installed?
2) Can you do it with a Gnome program?
3) May be just a QT or GTK program?
6) Any graphical program without all X libraries?
4) Can you use Mplayer without a lot of libraries for codecs?
5) Can you install a Apache to serve CGI applications without Perl or
Python (or Gambas)?
6) Can you run any perl, python or bash program without their
interpreters?
Where's then the problem? The problem is that Gambas gbx is a program
and not a library? It is
strange.
Currenly almost all programs doing anything interesting have
dependencies, and this is not
a problem as Linux distributions install these dependencies, or you
can download them from
internet.
The only real problem I can see is that Gambas is recent software and
not all the distributions
include that runtime. This is not a problem, for example for
Linex/Ubuntu/Debian users as
they have official packages for Gambas at linex.org. But if the
program were compiled, you'd
have the same problem: you'd need the libgambas.so and all the rest of
libraries installed
(recent version of QT/GTK, may be SDL, may be libxml, may be libcurl
and of course glibc)
And as Rob says, there would be not a big difference in performance,
as the major part of the
work is done internally in the gbx program or in the linked libraries,
written in C or C++.
Regards,
D. Campos
-------------------------------------------------------
SF.Net email is sponsored by: Discover Easy Linux Migration Strategies
from IBM. Find simple to follow Roadmaps, straightforward articles,
informative Webcasts and more! Get everything you need to get up to
speed, fast. http://ads.osdn.com/?ad_id=7477&alloc_id=16492&op=click
_______________________________________________
Gambas-user mailing list
https://lists.sourceforge.net/lists/listinfo/gambas-user
I have to say that I agree with Maurizio. KDE and Gnome are standard on
almost every Linux distribution. Most people dont have to go search for
Gnome or KDE. To make matters worse Gambas is in a state of constant
development and it will be years before it becomes anyting close to that
kind of standard. Since the Gambas software is constantly under
development the runtime that the user is forced to seek out and download
may not work with Maurizio's application. It would be much more
convient if the runtime libraries specific to his software were easily
bundled or statically linked with the application. This way the only
thing that a developer has to worry about is weather his target user is
using KDE or Gnome and the rest will fall into place.

It may be a very windows like approach but thats because Gambas is by no
means stable or a standard and it cannot be compared to the likes of
Python or Perl in that reguard.

--
Michael
Joseph Murphy
2005-06-28 21:02:18 UTC
Permalink
Hi All
The problem is not that gbx needs to be installed but that to get any
program to run that has been written with Gambas all of Gambas needs to be
installed. There is a great picture that explains the architecture of
Gambas.
http://gambas.sourceforge.net/architecture.html

It's clear that gbx is needed and components are also needed. But why do I
need to install the IDE and the examples? None of that is shown in the
architecture of the internals of Gambas. Everything is already compiled
all that is needed is better documentation on what has been installed so
that it can be packaged for distribution. To put it another way: All I
want is the bananna but I am forced to take the gorilla along with it.

This problem is really showing a weakness of Linux. The /usr/bin directory
is like my junk drawer in my office, everthing gets thrown in there. Linux
has 32 character file names and we have a thousand files in there with two
or three character filenames. This is lazy. It's my opinion that the
search path should be recursive. That way when I install a program I can
have /usr/bin in my path but install gambas into /usr/bin/Gambas and not
have to add that to my PATH. Maybe I should get my hammer out and pound on
the bash source for awhile.

Joseph
Rob
2005-06-28 21:25:43 UTC
Permalink
Post by Joseph Murphy
It's clear that gbx is needed and components are also needed. But
why do I need to install the IDE and the examples? None of that is
You don't. Application packages created by Gambas should only require
the
interpreter (the gambas-runtime package, on Mandrake at least) and
any components needed by your specific project. No IDE, unless your
program is an extension to or hack of the IDE (like fakebas.)

For example, the new Gambas documentation system Benoit is working on
requires only gambas2-runtime, gambas2-gb-db, and
gambas2-gb-db-mysql, and that's all I installed on the server.

As for the examples, they were missing for 2 or 3 releases not too
long ago until one of us noticed and complained about it, so clearly
they're not required for anything.

I continue to package "gambas-complete", which includes everything,
simply because it's still smaller than a typical java, perl, python
or mono installation and allows people who don't believe in package
management (fie upon you all ;) ) to try Gambas.

Rob
Jose J. Rodriguez
2005-06-28 22:18:52 UTC
Permalink
How does one separate the runtime to install on a Slackware-based
system? I've been meaning to ask this for a long time, but forgot
because I haven't needed to install any apps on another PC yet.

Joe1962
Post by Rob
Post by Joseph Murphy
It's clear that gbx is needed and components are also needed. But
why do I need to install the IDE and the examples? None of that is
You don't. Application packages created by Gambas should only require
the
interpreter (the gambas-runtime package, on Mandrake at least) and
any components needed by your specific project. No IDE, unless your
program is an extension to or hack of the IDE (like fakebas.)
For example, the new Gambas documentation system Benoit is working on
requires only gambas2-runtime, gambas2-gb-db, and
gambas2-gb-db-mysql, and that's all I installed on the server.
As for the examples, they were missing for 2 or 3 releases not too
long ago until one of us noticed and complained about it, so clearly
they're not required for anything.
I continue to package "gambas-complete", which includes everything,
simply because it's still smaller than a typical java, perl, python
or mono installation and allows people who don't believe in package
management (fie upon you all ;) ) to try Gambas.
Rob
-------------------------------------------------------
SF.Net email is sponsored by: Discover Easy Linux Migration Strategies
from IBM. Find simple to follow Roadmaps, straightforward articles,
informative Webcasts and more! Get everything you need to get up to
speed, fast. http://ads.osdn.com/?ad_id=7477&alloc_id=16492&op=click
_______________________________________________
Gambas-user mailing list
https://lists.sourceforge.net/lists/listinfo/gambas-user
Rob Kendrick
2005-06-29 09:34:09 UTC
Permalink
Post by Joseph Murphy
This problem is really showing a weakness of Linux. The /usr/bin directory
is like my junk drawer in my office, everthing gets thrown in there. Linux
has 32 character file names and we have a thousand files in there with two
or three character filenames.
I think you'll find they can be a great deal longer than that.
Post by Joseph Murphy
This is lazy. It's my opinion that the
search path should be recursive. That way when I install a program I can
have /usr/bin in my path but install gambas into /usr/bin/Gambas and not
have to add that to my PATH. Maybe I should get my hammer out and pound on
the bash source for awhile.
I've always thought that gbx should be a shared library, and the files
gambas's compiler produced were executables, just with a small stub of
code that passed a pointer to the data to the gbx shared library. It's
much cleaner that way for numerous reasons, as you get all the version
handling for free, and you have the option of statically linking. And
all for not a lot of effort at all.
--
Rob Kendrick
PGP signed or encrypted mail welcome (Key ID: 3651D17A)
Joseph Murphy
2005-06-29 06:36:55 UTC
Permalink
Hi Rob
Post by Rob
For example, the new Gambas documentation system Benoit is working on
requires only gambas2-runtime, gambas2-gb-db, and
gambas2-gb-db-mysql, and that's all I installed on the server.
I don't have a gambas2-gb-db or a gambas2-runtime or gambas2-gb-db-mysql. I
do have a gambas2.gambas, gba, gba2, gbc2, gbi2, gbx2 in /usr/local/bin. I
also have links to these files in /usr/bin. I compiled from source on
Slackware 10.1. Slackware is not an RPM system so this might have
something to do with it.

Joseph
Rob
2005-06-29 14:56:40 UTC
Permalink
Post by Joseph Murphy
I don't have a gambas2-gb-db or a gambas2-runtime or
gambas2-gb-db-mysql. I do have a gambas2.gambas, gba, gba2, gbc2,
The names I posted are names of packages, not filenames.

Rob
Joseph Murphy
2005-06-29 06:58:56 UTC
Permalink
Found them. /usr/local/lib/gambas2 I guess I'm just tired. They don't have
the same file names that Rob listed but there are text files that explain
them. One thing that is interesting is I have every shared library is
present in three different file names. For example I have gb.db.so,
gb.db.so.0 and gb.db.so.0.0.0. Any idea why that would be?

Joseph
Rob
2005-06-29 14:54:13 UTC
Permalink
Post by Joseph Murphy
Found them. /usr/local/lib/gambas2 I guess I'm just tired. They
don't have the same file names that Rob listed but there are text
files that explain them. One thing that is interesting is I have
every shared library is present in three different file names. For
example I have gb.db.so, gb.db.so.0 and gb.db.so.0.0.0. Any idea
why that would be?
I really don't mean this as an insult, but I'm going to say it anyway.
You don't know why .so files get links with a version number and
you're running Slackware, the least user friendly (by design) of the
major Linux distributions?

I think a lot of the end-user weaknesses you say you've found with
Linux to date might actually be weaknesses of Slackware, which was
never meant for end users. The rest of the world has package
management, automatically updating app shortcut and menu systems,
etc. Slackware.... has tarballs.

If you really like the "building everything from source" thing I'd
suggest you at least try Gentoo, which goes halfway to package
management with its "portage" system while still allowing you to go
source-only. I have no idea whether Gambas works on it, but I'm
pretty sure you'll be able to strip it down as much as you like.

Rob
Joseph Murphy
2005-06-30 19:31:50 UTC
Permalink
I really don't mean this as an insult, but I'm going to say it anyway.  
You don't know why .so files get links with a version number and
you're running Slackware, the least user friendly (by design) of the
major Linux distributions?
I think a lot of the end-user weaknesses you say you've found with
Linux to date might actually be weaknesses of Slackware, which was
never meant for end users.  The rest of the world has package
management, automatically updating app shortcut and menu systems,
etc.  Slackware.... has tarballs.
If you really like the "building everything from source" thing I'd
suggest you at least try Gentoo, which goes halfway to package
management with its "portage" system while still allowing you to go
source-only.  I have no idea whether Gambas works on it, but I'm
pretty sure you'll be able to strip it down as much as you like.
Rob I find this, not to be insulting either, brain dead. I have tried
mandrake, redhat, suse and gentoo. The first time I tried Linux I had to
install from a hand full of floppies. I think RPM sucks the big one. And
slackware does have a package management system that is far superior then
RPM. They don't call it RPM Hell for no reason. Don't believe the BS you
read in Linux Format or any other Linux mag that says that Slackware
doesn't have a package management system. It has the best package
management system. There are at lest three programs for automatic updating
of slackware packages. If you are interested go to www.linuxpackages.net
and checkout packages for slackware.

I find the branding that is going on with mandrake, redhat and suse very
distasteful. Of the distros you mentioned I liked gentoo the best but I
wasn't happy with the way they handled run levels. And as for mandrake,
how lack of functionality equates to ease of use I have no idea. I think
mandrake is the worst of all the major distros. But if all you can do is
click with the mouse you can get mandrake up and running. I think this is
the reason that some people think slackware is not user friendly. It
doesn't have useless eye candy and you might need to actually type
something sometimes. But as an end user system Slackware is the best. I
have no idea where you get the idea that it was never intended to be an end
user system. Don't believe the BS put out by idiots that write in
magazines. All they know are RPM systems. So for them if it's not RPM it
is too hard for them to use because they might actually have to do
something other then click with the mouse.

You don't understand what I said about the .so files. They are three
different variants of zero. I don't understand why someone would have the
exact same file linked under three different variants of zero. The value
of having a <name>.so.3 or <name>.so.3.1 is obvious. But having file names
like gb.so, gb.so.0 and gb.so.0.0.0 is brain dead. A dot zero is the same
version as a dot zero dot zero. I see no purpose for this at all.

The weakness of Linux is in how programmers install their programs. Take a
look at /usr/bin. It has thousands of files with no order to them at all.
Gambas dumped most of it's programs in there with names like gbx, etc.
Take a look at a windows box in C:\windows\system and you will see
exactly the same kind of crap. This is because of the search path problem.
What needs to be done is have recursive search from the PATH declaration.
This would allow installing all program files in a more thought out
fashion, such as /usr/bin/gambas/gbx . If this became the standard of how
linux used the PATH I wouldn't have two thousand plus files, most with
meaningless names, in /usr/bin.

You can get a recursive PATH by adding a little scripting to profile like
this.

DIRS=( $(echo /usr/bin/*/) )
DIRS=( ${DIRS[@]%/} )
D=$( IFS=: ; echo "${DIRS[*]}" )
{provided by Chet Ramey}

You can then replace /usr/bin in the PATH declaration with $D and then when
looking for gbx it can be found in /usr/bin/gambas. But this is not done
on any distro. Then you have the problem of getting people that write
their install scripts to put their stuff in a directory under /usr/bin.
And while I'm ranting they can use more meaningful names then gbx.

And this is where compiling from source works nicely. You can set prefix to
a value such as /usr/bin/gambas and then make a package of the compiled
code to be installed with pkgtool, slackware's package management tool.
This is a much simpler process then making an RPM.

Joseph
Michael Isaac
2005-07-02 18:58:45 UTC
Permalink
Joseph,

All of that was very well stated. I fully agree with you and I think
your insight is spot on. Ive been an avid Slackware user ever since Red
Hat 8 left a bad taste in my mouth due to several issues with the RPM
system. At that time I had only used Red Hat and never experienced a
distribution that required real user intervention to configure it and
make sure everything was in good running order. Remember I was a serious
newbie. I had only been using Red Hat for a month (maybe two). After
the switch I got that taste of freedom and absolute control over my
system that only Slackware promotes. I was hooked and I never looked
back. Since then I have used many distributions and I nothing compares
to Slackware.
Post by Joseph Murphy
Post by Rob
I really don't mean this as an insult, but I'm going to say it anyway.
You don't know why .so files get links with a version number and
you're running Slackware, the least user friendly (by design) of the
major Linux distributions?
I think a lot of the end-user weaknesses you say you've found with
Linux to date might actually be weaknesses of Slackware, which was
never meant for end users. The rest of the world has package
management, automatically updating app shortcut and menu systems,
etc. Slackware.... has tarballs.
If you really like the "building everything from source" thing I'd
suggest you at least try Gentoo, which goes halfway to package
management with its "portage" system while still allowing you to go
source-only. I have no idea whether Gambas works on it, but I'm
pretty sure you'll be able to strip it down as much as you like.
Rob I find this, not to be insulting either, brain dead. I have tried
mandrake, redhat, suse and gentoo. The first time I tried Linux I had to
install from a hand full of floppies. I think RPM sucks the big one. And
slackware does have a package management system that is far superior then
RPM. They don't call it RPM Hell for no reason. Don't believe the BS you
read in Linux Format or any other Linux mag that says that Slackware
doesn't have a package management system. It has the best package
management system. There are at lest three programs for automatic updating
of slackware packages. If you are interested go to www.linuxpackages.net
and checkout packages for slackware.
I find the branding that is going on with mandrake, redhat and suse very
distasteful. Of the distros you mentioned I liked gentoo the best but I
wasn't happy with the way they handled run levels. And as for mandrake,
how lack of functionality equates to ease of use I have no idea. I think
mandrake is the worst of all the major distros. But if all you can do is
click with the mouse you can get mandrake up and running. I think this is
the reason that some people think slackware is not user friendly. It
doesn't have useless eye candy and you might need to actually type
something sometimes. But as an end user system Slackware is the best. I
have no idea where you get the idea that it was never intended to be an end
user system. Don't believe the BS put out by idiots that write in
magazines. All they know are RPM systems. So for them if it's not RPM it
is too hard for them to use because they might actually have to do
something other then click with the mouse.
You don't understand what I said about the .so files. They are three
different variants of zero. I don't understand why someone would have the
exact same file linked under three different variants of zero. The value
of having a <name>.so.3 or <name>.so.3.1 is obvious. But having file names
like gb.so, gb.so.0 and gb.so.0.0.0 is brain dead. A dot zero is the same
version as a dot zero dot zero. I see no purpose for this at all.
The weakness of Linux is in how programmers install their programs. Take a
look at /usr/bin. It has thousands of files with no order to them at all.
Gambas dumped most of it's programs in there with names like gbx, etc.
Take a look at a windows box in C:\windows\system and you will see
exactly the same kind of crap. This is because of the search path problem.
What needs to be done is have recursive search from the PATH declaration.
This would allow installing all program files in a more thought out
fashion, such as /usr/bin/gambas/gbx . If this became the standard of how
linux used the PATH I wouldn't have two thousand plus files, most with
meaningless names, in /usr/bin.
You can get a recursive PATH by adding a little scripting to profile like
this.
DIRS=( $(echo /usr/bin/*/) )
D=$( IFS=: ; echo "${DIRS[*]}" )
{provided by Chet Ramey}
You can then replace /usr/bin in the PATH declaration with $D and then when
looking for gbx it can be found in /usr/bin/gambas. But this is not done
on any distro. Then you have the problem of getting people that write
their install scripts to put their stuff in a directory under /usr/bin.
And while I'm ranting they can use more meaningful names then gbx.
And this is where compiling from source works nicely. You can set prefix to
a value such as /usr/bin/gambas and then make a package of the compiled
code to be installed with pkgtool, slackware's package management tool.
This is a much simpler process then making an RPM.
Joseph
-------------------------------------------------------
SF.Net email is sponsored by: Discover Easy Linux Migration Strategies
from IBM. Find simple to follow Roadmaps, straightforward articles,
informative Webcasts and more! Get everything you need to get up to
speed, fast. http://ads.osdn.com/?ad_idt77&alloc_id492&op=click
_______________________________________________
Gambas-user mailing list
https://lists.sourceforge.net/lists/listinfo/gambas-user
Loading...