Re: 11.1: linux/config.h und asm/semaphore.h nicht auffindbar

Ekkard Gerlach <[email protected]> Mon, 28 Jun 2010 09:42:36 +0200
Newsgroups gmane.linux.suse.programming
Organization private
Message-ID <[email protected]>
* Philipp Thomas schrieb:

> On Sun, 27 Jun 2010 18:51:23 +0200, David Haller <[email protected]>
> wrote:
> 

* David Haller schrieb: 
> ># cd /lib/modules/$(uname -r)/build
> ># make cloneconfig
> ># make modules_prepare
> >
> >Erst damit werden die gesuchten Header generiert.
 
rex4:/lib/modules/2.6.27.45-0.1-default/build # make cloneconfig
make -C /usr/src/linux-2.6.27.45-0.1 O=/usr/src/linux-2.6.27.45-0.1-obj/x86_64/default/. cloneconfig
  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/basic/docproc
  HOSTCC  scripts/basic/hash
  GEN     /usr/src/linux-2.6.27.45-0.1-obj/x86_64/default/Makefile
  HOSTCC  scripts/kconfig/conf.o
  HOSTCC  scripts/kconfig/kxgettext.o
  HOSTCC  scripts/kconfig/zconf.tab.o
  HOSTLD  scripts/kconfig/conf
Cloning configuration file /proc/config.gz

#
# configuration written to .config
#

rex4:/lib/modules/2.6.27.45-0.1-default/build # make modules_prepare
make -C /usr/src/linux-2.6.27.45-0.1 O=/usr/src/linux-2.6.27.45-0.1-obj/x86_64/default/. modules_prepare
  GEN     /usr/src/linux-2.6.27.45-0.1-obj/x86_64/default/Makefile
scripts/kconfig/conf -s arch/x86/Kconfig
  Using /usr/src/linux-2.6.27.45-0.1 as source for kernel
  /usr/src/linux-2.6.27.45-0.1 is not clean, please run 'make mrproper'
  in the '/usr/src/linux-2.6.27.45-0.1' directory.
make[2]: *** [prepare3] Error 1
make[1]: *** [sub-make] Error 2
make: *** [all] Error 2

ein make mrproper, dann cloneconfig, dann  modules_prepare  bringt nichts, es kommt immer 
wieder der gleiche Fehler. 

> Nein, auch damals galt, dass die gesuchten Header unter
> /usr/src/linux-obj/... zu finden sind.

gerlach@rex4:/usr/src/linux-obj> ls -lR
.:
insgesamt 4
drwxr-xr-x 2 root root 4096 12. Mär 12:13 x86_64

./x86_64:
insgesamt 0
lrwxrwxrwx 1 root root 42 12. Mär 12:13 debug -> ../../linux-2.6.27.45-0.1-obj/x86_64/debug
lrwxrwxrwx 1 root root 44 12. Mär 12:13 default -> ../../linux-2.6.27.45-0.1-obj/x86_64/default
lrwxrwxrwx 1 root root 40 12. Mär 12:13 ec2 -> ../../linux-2.6.27.45-0.1-obj/x86_64/ec2
lrwxrwxrwx 1 root root 42 12. Mär 12:13 trace -> ../../linux-2.6.27.45-0.1-obj/x86_64/trace
lrwxrwxrwx 1 root root 40 12. Mär 12:13 xen -> ../../linux-2.6.27.45-0.1-obj/x86_64/xen

gerlach@rex4:/usr/src/linux-obj> cd x86_64/../../linux-2.6.27.45-0.1-obj/x86_64/default
gerlach@rex4:/usr/src/linux-2.6.27.45-0.1-obj/x86_64/default> find -iname "config.h"
gerlach@rex4:/usr/src/linux-2.6.27.45-0.1-obj/x86_64/default> find -iname "asm"
gerlach@rex4:/usr/src/linux-2.6.27.45-0.1-obj/x86_64/default>



sind das die richtigen? 
rex4:/usr/src/linux-2.6.27.45-0.1-obj/x86_64 # find -iname "asm"
./xen/include/asm                                               
./xen/include2/asm                                              
./ec2/include/asm                                               
./ec2/include2/asm                                              
./trace/include/asm                                             
./trace/include2/asm                                            
./debug/include/asm                                             
./debug/include2/asm                                            
./default/include/asm                                           
./default/include2/asm                                          
rex4:/usr/src/linux-2.6.27.45-0.1-obj/x86_64 # cd ../../linux-2.6.27.45-0.1-obj/x86_64
rex4:/usr/src/linux-2.6.27.45-0.1-obj/x86_64 # find -iname "config.h"
./xen/include/config/i2o/config.h                                    
./xen/include/config/x86/find/smp/config.h                           
./trace/include/config/i2o/config.h                                  
./trace/include/config/x86/find/smp/config.h                         
./debug/include/config/i2o/config.h                                  
./debug/include/config/x86/find/smp/config.h                         
./default/include/config/i2o/config.h                                
./default/include/config/x86/find/smp/config.h                       

zumindest *vor* dem mrproper waren unter default/.... noch config.h und asm zu finden, 
jetzt sind die weg.




Hier mal das Makefile: 
=======================

ifeq ($(shell uname -r | cut -d . -f 1-2),2.4)
#################################### OPTIONS ##################################
# Change this to /usr/include if you get header file errors
INCLUDEDIR = /lib/modules/`uname -r`/build/include

ACFILE = $(INCLUDEDIR)/linux/autoconf.h

CFLAGS = -D__KERNEL__ -DMODULE -DOUTSIDE_KERNEL -O2 -Wall -Wstrict-prototypes \
        -fomit-frame-pointer -I$(INCLUDEDIR)

# Detect modversions support
ifneq ($(strip $(shell grep 'define CONFIG_MODVERSIONS 1' $(ACFILE))),)
CFLAGS += -DMODVERSIONS -include $(INCLUDEDIR)/linux/modversions.h
endif

# Detect extra required CFLAGS
EXTRA_CFLAGS := $(shell ./get_cflags.sh)
CFLAGS += $(EXTRA_CFLAGS)

CC = gcc
LD = ld
LD_RFLAG = -r

SEN_OBJS = ovcamchip_core.o ov6x20.o ov6x30.o ov7x10.o ov7x20.o ov76be.o
MODULES = ov511.o ovfx2.o ovcamchip.o saa7111-new.o tda7313.o

# Enable OV511 Decompression
CFLAGS += -DCONFIG_OV511_DECOMP
COMP_OBJS += ov511_decomp.o

# Enable OV518 Decompression
CFLAGS += -DCONFIG_OV518_DECOMP
COMP_OBJS += ov518_decomp.o

#################################### TARGETS ##################################

# tuner.o isn't in $(MODULES) since it would conflict with the kernel's tuner.o
all: $(MODULES) tuner.o

install: all
        ./do_install.sh $(MODULES)
[...]


Gruss
Ekkard
-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]