[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Hi everybody!



Alexandre Courbot wrote:

>Here it is. Please report english mistakes an eventually errors.

I'll focus on inconsistencies etc as I'm no native english speaker myself.

First some more or less general notes:

* Make the prompt shorter. Using a simple "$" would improve readability
* Seperate code/userinput/output/main text better. Perhaps use different
colours.
* Perhaps use some different part scheme, e.g. have Part 1 cover
development tools, Part 2 cover gfx libraries etc


Specifics that don't require quoting ;) :

* Talk a bit about gcc versions, esp. that egcs/pgcc should be used when
possible, as the others (gcc 2.7 / 2.8) are outdated and not maintained
anymore.
* Consider this in your explanation of the "-O" option. You first say that
-O3 is the highest possible setting, but use -O6 in all examples.
* The "Used to avoid a warning" comments after function prototypes sound as
if those warnings were some silly habit of the compiler.



The other things:

> All the development tools will be studied. Now. 

(1) Do not say "all the tools". There are simply way too many of them. "The
basic tools" is better.
(2) The "Now." sounds like you command someone to do somethine Now. Better
remove it.

>The "-o <name>" option is always used and sets the executable name. If
>you omit it, it will be a.out.

-o sets the _output file name_. What kind of file this is depends on the
other switches you use (e.g. -c).

>[alex@bluefalcon]~/tut $gcc main.c -o math
>/tmp/ccc02939: In function `main':
>/tmp/ccc02939(.text+0xb): undefined reference to `sqrt'
>[alex@bluefalcon]~/tut $ls math 
>ls: math: No such file or directory 

The last two lines (ls math ...) are intended to show that the executable
wasn't built, right? IMHO this is a bit confusing and unneeded.

>However the static binary size is much more important than the dynamic one!

-> "the statically linked binary is much larger than ..."

>If you want to check the links of an executable you can use ldd:

-> "want to check the linkage of"  (??)

>On the same line as the target definition are the .o objects that must be
>generated by this target (for "all" its math.o, hello.o and main.o

-> "... are the files the target depends upon (...), that means the files
that have to be made or brought up to date before that target's commands can
be executed"

>you can write UNIX shell command and use aliases. For example, the second
>line of "all" will link all the objects to the executable and "clean" will
>delete all the objects files and the executable.

I don't really understand what you want to say with that.


>However, if you just type "make" it will build the first target ("all"). 

-> ... ("all" in this case)
is a bit clearer

>The advantages are multiple, the main is that the libraries use all your
>video card acceleration.

That's unfortunately not true. In many cases support for hardware
acceleration under Linux is rather bad. But when the accel will be
supported, the libraries will make use of it without requiring you to
change your code.
And libraries abstract the graphic hardware, i.e. you do not have to write
seperate code for each and every gfx card on the market.


>Mesa is a free, compatible implementation of OpenGL. If you want to do 3D
>OpenGL programming that's what you need. Mesa exist for many many system
>(including linux and windows) and support of course hardware
>acceleration.  

Hardware acceleration support in Mesa still isn't very good unfortunately.

>If you have problems with this part, please ask questions to the linux
>forum.

You mean this mailing list?


	Christian

--

Drive A: not responding...Formatting C: instead