ubuntu 模块编译,ubuntu编程环境搭建

各位老铁们,大家好,今天由我来为大家分享ubuntu 模块编译,以及ubuntu编程环境搭建的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!

如何查看ubuntu下显卡驱动是否已经成功安装

下载驱动百度搜索英伟达官网,在官网中下载符合你显卡的驱动包(Linux版)。删除原驱动包终端输入命令:sudoapt-get--purgeremovenvidia-glx-new然后删除/lib/linux-restricted-modules/2.6.22-14-generic/文件夹下面带有nvidia字样的内容。再删除/etc/init.d/nvidia-glx和/etc/init.d/nvidia-kernel输入命令sudoapt-getinstallbuild-essentialpkg-configxserver-xorg-devlinux-headers-'uname-r'备份sudocp/etc/default/linux-restricted-modules-common\etc/default/linux-restricted-modules-common.backupsudocp/etc/X11/xorg.conf/etc/X11/xorg.conf.backup禁止系统使用默认的驱动sudogedit/etc/default/linux-restricted-modules-common在最后的双引号中添加nvnvidia_new,即把文件中的“”,改成“nvnvidia_new”如果前面第二步删除完整了其实也可以不用执行这一步。停止GDM进程sudo/etc/init.d/gdmstop按Ctrl+Alt+F1,登录后进入下一步。进入下好的驱动所在目录(用ls命令确认文件在不在)sudoshNVIDIA-Linux-x86-100.14.19-pkg1.run安装过程中,如果提示有旧驱动,询问是否删除旧驱动,选Yes;如果提示缺少某某模块(modules),询问是否上网下载,选no;如果提示编译模块,询问是否进行编译,选ok;如果提示将要修改Xorg.conf,询问是否允许,选Yes;接下来就是等待安装完成。安装完成就回到终端,重启GDMsudo/etc/init.d/gdmrestart好了,当看到NV的logo后,安装成功。如果实在不想看NVIDIA的LOGO,可以修改/etc/X11/xorg.conf在Section"Device"中添加Option"NoLogo""True"

Linux下内核文件drivers/usb/serial/option.c,Ubuntu中在哪

两种方法:

1,直接添加进内核。

a,比如进入drivers/char/目录,把xxx.c文件拷贝到该目录

b,修改drivers/char/Kconfig文件,自定义仿照其他选项,添加自己的选项XXX。

c,修改drivers/char/Makefile文件,添加obj-$(CONFIG_XXX)+= xxx.o

d,进入内核根目录,make menuconfig,进入device drivers->character devices在这里面找到XXX选项,配置成“M”,也就是模块编译,会生成xxx.ko

2,随便建一个目录,写Makefile,这个Makefile里面,要指定内核源码根目录,并调用内核源码的Makefile,来编译当前目录的文件,类似一下格式,可在网上找一个Makefile来修改:

CFILES= xxx.c

DRIVER_NAME= xxxx

KSRC:=/home/linux/linux-2.6.xxx

TARGET=$(DRIVER_NAME).ko

obj-m+=$(DRIVER_NAME).o

$(DRIVER_NAME)-objs:=$(CFILES:.c=.o)

default:

$(MAKE)-C$(KSRC) SUBDIRS=$(shell pwd) modules

如何单独编译Android源码中的模块

123456789101112131415161718192021第一次下载好Android源代码工程后,我们通常是在Android源代码工程目录下执行make命令,经过漫长的等待之后,就可以得到Android系统镜像system.img了。以后如果我们修改了Android源代码中的某个模块或者在Android源代码工程新增一个自己的模块,是不是还是执行make命令呢?答案是否定的,Google为我们准备了另外的命令来支持编译单独的模块,以及重新打包system.img的命令。在继续学习Android源代码之前,就让我们先来看看这个命令吧。

一.首先在Android源代码目录下的build目录下,有个脚本文件envsetup.sh,执行这个脚本文件后,就可以获得一些有用的工具: USER-NAME@MACHINE-NAME:~/Android$../build/envsetup.sh注意,这是一个source命令,执行之后,就会有一些额外的命令可以使用:- croot: Changes directory to the top of the tree.- m: Makes from the top of the tree.- mm: Builds all of the modules in the current directory.- mmm: Builds all of the modules in the supplied directories.- cgrep: Greps on all local C/C++ files.- jgrep: Greps on all local Java files.- resgrep: Greps on all local res/*.xml files.- godir: Go to the directory containing a file.这些命令的具体用法,可以在命令的后面加-help来查看,这里我们只关注mmm命令,也就是可以用它来编译指定目录的所有模块,通常这个目录只包含一个模块。

二.使用mmm命令来编译指定的模块,例如Email应用程序: USER-NAME@MACHINE-NAME:~/Android$ mmm packages/apps/Email/编译完成之后,就可以在out/target/product/generic/system/app目录下看到Email.apk文件了。Android系统自带的App都放在这具目录下。另外,Android系统的一些可执行文件,例如C编译的可执行文件,放在out/target/product/generic/system/bin目录下,动态链接库文件放在out/target/product/generic/system/lib目录下,out/target/product/generic/system/lib/hw目录存放的是硬件抽象层(HAL)接口文件。

三.编译好模块后,还要重新打包一下system.img文件,这样我们把system.img运行在模拟器上时,就可以看到我们的程序了。 USER-NAME@MACHINE-NAME:~/Android$ make snod

四.参照Ubuntu上下载、编译和安装Android最新源代码一文介绍的方法运行模拟器: USER-NAME@MACHINE-NAME:~/Android$ emulator这样一切就搞定了。

阅读剩余
THE END