Mark, Don't include user header files in kernel modules. You cannot call C library functions from inside the Linux kernel. The Linux kernel does not link the C library. There is a good O'Reilly book (the Horse book) on writing device drivers.
--brian On Fri, 02 Apr 2004, Mark Chang wrote: > OK, success. I got my stream module to compile and > link correctly. Thanks to the sample files. > But now my question is (and I'm probably misinformed) > can I do a insmod on my new driver.o? > I tried to but it complained about > wrong kernel versions - which is not LiS problem. > But before I continue, I know the docs don't even say > anything about insmod, but can I do that? > Mark > > > --- Mark Chang <[EMAIL PROTECTED]> wrote: > > You know guys, I didn't see the sample files in > > the driver/str/ folder. > > So let me check on that first before you guys answer > > me back. I want to 'learn' through this. > > Thanks, > > Makr > > > > --- Mark Chang <[EMAIL PROTECTED]> wrote: > > > This is my header file that I'm having redef > > > problems > > > with. It is screwed up and I don't know what is > > > wrong. > > > > > > #include <stdio.h> > > > #include <stdlib.h> > > > #include <fcntl.h> > > > #include <unistd.h> > > > #include <errno.h> > > > #include <signal.h> > > > #include <linux/ioctl.h> > > > //#include <poll.h> > > > #include <linux/poll.h> > > > #include <pthread.h> > > > #include <sys/queue.h> > > > //#include <string.h> > > > #include <sys/time.h> > > > #include <sys/ioctl.h> > > > #include <syslog.h> > > > #include <semaphore.h> > > > // LiS lib > > > > > > #include <linux/config.h> > > > #include <linux/version.h> > > > #ifdef CONFIG_MODVERSIONS > > > #include <linux/modversions.h> > > > #endif > > > #include <linux/module.h> > > > > > > > > > #include <sys/stream.h> > > > #include <sys/stropts.h> > > > #include <sys/osif.h> > > > > > > here is my make file > > > CC=gcc > > > EXE=wp > > > INCLUDE_DIR=-I /home/changm/scc-linux \ > > > -I /usr/src/linux-2.4/include \ > > > -I /usr/src/LiS/include > > > > > > CDEBUG= -Wall -O2 -DDEBUG1 -D__KERNEL__ -DMODULE > > > -DLINUX > > > CFLAGS += $(CDEBUG) $(INCLUDE_DIR) > > > LDFLAGS += -m elf_i386 > > > > > > OFILES= wp.o timers.o bitfield.o format.o > > wp_word.o > > > crc.o ldu.o > > > # > > > .DEFAULT: > > > $(EXE): $(OFILES) > > > $(CC) $(LDFLAGS) -o $@ $^ -lpthread -lLiS > > > clean: > > > $(RM) *.o $(EXE) > > > > > > > > > __________________________________ > > > Do you Yahoo!? > > > Yahoo! Small Business $15K Web Design Giveaway > > > http://promotions.yahoo.com/design_giveaway/ > > > _______________________________________________ > > > Linux-streams mailing list > > > [EMAIL PROTECTED] > > > > > > http://gsyc.escet.urjc.es/mailman/listinfo/linux-streams > > > > > > __________________________________ > > Do you Yahoo!? > > Yahoo! Small Business $15K Web Design Giveaway > > http://promotions.yahoo.com/design_giveaway/ > > _______________________________________________ > > Linux-streams mailing list > > [EMAIL PROTECTED] > > > http://gsyc.escet.urjc.es/mailman/listinfo/linux-streams > > > __________________________________ > Do you Yahoo!? > Yahoo! Small Business $15K Web Design Giveaway > http://promotions.yahoo.com/design_giveaway/ > _______________________________________________ > Linux-streams mailing list > [EMAIL PROTECTED] > http://gsyc.escet.urjc.es/mailman/listinfo/linux-streams -- Brian F. G. Bidulock � The reasonable man adapts himself to the � [EMAIL PROTECTED] � world; the unreasonable one persists in � http://www.openss7.org/ � trying to adapt the world to himself. � � Therefore all progress depends on the � � unreasonable man. -- George Bernard Shaw � _______________________________________________ Linux-streams mailing list [EMAIL PROTECTED] http://gsyc.escet.urjc.es/mailman/listinfo/linux-streams
