Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Indigo and Indigo2 C Compilers?

0 views
Skip to first unread message

SelRecords

unread,
Dec 20, 2002, 6:47:59 PM12/20/02
to
Dear All,

Just bought an Indigo to be told my mate has an Indigo2 I can have. I want to
write programs in C so:

What do I need/what software would you recommend? (Its not just a text editor
and 'make' is it?)
Are there any 64bit compilers for Indigo2?
Are there any free 64bit compilers for Indigo2?
Am I better off learning C++?
Where to I get libraries from?
Is the SGI windowing system similar to X System Windows?
Is OpenGL a part of the windowing system?
Are there any books available or better still downloadable PDFs on any of these
subjects?

Its also worth pointing out that I got the SGIs becuase modern PCs refuse to
run MS-DOS, DOS crashes and I don't want to waste time fighting Windows.

I need to analyse frame sequences to create 3D data so being able to import jpg
or even just rgb / bmp files would be nice.

I have to say, I just got the Indigo with XS24 graphics and after 20 years of
PCs feel like I'm in control once more. This cute, stable little purple cube of
thought that won't decide its twenty minutes since it last went tits up so its
time for blue screen. Wonderful! :o)

Have a wonderful Christmas wherever you are!

Yours,
Richard :o)

Walter Roberson

unread,
Dec 20, 2002, 9:11:37 PM12/20/02
to
In article <20021220184759...@mb-fp.aol.com>,
SelRecords <selre...@aol.com> wrote:
:Just bought an Indigo to be told my mate has an Indigo2 I can have. I want to

:write programs in C so:

:What do I need/what software would you recommend? (Its not just a text editor
:and 'make' is it?)

Yeah, a text editor and 'make' -- and 'dbx' to figure out what's gone wrong.

SGI also has a commercial product, CaseVision, which is supplied with their
commercial compiler suites. CaseVision is an IDE (Integrated Development
Environment) for those that like that kind of thing. I tend not to use
it myself, but there -are- a couple of tools that it provides that
I sometimes find quite useful.

If you are doing serious C or C++ development work and have a bit of a
budget, then I would highly recommend getting Rational's "purify" product:
it will save your sanity, over and over again.


:Are there any 64bit compilers for Indigo2?

Urrr, Yes and No and Yes and Yes again. Or to phrase it another way,
what does "64 bit compiler *mean* ?!"

IRIX 6.2 and later have full support for 64 bit integer arithemetic,
and 64 bit floating-point arithemetic, on all platforms that support
running these later versions of IRIX at all. And if you are using
a filesystem that allows for such things (i.e., xfs instead of efs)
then you can have files larger than would fit in a 32-bit signed number.

On -some- models, IRIX 6.2 and later also offer support for 64 bit
pointers. On all models, if you are using the SGI compilers, you
can *compile* to target any of the other models: you can compile on
the lowest-end machines with intention to execute on the highest-end
machine.

Now, with regards to that "some models": the R4x00 -based Indigo^2
machines are NOT able to execute programs that require 64 bit pointers.
Those systems usually max out at 512 Kb of physical memory anyhow,
and it's a rare program that needs 64 bit pointers on a machine with
only 30-bits-worth of physical memory. The R10000 -based Indigo^2
machines *ARE* able to execute programs that require 64 bit pointers.
(But you'd be hard-pressed to get even 1 Gb of physical memory in
one of those machines.)


:Are there any free 64bit compilers for Indigo2?

I believe gcc can compile for 64 bit pointers.


:Am I better off learning C++?

Would you be "better off" learning oil-painting or pastel-painting?
They have different uses, and "better off" can depend upon the
economy in the place you live more than any objective merit.


:Where to I get libraries from?

From the distribution disks for IRIX 6.5, for the most part.
And look on http://freeware.sgi.com for gcc and gcc libraries.


:Is the SGI windowing system similar to X System Windows?

The default IRIX desktop window systems is a modification of Motif.


:Is OpenGL a part of the windowing system?

That probably calls for a [pointless] semantic argument. Pointless
because no matter whether it is or is not "part of the windowing system",
it's right there and ready to use in IRIX 6.x. Different versions of
OpenGL are supported by different IRIX versions.


:Are there any books available or better still downloadable PDFs on any of these
:subjects?

http://techpubs.sgi.com


:I need to analyse frame sequences to create 3D data so being able to import jpg


:or even just rgb / bmp files would be nice.

Shouldn't be much of a problem. You might want to also consider
writing in Perl.
--
Feep if you love VT-52's.

SkyWriter

unread,
Dec 20, 2002, 9:15:29 PM12/20/02
to
Walter Roberson wrote:

> -
> Feep if you love VT-52's.

feep!


Hugh Fisher

unread,
Dec 22, 2002, 7:28:19 PM12/22/02
to
SelRecords wrote:

> What do I need/what software would you recommend? (Its not just a text editor
> and 'make' is it?)

Well...yeah actually. nedit, make (or rather smake/GNU make) and
a command line compiler are really pretty good tools.

> Are there any 64bit compilers for Indigo2?

I do my programming in 'N32' : 32 bit integers, 32 bit pointers,
32 or 64 bit floating point. This does limit you to 2G of virtual
memory and 4G maximum file size, but if you need to go beyond
that you have to buy a bigger SGI anyway, something like an Onyx
or Octane.

See the post by Walter Roberson for more detail.

> Are there any free 64bit compilers for Indigo2?

Self promotion:
<http://cs.anu.edu.au/~hugh.fisher/lcc>
is a free C compiler for SGI that can create O32/N32 code for
the standard SGI development foundation (more on this below).
The LCC compiler was written by Hanson and Fraser, I just
wrote the N32 backend.

You can also get gcc for IRIX, which gives you a C++ compiler.

> Am I better off learning C++?

Subjective personal opinion: no. Learn Java instead. You can
download Java from the SGI developer web site somewhere.

> Where to I get libraries from?

You need the IRIX Developer Foundation, which is a standard
part of the more recent IRIX distributions on CD. If you don't
have it, you should be able to get copies of the CDs from the
local SGI office or download (if you have a fast connection!)
from the SGI site.

SGI have an excellent 'Developer Toolbox' web site, and you can
sign up as an online member for free.

> Is the SGI windowing system similar to X System Windows?

It is X Windows.

> Is OpenGL a part of the windowing system?

The Development Foundation CDs come with a full set of OpenGL
headers and libraries. All SGI systems have OpenGL runtime.

> Are there any books available or better still downloadable PDFs on any of these
> subjects?

Have a look at the Help > Online Books > SGI Developer
contents listing.

For OpenGL programming, you want the 'Red Book', more formally
the "OpenGL Programming Guide" by Woo, Neider, and Davis,
from Addison-Wesley. Either the second or third edition will
do fine, although since you say you want to analyse image data
perhaps you'll need the image extensions in OpenGL 1.2 that
are only discussed in the 3rd edition.

You may be able to get an online version of this book, maybe
from the <http://www.opengl.org> site?

See also the Digital Media Programmers Guide in the online
books for IRIX-specific stuff about loading images and creating
movies.

Hope this helps.

--
Hugh Fisher
DCS, ANU

SelRecords

unread,
Dec 23, 2002, 11:38:50 PM12/23/02
to
Thanks to everyone for the tips. Learning Java is a big no-no for any app other
than web stuff. The portability is great and maybe it is different on the SGI
platform but it runs in a 'dirtbox' on most other systems making direct access
to the graphics system tedious and slow - the exact reason I'm dropping Windows
for programming.

Thanks for all the detailed and reasoned replies to this posting. I will follow
up all the links in the new nyear once I get a monitor so my Indigo isn't just
a purple sculpture and I have learnt some basic UNIX - Can't be harder that
networked C/PM can it?

Yours,
Richard :o)

Walter Roberson

unread,
Dec 24, 2002, 3:54:49 AM12/24/02
to
In article <3e0657b9$1...@clarion.carno.net.au>,
Hugh Fisher <hugh....@anu.edu.au> wrote:
:> Am I better off learning C++?

: Subjective personal opinion: no. Learn Java instead. You can
: download Java from the SGI developer web site somewhere.

Depends greatly on what you want to do. If you want to get a job
as a Java developer, then learn Java. If you want to do systems
programming, learn C. If you want to do applications programming
then C if you have hard constraints, with C++ becoming suitable
as your constraints become looser.

My coworkers spend the last few years writing a scientific extensible
application in Java. Or rather, they intended to write it in Java with
just the odd little forey into C++, because "everyone knows" Java is
the way of the future. The foreys into C++ became bigger and bigger as
they found the memory management and typecasting in Java to be too
limiting for efficiency -- you really do NOT want to be copying
128 Mb just so you can pass a slice of a 512 Mb dataset, but Java
doesn't have pointers to allow you to go in and do what you know
needs to be done...

They now tell me that their next project will be written in C++ (with
perhaps the odd forey into something else for the GUI.)

0 new messages