Re: Compiling C++ kernel module + Makefile
From: Zan Lynx
Date: Tue Jan 20 2004 - 12:37:35 EST
On Tue, 2004-01-20 at 08:20, Richard B. Johnson wrote:
> Nevertheless, I provide three programs, one written in
> C, the other in C++ and the third in assembly. A tar.gz
> file is attached for those interested.
>
> -rwxr-xr-x 1 root root 57800 Jan 20 10:16 hello+
> -rwxr-xr-x 1 root root 460 Jan 20 10:16 helloa
> -rwxr-xr-x 1 root root 2948 Jan 20 10:16 helloc
>
> The code size, generated from assembly is 460 bytes.
> The code size, generated from C is 2,948 bytes.
> The code size, generated from C++ is 57,800 bytes.
>
> Clearly, C++ is not the optimum language for writing
> a "Hello World" program.
I like C++ and hate to see it so unfairly maligned. Here's a much
better example:
Makefile:
helloc: hello.c
gcc -Os -s -o helloc hello.c
hellocpp: hello.cpp
g++ -Os -fno-rtti -fno-exceptions -s -o hellocpp hello.cpp
Both programs contain exactly the same code: one main() function using
puts("Hello world!").
# ls -l
-rwxrwxr-x 1 jbriggs jbriggs 2840 Jan 20 10:02 helloc
-rwxrwxr-x 1 jbriggs jbriggs 2948 Jan 20 10:06 hellocpp
108 extra bytes is hardly the end of the world.
--
Zan Lynx <zlynx@xxxxxxx>
Attachment:
signature.asc
Description: This is a digitally signed message part