creating a file

C

Chris H

Sherm Pendley said:
IMHO, a lot of it has to do with the free/foss philosophy as well. When
source code is available, one can build new binaries at any time. When
that option is taken off the proverbial table, maintaining the ability
to run "old" binaries becomes far more important.

This is a spurious argument. In another group some one else tried it and
when asked for examples he gave several commercial packages from
companies that had disappeared between 5 and 15 years ago.

Within 24 hours copies of all of them were found and could be made
available. It was quite interesting to see.

However when some one sited several Open Source tools that had
disappeared more the 5 years ago no one could find any of them.....
source or binary.

So this long life and availability of Open Source over any other is a
myth. In fact looking at the attrition rate of Linux Distributions
(about 50%) Open Source has a shorter life span than commercial tools
 
J

jacob navia

Le 27/02/11 17:32, Sherm Pendley a écrit :
The spurious argument is, in fact, that FOSS advocates are trying to
maintain binary compatibility and failing to do so due to lack of control
or discipline. That simply isn't the case - they aren't even trying to
maintain it to begin with, because they don't see it as important.


For instance:

I spent 2 months porting Wedit from windows to gtk. Then, GTK changed
versions and I was supposed to redo my work.

Since Microsoft/Apple/Oracle/whatever have "customers", i.e. people that
PAID real money for the stuff they are getting, they a least try to keep
their customers happy since they get their bread from them.

For Open source people, since they are NOT paid by their "customers",
they do not give any importance to what their users say. They will
change any interface without any consideration for backwards compatibility.
 
H

Hans Vlems

That's not quite fair. MS don't design their own hardware, and it's more
challenging to create something that works across hundreds of combination of
hardware from different manufacturers. And that allows hundreds of different
peripherals to be plugged in and still work.

And there are a million different software products to buy or download for
Windows, which if nothing else, will bring obscure bugs to the surface due
to the sheer number of operating hours that the software runs for. (When I
sold software, each new sale meant, to me, another customer spending up to
forty hours a week trying to find bugs in my program; although my boss had a
different view..)

And then the popularity of the OS means a large number of people
deliberately and maliciously trying to find and exploit bugs.

I don't know VSE and the latest IBM hardware, but I'd guess this doesn't
apply so much ...

The statement is not about being "fair", it refers to reality. The why
is obvious,
VSE is probably older than many of the readers of c.l.c. and is pretty
stable.
The functionality, control over hardware (or lack thereof) of Windows
and Microsoft is way beyond the wildest expectations of the inventors
of VSE.
What I was talking about is cost of ownership and maintenance.
Choosing Windows solves certain problems and introduces several new
ones. The platform choice was mine. Though I have great affection for
the VSE platform, I still think that the Wintel platform is far better
for that company.

I don't dislike Windows Server. Leave it alone, run one application on
a (very cheap) box and you can leave the system unattended for years.
Don't install patches, keep users from the Internet away and don't pay
for maintenance. That's the way to operate the platform and very few
do it cheaper and as reliable.

Hans
(runs VMS at home ;-)
 
I

Ian Collins

In message<[email protected]


Compared to what? Compared to embedded OS and RTOS it is neither
small, quick at booting or Real time. That said it does have it's
place

Which can be in any embedded device with a 32 bit or bigger CPU. Every
satellite TV box, in flight entertainment system and a large percentage
of networking kit I've seen run Linux.
It does have it's place as long as you appreciate the reality rather
then the religion it seem sot come with.

My kids and their friends are happy with either Linux or MacOS.
 
J

jacob navia

Le 25/02/11 15:53, David Resnick a écrit :
I'm curious to see a number as well. All significant development in
our company of ~4000 people (mostly C++ or Java these days) is done on
linux. We use Windows for Office/email, but develop/deliver to
customers on linux, and have since transitioning over from Windows NT
many years back. I "develop" on windows only the extent that I'm
running an X-server on my Windows box to open terminals on my linux
one. "vast majority will be developing on Windows" sounds quite
unlikely to me, but I could be convinced if there were a real source
rather than someones perhaps parochial opinion ("nobody I know voted
for Nixon, how did he win?"). While the overwhelming majority of
desktop PCs are still Windows (see http://en.wikipedia.org/wiki/Usage_share_of_operating_systems,
e.g.), I personally very much doubt that the "vast majority" of
commercial development targets PCs, as opposed to say non-Windows
based servers, embedded work, mobile devices, etc. But that could
just be my parochial opinion too...

I develop under windows both GUIs programs and text mode programs.
The advantages of using directly the windows API is that a program
developed for windows 16 bits can be ported with minimal problems into
windows 32 and 64 bits.

I have been trying to address the problems of the language as a general
purpose developing language in this group. That is why I have been
proposing the containers library for instance, a project that has been
released with source code. See http://code.google.com/p/ccl/

My compiler system that provides a GUI develomment framework has been
downloaded more than a million times and is being used world wide.
It would be highly surprising that most of those downloads were NOT
from people developing under windows.

I have repeated this in this group many times, but the GNU/gcc
fans are more vocal here. My users do not use this group, we
have our own discussion forums in our server.
 
J

jacob navia

Le 28/02/11 04:00, Sherm Pendley a écrit :
That depends - money talks. :)

Kidding aside, it's another logical outcome. The FOSS model is based on
making money from services& support; thus, there's little if any reason
to spend time on "features" such as sane UIs, trouble-free maintenance -
things that reduce the demand for one's services.

sherm--

Yes, that is the big problem. They say

"You have the source code"

If you look at the source code though, you discover that in most files
there is a SINGLE comment: the famous "Copyright" statement. Some times
there is a cryptic comment about the purpose of the file, but most of
the time there is absolutely NO technical documentation.

That's a problem also for them since the time required to understand
the software growths exponentially with each line of uncommented
source code. This makes of course the business of the people providing
"support", in most cases the authors.

A good example is the proliferation of IDEs under linux, that provide a
bare front end to gdb, and a text editor with no more capabilities as
vi... All of them (besides the ones done by IBM: eclipse) do not
provide ANY real innovation or even the features like "goto definition",
or "where is this variable called", etc.

Why?

Because nobody wants to PAY for the development of such an IDE. There
is absolutely no market, not because there is no need but because
no linux developer will pay for any tool: they ALL must be free.

Then, of course they are stuck with gdb...
 
I

Ian Collins

I'm curious to see a number as well. All significant development in
our company of ~4000 people (mostly C++ or Java these days) is done on
linux. We use Windows for Office/email, but develop/deliver to
customers on linux, and have since transitioning over from Windows NT
many years back.

That tallies with the embedded shops I have run or am currently
associated with. Non-developers use Windows, developers use Linux.
Shared tools (browser, mail clients) are platform agnostic, such as
Firefox and Thunderbird.
 
I

Ian Collins

A good example is the proliferation of IDEs under linux, that provide a
bare front end to gdb, and a text editor with no more capabilities as
vi... All of them (besides the ones done by IBM: eclipse) do not
provide ANY real innovation or even the features like "goto definition",
or "where is this variable called", etc.

Sunstudio (based on NetBeans).
 
R

Richard Sanders

A good example is the proliferation of IDEs under linux, that provide a
bare front end to gdb, and a text editor with no more capabilities as
vi... All of them (besides the ones done by IBM: eclipse) do not
provide ANY real innovation or even the features like "goto definition",
or "where is this variable called", etc.

Codeblocks.
 
J

jacob navia

Le 28/02/11 11:05, Richard Sanders a écrit :
Codeblocks.

Downloaded and installed code::blocks. Maybe, I thought, it has improved
from last time I checked.

Project -->New project

I named it "test". It created a project and a "main.c". Unfortunately
you can't open the "main.c" it creates since when you press "Open"
it says "main.c doesn't exist".

OK, I created a NEW main.c, and added it to the project. It accepts a
second file "main.c" without complaints, but then it says:
"File main.c has disappeared". OK, I press OK and return to the
main.c that is still in the project. I say "save as", and I save it in
some directory. This time works, and I can type an hello world program.

The "goto definition" feature works this time and when I say where
is defined printf it puts me in the right line of stdio.h.

I press "Build" and receive the message "Can't create directory "bin/debug".

OK. I see in the debug messages window:
main.c||In function 'main':|
||can't create output file: obj/Debug/main.o|

This is probably a consequence of code::blocks being in some
directory like /usr where only root can create directories,
or whatever. It is impossible to know WHERE you are in the
file system hierarchy since it will NOT tell you in any of the window
titles of the open documents (project and main.c) WHERE it is storing
the files!!!

In File--> properties it will tell me that the absolute path is "main.c"
and the relative path is "main.c" so I deduce that
it is trying to create files in "/"... I was lucky that I did
NOT run it as root.


And there is NO way out. It will tell me "Can't create directory
bin/debug" but it doesn't give me ANY way of correcting that.

In project-->properties menu it doesn't show me the current directory
either...

I get bored, try to close it and then it crashes. When I restart
there is no trace of my test project.

Well, it is a good sample of what you find under linux.

Sorry, but it did not improve since last time I checked...
 
J

jacob navia

Le 28/02/11 11:56, jacob navia a écrit :
Sorry, but it did not improve since last time I checked...

I tried again, and I managed to build a project...

I started the debugger, and gdb works...
I defined a structure
#include <stdio.h>
#include <stdlib.h>
typedef struct tagfoo{
int a;
double b;
}foo;
int main()
{
foo m;
m.a=1;m.b=2.0;
printf("Hello world!\n");
return 0;
}

Stopped at the printf statement I asked it to go to the
definition of "m". The answer is
Can't find the definition of "m"

I asked to show all occurrences of "m".

Crash. Project is lost. I have to start again.
 
J

jacob navia

Le 27/02/11 16:04, Chris H a écrit :
True... Whilst the Linux crowd go on about vulnerabilities in Windows
there are usually as many in Linux. Also of course the first worms and
viruses targeted Unix. I expect when Linux gets as popular as windows it
too will have it's fair share of viruses and attacks.

However with 100's of distributions how with the Linux community solve
this problem?

At least with Windows and OSX all the fixes come from 1 place. What will
happen with Linux? How with the hundreds of distributions apply fixes
against viruses? We also have the problem that viruses my affect
different distributions differently .

Look, there are no two human beings exactly equal.

Why?

There is a people in Siberia, that apparently are immune to the
AIDS virus. The virus main receptor molecule is slightly different
in them. This slight difference makes them immune since the virus
can't enter their bodies.

Virus specialize in details, in details that open weakness in their
hosts. The fact that linux is so broken is a POSITIVE feature in this
respect. We have evolved precisely this variability to PROTECT us
from viruses. If the AIDS virus would have been more virulent and
would have killed ALL mankind, those people would have survived
and would have been able to rebuild our species.

Viruses thrive on uniformity.If Apple and Microsoft would build
variability in their systems viruses would have much more work to
do.

The fact that many versions of linux are incompatible, and that is
impossible to build software for ALL of them is a problem for virus
writers too...

:)
 
J

jacob navia

Le 28/02/11 15:46, Richard a écrit :
The gnu/gdb framework for modern C/C++ development are generally
garbage. I recently tried cedet with emacs but it never got it working -
like most half tested open source stuff it simply didnt work.

See my other post in this thread, about the IDE code::blocks...
That confirms what you say:

"... like most half tested open source stuff it simply didn't work"
 
T

Tom St Denis

The gnu/gdb framework for modern C/C++ development are generally
garbage. I recently tried cedet with emacs but it never got it working -
like most half tested open source stuff it simply didnt work.

Eclipse or codeblocks are probably a better choice anyway. gdb is held
together with sticky plaster.

Um what? What platform are you debugging? I've never had problems
with GDB on x86/ppc. Sure it's not the most user friendly interface
but it works fine. DDD is a bit of a hack but it's useful too.

Tom
 
T

Tom St Denis

It doesnt work fine. Its truly horrible to use. From code navigation etc
point of view. Debugging is not just about setting a break point at a
fixed line. With no decent front end gdb IS a pain and makes things ten
times more complex than it need be.

I dunno, I use it just fine... To each their own and all that. I've
used it to isolate bad pointers and faults in logic more than a few
times. Combined with valgrind I find my uninitialized variables/etc
fairly quickly.

What makes GDB so useful [aside from being free] is that it works
across multiple platforms and remotely. What makes it a pain is the
lack of straightforwardness of it (though simple tasks like step, run,
break, backtrace, etc aren't hard). Though having started to use
RVDS to debug ARM programs even commercial debuggers can be a bit of a
pain to get up and running...
DDD is simply gross.

It's not my tool of choice either, but its sometimes better than
nothing.

There is a lot of GNU hate going around lately. I don't know why you
folk just don't use it. Nothing you've written for so far is a
legitimate complaint, just randomly quibbling and moaning. If I ever
a GDB developer I couldn't read your post and go "aha, I guess we can
improve that."

Tom
 
T

Tom St Denis

However with 100's of distributions how with the Linux community solve
this problem?

100s?

There is really only a few main distros that cover 99% of all Linux
users

Debian => Ubuntu => Kubuntu

Gentoo

Redhat => Fedora Core
=> CentOS (lesser extent)

While there are "100s of distros" most are dead/orphaned.

Generally though the popular distros keep on top of patches and push
them downstream fairly quickly. I get updates for Firefox [for
instance] fairly quickly from the Ubuntu 10.10 stream. So do Fedora
users, so do Gentoo ...

The upside [in theory] of the OSS world is many eyes, the reality
though specially in larger projects is that the software is often so
huge and horribly maintained [internally] that few people undertake
maintaining it. That said, I'd rather have "some chance" of looking
under the hood than what Microsoft provides.

Part of what annoys me with the MSFT "culture" is the whole "well I
can pay for that" mentality. Shit like WinZIP or "GoTo My PC" just
shouldn't fucking exist, specially in 2011.

Tom
 
S

Seebs

FUD again.... Microsoft is Still there.

So's Linux.

Specific Linux distrubutions correspond logically to specific releases of
Windows, not to Microsoft. The difference, of course, being that you need
to do about 1% as much work to port something that ran under a particular
Linux 10 years ago as you do to port something that ran under a particular
Windows 10 years ago.
Where to I get support for these distributions of Linux that I bet the
farm on 10 years ago now?

I think you're going about this wrong. You don't bet on a distribution,
you bet on the family. Swapping from one to another is a comparatively
trivial cost; there's more similarities between, say, Fedora and Ubuntu (to
pick two I specifically know to be fairly far apart in many ways) than there
are between, say, XP and Windows 7.

-s
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,756
Messages
2,569,533
Members
45,007
Latest member
OrderFitnessKetoCapsules

Latest Threads

Top