Search the FAQ Archives

3 - A - B - C - D - E - F - G - H - I - J - K - L - M
N - O - P - Q - R - S - T - U - V - W - X - Y - Z
faqs.org - Internet FAQ Archives

[comp.sys.be.programmer] Welcome - read this FAQ first!


[ Usenet FAQs | Web FAQs | Documents | RFC Index | Counties ]
Archive-name: computer/system/be/programmers
Posting-Frequency: monthly
Last-Modified: December 1, 2000
URL: http://bang.dhs.org/faq/
Maintainer: Stephen van Egmond <svanegmond@home.com>

See reader questions & answers on this topic! - Help others by sharing your knowledge
West of House
You are standing in an open field west of a white house, with a boarded
front door.

There is a small mailbox here.

> OPEN MAILBOX. READ LEAFLET
Opening the small mailbox reveals a leaflet.

(Taken)

  (1.1) Welcome to comp.sys.be.programmer!
  This is the Frequently Asked Questions list for the group
  comp.sys.be.programmer, a Usenet newsgroup for discussion among BeOS
  software developers.

  All software referred to in this FAQ can be found at BeBits,
  http://www.bebits.com/, unless otherwise noted.

  It has been translated into Japanese, available at
  http://www.fsinet.or.jp/~suzu-kat/beos/csbp-jp.htm

  Table of contents:
  (1.1) Welcome to comp.sys.be.programmer!
  (1.2) How to ask for help
  (1.3) What's the development environment like?
  (1.4) Recommended Books
  (1.5) Where is Java?
  (1.6) Where are the Visual Basic or Delphi-like development systems?
  (1.7) GeekGadgets
  (1.8) How to avoid getting tons of linker errors
  (1.9) I'm still getting link errors with cin, cout, etc.
  (1.10) Disclaimer and copyright/trademark notice

  Special thanks to Chris Herborth and Brent Newhall.

> SOUTH
Enchanters' Retreat
Belboz is meditating here.

> BELBOZ, HELLO
"Hello." Belboz doesn't seem pleased to see you.

> ASK BELBOZ FOR A HINT
Belboz looks at you suspiciously. "Only the rawest apprentice would ask
for help without observing proper netiquette."

  (1.2) How to ask for help
  If you are having trouble with your operating system as a user, you
  should visit http://www.be.com/support/, and you should not bother
  comp.sys.be.programmer about it. We're not in the business of free tech
  support.

  If you having developer troubles, you should be able to demonstrate that
  you have read (1) the Be Book, and (2) the Be Developer Library, at
  http://www.be.com/developers/developer_library/index.html.

  How to post source code: Take your source code aside and strip it down
  to the smallest possible case which does not work the way you expect to,
  and post that.

  If you know that you've found a bug in the BeOS, visit
  http://bebugs.be.com/.

  If you are looking for other developer resources, Be hosts several
  mailing lists for developers. Read up at
  http://www.be.com/world/mailinglists.html. Tim Vernum has written up a
  FAQ for common developer questions on BeDevTalk, and it's at
  http://www.acay.com.au/~tpv/be/devtalk/FAQ.html

Belboz looks at you expectantly.

> ASK BELBOZ ABOUT COMPILERS
He lights up. "Ah, a newcomer."

  (1.3) What's the development environment like?

  Long ago, Metrowerks (the makers of the CodeWarrior development system)
  were hired by Be to write the Integrated Development Environment (now
  known as the BeIDE), and port their compilers to the BeOS for PowerPC.
  The compilers included with the BeOS had a limited capacity, and you had
  to pay money to get an unlimited environment.

  When Be first released the Intel version, the Metrowerks environment was
  brought over with it. At the time, Metrowerks' compilers were not
  renowned for producing great code on Intel systems. With R4, Be switched
  to the EGCS/gcc compiler set.

  Here is how things stand today:
    * Be owns and continues to improve the BeIDE.
    * Metrowerks compilers remain in use for PowerPC.
    * The EGCS/gcc compiler set is in use on Intel.
    * There is a visual source debugger. It is called bdb. It is still in
      a bit of rough shape, it it not yet integrated with the BeIDE, and
      it is getting a lot of attention for improvement within Be. gdb has
      been ported, but all the ports are a bit rough.
  There are some alternative languages, though none are recommended if you
  are serious about shipping an application.

  For people who want to do scripting-like things, the order of preference
  for doing that on the BeOS goes like this:
  
  
  

Belboz looks at you expectantly.

> ASK BELBOZ FOR A SPELL BOOK
"Don't they sell those at Amazon.com?"

  (1.4) Recommended Books
  Be maintains a nice list of applicable books, without reviews, on their
  web site at http://www.be.com/store/bebookstore.html . Here's some
  recommendations, with a bit more annotation:

  If you're utterly new to programming, there are two kinds of books you
  need to read: those that teach you how to turn ideas into design, and
  those that teach you how to turn your designs into C++ code.

  Books on design: Design Patterns" by Gamma, Helm, Vlissides, etc.

  Learning C++ if you already know some other language: "The Beginner's
  Guides to C++" by Y. Yaroshenko, and "C++: How to Learn" by Deitel &
  Deitel.

  Writing good code: "Code Complete" by Steve McConnell, and "Effective
  C++" by Scott Meyers.

  New to programming and the BeOS: "Programming the Be Operating System"
  by Dan Parks Sydow.

  Good at programming some other OS, learning the BeOS: You don't need a
  book. Read the Be Book, included with your OS install or available on
  Be's web site in HTML form.

  Getting even better at programming: "Structure and Interpretation of
  Computer Programs" by Sussman and Abelson, and the CS342 course notes
  from Waterloo's concurrent-programming course at
  http://www.undergrad.math.uwaterloo.ca/~cs342 .

> ASK BELBOZ ABOUT JAVA
Belboz rolls his eyes.

  (1.5) Where is Java?
  There are Java compilers available at BeBits that work quite well, and
  produce bytecode that runs on any interpreter on any platform.

  But there is no Java VM. There was one long ago, made by Metrowerks, but
  it is gone now, for many tedious reasons. There is at least one being
  developed: a port of the open-source Kaffe project. The Kaffe port works
  nicely, but the AWT system is not complete.
  http://bekaffe.sourceforge.net/

  Sun has certified the BeIA platform's compliance with the requirements
  for PersonalJava.

> S.W.SW.W.W.
Flathead Ocean
Passing alongside the shore now is an old boat, reminiscent of an ancient
Viking ship. Standing on the prow of the ship is an old and crusty sailor,
peering out over the misty ocean.

> HELLO SAILOR
The seaman looks up and maneuvers the boat toward shore. He cries out:

  (1.6) Where are the Visual Basic or Delphi-like development systems?
  There are none. Some people are working on them, but none are finished
  or even near alpha. Those under development are listed at BeWare.

  Many people feel Interface Elements is good enough for now. It will
  generate code for you that you must fill out to get functionality.

  Another piece of software called BeXL has also been gaining favour
  lately.

"Please accept this gift. You may find it useful!" He throws something
which falls near you in the sand, then sails off toward the west, singing
a lively, but somewhat uncouth, sailor song. The boat sails silently
through the mist and out of sight.

> EXAMINE GIFT

  (1.7) GeekGadgets
  GeekGadgets is a huge effort undertaken by Fred Fish (who has since been
  hired by Be) to bring the huge Unix-compatible tool set to the BeOS.
  This includes things like perl, text tools, nroff, man, and many many
  more.

  If there is a tool that you have known and loved from the
  Unix/Linux/FreeBSD world and it's not already installed in your system,
  go to ftp://ftp.geekgadgets.org/. You can download pre-built executables
  or source distributions.

> READ BOOK
Commandment #12593

  (1.8) How to avoid getting tons of linker errors
  The Short Answer: Use the "BeEverythingApp" project stationery when you
  build your project.

  The Long Answer: Your C or C++ code can not run on its own. It has to
  introduce itself to the operating system, know how to output to a
  Terminal, and all kinds of other things. The code to do this is in glue
  code and libraries which must be linked to your code.

  Glue code is the bare minimum to get your program up off the ground. It
  well set up the basics for you, call your main() function, and clean up
  when your program exits.

  Libraries contain the functionality of the BeOS. They are named
  libsomething.so, where something is supposed to be descriptive.
  libroot.so has most of the C library. libbe.so has the basics of the
  Application Kit. libmedia.so contains the Media Kit. And so on.
  Libraries are stored in the BeOS under the /boot/develop/lib/ directory.

  It is generally easier to rebuild your project using the right
  stationery than to go hunting around on your disk for the necessary
  files. You should use either the BeApp or the BeEverythingApp stationery
  for applications and command-line tools.

  BeApp stationery has glue code, libbe.so and libroot.so. These are the
  basics for getting an application off the ground and putting windows up.
  You will have to add other libraries as you use other kits.

  BeEverythingApp has all the system libraries already included. It might
  slow down the link process, but if your system is decent you won't
  notice.

> TURN THE PAGE
Commandment #12594

  (1.9) I'm still getting link errors with cin, cout, etc.
  Add /boot/develop/lib/x86/libstdc++.r4.so to your project. PowerPC users
  should use /boot/develop/lib/ppc/libmslcpp_4_0.a.

A seedy-looking individual with a large bag just wandered through the
room. On the way through, he quietly abstracted some valuables from your
possession, mumbling something about:

  (1.10) Disclaimer and copyright/trademark notice
  This FAQ Copyright 1999 by Stephen van Egmond. Reproduction of this
  document and inclusion in any off-Net compilation without permission is
  not OK. Ask first.

  Do me a favour, and only link to the page at
  http://bang.dhs.org/faq/csbp.html; do not copy it onto your web pages,
  because it will be out of date very quickly.

  All trademarks remain the property of their respective companies.

Someone carrying a large bag is casually leaning against one of the walls
here. He does not speak, but it is clear from his aspect that the bag will
be taken only over his dead body.

> KILL THIEF WITH SWORD
A good slash, but it misses the thief by a mile. The thief comes in from
the side, feints, and inserts the blade into your ribs.

It appears that that last blow was too much for you. I'm afraid you are
dead.

  **** You have died ****

Press any key to continue

  ----------------------------------------------------------------------

                                                        Stephen van Egmond
                             Reader Comments

  Hi, just wanted to see if you have the time to edit and update the links
  on this page. Thanks for keeping the BeOS 'alive' and programming
  information available. There are still some of us out here that use BeOS
  exclusively, and love it.

  Todd Nathan Dev #4296 Owner of BeBoxen #6 :o)
  --Bubba Jones on January 5, 2002

                              Add a comment

User Contributions:

Comment about this article, ask questions, or add new information about this topic:

CAPTCHA


[ Usenet FAQs | Web FAQs | Documents | RFC Index ]

Send corrections/additions to the FAQ Maintainer:
Stephen van Egmond <svanegmond@home.com>





Last Update March 27 2014 @ 02:11 PM