From: Wolfgang Denk <wd@denx.de>
To: Richard Danter <richard.danter@ntlworld.com>
Cc: linuxppc-embedded <linuxppc-embedded@lists.linuxppc.org>
Subject: Re: Simple module, but won't build
Date: Tue, 04 May 2004 22:19:18 +0200 [thread overview]
Message-ID: <20040504201923.46320C109F@atlas.denx.de> (raw)
In-Reply-To: Your message of "Tue, 04 May 2004 20:46:55 BST." <4097F32F.6090504@ntlworld.com>
In message <4097F32F.6090504@ntlworld.com> you wrote:
> Hi Wolfgang,
>
> Wolfgang Denk wrote:
> >
> > Seems you are missing to include some necessary header files and/or
> > to provide the necessary compiler options.
>
> I am taking a driver I wrote for a 2.4.2 kernel, built with 2.95.x
> compiler and trying to port it to 82xx from 8xx and use the new ELDK.
>
> Since it is so simple, it just writes to a mem mapped I/O port to set
> some LED's on/off, I assumed it would be pretty simple. But alas, that
> was probably a bad assumption on my part.
>
> The main module includes the following:
>
Insert:
#include <linux/kernel.h>
#include <linux/init.h>
> linux/module.h
> linux/fs.h
Probably needed:
#include <asm/types.h>
> asm/io.h
> asm/uaccess.h
>
> in that order.
>
> I have grep'ed for CONFIG_KERNEL_START and CONFIG_TASK_SIZE and the only
> place I can find them defined is in the kernel source .config (and
> default config files for each board). Not in any of the header files.
Grep after configuring the kernel, and you should find them in
include/linux/autoconf.h:#define CONFIG_KERNEL_START 0xc0000000
include/config/kernel/start.h:#define CONFIG_KERNEL_START 0xc0000000
resp.
include/linux/autoconf.h:#define CONFIG_TASK_SIZE 0x80000000
include/config/task/size.h:#define CONFIG_TASK_SIZE 0x80000000
> Maybe I am sposed to #define them myself - I tried that and it worked -
> but would like a more automagic solution if there is one!
There is no magic involved ;-)
> Command line options are:
>
> -D__KERNEL__ -DMODULE -Wall -fno-builtins -O -c
This is not good either. You may try running a "make modules" in you
kernel source directory and see what CFLAGS are needed; for me this
looks for example like this:
CFLAGS="-D__KERNEL__ -I/work/TQM860L/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -I/work/TQM860L/arch/ppc -fsigned-char -msoft-float -pipe -ffixed-r2 -Wno-uninitialized -mmultiple -mstring -DMODULE"
Some of the options (like -msoft-float) are not optional at all ;-)
Best regards,
Wolfgang Denk
--
Software Engineering: Embedded and Realtime Systems, Embedded Linux
Phone: (+49)-8142-4596-87 Fax: (+49)-8142-4596-88 Email: wd@denx.de
If A equals success, then the formula is A = X + Y + Z. X is work. Y
is play. Z is keep your mouth shut. - Albert Einstein
** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
next prev parent reply other threads:[~2004-05-04 20:19 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-05-04 18:03 Simple module, but won't build Richard Danter
2004-05-04 19:10 ` Wolfgang Denk
2004-05-04 19:46 ` Richard Danter
2004-05-04 20:19 ` Wolfgang Denk [this message]
2004-05-04 21:15 ` Sam Ravnborg
2004-05-04 21:46 ` Wolfgang Denk
2004-05-04 23:50 ` Next steps Brian Hawley
2004-05-05 12:19 ` Bob White
2004-05-04 19:38 ` Simple module, but won't build Joshua Lamorie
-- strict thread matches above, loose matches on Subject: below --
2006-08-31 22:55 Steven Kaiser
2006-09-01 6:35 ` Josu Onandia
2006-09-06 19:29 Steven Kaiser
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20040504201923.46320C109F@atlas.denx.de \
--to=wd@denx.de \
--cc=linuxppc-embedded@lists.linuxppc.org \
--cc=richard.danter@ntlworld.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).