当前位置: 技术问答>linux和unix
Linux下无法make编译源文件[相应的库文件有],如何解决[如重新安装库文件或者其他,请写详细些,多谢。]
来源: 互联网 发布时间:2016-12-23
本文导语: 查看是否有相应的库文件: [root@localhost qudong]# ls /lib/modules/`uname -r`/build /lib/modules/2.6.18-238.el5xen/build ----说明存在相应的文件。 但是就是不能make编译:报错如下: [root@localhost qudong]# make KBUILD_NOPEDANTIC=1 make -...
查看是否有相应的库文件:
[root@localhost qudong]# ls /lib/modules/`uname -r`/build
/lib/modules/2.6.18-238.el5xen/build
----说明存在相应的文件。
但是就是不能make编译:报错如下:
[root@localhost qudong]# make
KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd`
make: *** /lib/modules/2.6.18-238.el5xen/build: 没有那个文件或目录。 停止。
make: *** [all] 错误 2
[root@localhost qudong]#
这个是我的源文件下的目录:
[root@localhost qudong]# ls
lib Makefile src
[root@localhost qudong]#
下边是包含的makefile文件:
-----------------------------------------------分割线
#
# Makefile fragment for Linux 2.6
# Broadcom 802.11abg Networking Device Driver
#
# Copyright (C) 2010, Broadcom Corporation
# All Rights Reserved.
#
# This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation;
# the contents of this file may not be disclosed to third parties, copied
# or duplicated in any form, in whole or in part, without the prior
# written permission of Broadcom Corporation.
#
# $Id: Makefile_kbuild_portsrc,v 1.6.54.1 2010/09/27 22:18:19 Exp $
obj-m += wl.o
wl-objs :=
wl-objs += src/shared/linux_osl.o
wl-objs += src/wl/sys/wl_linux.o
wl-objs += src/wl/sys/wl_iw.o
EXTRA_CFLAGS :=
EXTRA_CFLAGS += -I$(src)/src/include
EXTRA_CFLAGS += -I$(src)/src/wl/sys -I$(src)/src/wl/phy
#EXTRA_CFLAGS += -DBCMDBG_ASSERT
EXTRA_LDFLAGS := $(src)/lib/wlc_hybrid.o_shipped
all:
KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd`
clean:
KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd` clean
install:
install -D -m 755 wl.ko /lib/modules/`uname -r`/kernel/drivers/net/wireless/wl.ko
-----------------------------------------------分割线
我的操作系统版本:
[root@localhost qudong]# cat /proc/version
Linux version 2.6.18-238.el5xen (mockbuild@builder10.centos.org) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-48)) #1 SMP Thu Jan 13 16:41:45 EST 2011
[root@localhost qudong]#
[root@localhost qudong]# ls /lib/modules/`uname -r`/build
/lib/modules/2.6.18-238.el5xen/build
----说明存在相应的文件。
但是就是不能make编译:报错如下:
[root@localhost qudong]# make
KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd`
make: *** /lib/modules/2.6.18-238.el5xen/build: 没有那个文件或目录。 停止。
make: *** [all] 错误 2
[root@localhost qudong]#
这个是我的源文件下的目录:
[root@localhost qudong]# ls
lib Makefile src
[root@localhost qudong]#
下边是包含的makefile文件:
-----------------------------------------------分割线
#
# Makefile fragment for Linux 2.6
# Broadcom 802.11abg Networking Device Driver
#
# Copyright (C) 2010, Broadcom Corporation
# All Rights Reserved.
#
# This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation;
# the contents of this file may not be disclosed to third parties, copied
# or duplicated in any form, in whole or in part, without the prior
# written permission of Broadcom Corporation.
#
# $Id: Makefile_kbuild_portsrc,v 1.6.54.1 2010/09/27 22:18:19 Exp $
obj-m += wl.o
wl-objs :=
wl-objs += src/shared/linux_osl.o
wl-objs += src/wl/sys/wl_linux.o
wl-objs += src/wl/sys/wl_iw.o
EXTRA_CFLAGS :=
EXTRA_CFLAGS += -I$(src)/src/include
EXTRA_CFLAGS += -I$(src)/src/wl/sys -I$(src)/src/wl/phy
#EXTRA_CFLAGS += -DBCMDBG_ASSERT
EXTRA_LDFLAGS := $(src)/lib/wlc_hybrid.o_shipped
all:
KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd`
clean:
KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd` clean
install:
install -D -m 755 wl.ko /lib/modules/`uname -r`/kernel/drivers/net/wireless/wl.ko
-----------------------------------------------分割线
我的操作系统版本:
[root@localhost qudong]# cat /proc/version
Linux version 2.6.18-238.el5xen (mockbuild@builder10.centos.org) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-48)) #1 SMP Thu Jan 13 16:41:45 EST 2011
[root@localhost qudong]#
|
看下/lib/modules/2.6.18-238.el5xen/build这个目录在不在,
然后根据自己系统的情况,修改下Makefile中module的path
然后根据自己系统的情况,修改下Makefile中module的path
|
/lib/modules/2.6.18-238.el5xen/build
这个目录下面需要有kernel 的源代码
这个目录下面需要有kernel 的源代码