git源码编译
make -j <处理器核数的二倍>
② 我在github下载的源码,使用make编译出现错误
clone项目时因为网络原因没有下载完整
③ 自己可以编译安卓源码吗
用最新的Ubuntu 16.04,请首先确保自己已经安装了Git.没安装的同学可以通过以下命令进行安装:
sudo apt-get install git git config –global user.email “[email protected]” git config –global user.name “test”
其中[email protected]为你自己的邮箱.
简要说明
android源码编译的四个流程:1.源码下载;2.构建编译环境;3.编译源码;4运行.下文也将按照该流程讲述.
源码下载
由于某墙的原因,这里我们采用国内的镜像源进行下载.
目前,可用的镜像源一般是科大和清华的,具体使用差不多,这里我选择清华大学镜像进行说明.(参考:科大源,清华源)
repo工具下载及安装
通过执行以下命令实现repo工具的下载和安装
mkdir ~/binPATH=~/bin:$PATHcurl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repochmod a+x ~/bin/repo
补充说明
这里,我来简单的介绍下repo工具,我们知道AOSP项目由不同的子项目组成,为了方便进行管理,Google采用Git对AOSP项目进行多仓库管理.在聊repo工具之前,我先带你来聊聊多仓库项目:
我们有个非常庞大的项目Pre,该项目由很多个子项目R1,R2,...Rn等组成,为了方便管理和协同开发,我们为每个子项目创立自己的仓库,整个项目的结构如下:

这里写图片描述
执行完该命令后,再使用make命令继续编译.某些情况下,当你执行jack-admin kill-server时可能提示你命令不存在,此时去你去out/host/linux-x86/bin/目录下会发现不存在jack-admin文件.如果我是你,我就会重新repo sync下,然后从头来过.
错误三:使用emulator时,虚拟机停在黑屏界面,点击无任何响应.此时,可能是kerner内核问题,解决方法如下:
执行如下命令:
通过使用kernel-qemu-armv7内核 解决模拟器等待黑屏问题.而-partition-size 1024 则是解决警告: system partion siez adjusted to match image file (163 MB >66 MB)
如果你一开始编译的版本是aosp_arm-eng,使用上述命令仍然不能解决等待黑屏问题时,不妨编译aosp_arm64-eng试试.
结束吧
到现在为止,你已经了解了整个android编译的流程.除此之外,我也简单的说明android源码的多仓库管理机制.下面,不妨自己动手尝试一下.
④ mac os x git问题
mac osx下安张git是一件很简单的事,我们可以下载一个安装包直接以图形界面方式安装,也可以下载源代码到本地后再编译安张
1、图形安装。我们可以从http://code.google.com/p/git-osx-installer/下载最新的安装包后,双击弹出一个文件浏览窗口,然后双击窗口里带pkg后缀的文件就可以安装了。
2、编译安装。在安装前,应该确保系统中已经安装了Xcode,Xcode可以从 Mac OS X的系统安装盘里找到,如果没有系统盘,可以http://developer.apple.com下载。Git源码可以从http://kernel.org/pub/software/scm/git/获得。下面是编译安装的过程:
#设置环境变量 mate ~/.profile export PATH="/usr/local/bin:/usr/local/sbin:/usr/local/mysql/bin:$PATH" source ~/.profile
#看看设置后的PATH echo $PATH
#创建一个临时目录来存放git源码 mkdir ~/src cd ~/src
#下载git源码,我下载的版本是1.7.2 curl -O http://kernel.org/pub/software/scm/git/git-1.7.2.tar.bz2
#下载完后,解压、编译、安装 tar xzvf git-1.7.2.tar.bz2 cd git-1.7.2
./configure --prefix=/usr/local make sudo make install
等安装完成后,可以使用which git 和git --version命令检查安装是否成功,如果看到如下图的输出,安装就成功了
Git图形化客户端
Git的操作都可以在终端上使用命令来完成,但也不是所有人都喜欢打命令。http://code.google.com/p/git-osx-installer上也提供了一个Git的图形化客户端:OpenInGitGui,可以从这里获得,OpenInGitGui十分小巧,下载解压后也只有16K,OpenInGitGui不用安装,双击即可使用
⑤ linux系统git 怎么安装
方法/步骤
1
用git --version命令检查是否已经安装
2
在CentOS5的版本,由于yum源中没有git,所以需要预先安装一系列的依赖包。在CentOS6的yum源中已经有git的版本了,可以直接使用yum源进行安装。
3
yum -y install git
但是yum源中安装的git版本是1.7.1,Github等需要的Git版本最低都不能低于1.7.2 。所以我们一般不用上面的方法,而是下载git源码编译安装。
END
编译安装git
1
首先更新系统
yum -y update
更新完成之后有6.5变成6.7了
2
安装依赖的包
yum -y install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker
3
下载git源码并解压
$ wget https://github.com/git/git/archive/v2.3.0.zip
$ unzip v2.3.0.zip
$ cd git-2.3.0
4
编译安装:
将其安装在“/usr/local/git”目录下。
make prefix=/usr/local/git all
make prefix=/usr/local/git install
因为服务器时间不对编译的过程中报错如下图,使用ntpdate自动校正系统时间。报错“Writing perl.mak for Git make[2]: *** [perl.mak] Error 1”,请重启apache服务,service httpd restart。
5
编译完成之后使用git --version 查看git版本,居然还是1.7.1,这是因为它默认使用了"/usr/bin"下的git。
你可以用下面的命令查看git所在的路径:
$ whereis git
git: /usr/bin/git /usr/local/git /usr/share/man/man1/git.1.gz
6
我们要把编译安装的git路径放到环境变量里,让它替换"/usr/bin"下的git。为此我们可以修改“/etc/profile”文件(或者/etc/bashrc文件)。
vim /etc/profile
然后在文件的最后一行,添加下面的内容,然后保存退出。
export PATH=/usr/local/git/bin:$PATH
7
不想重启系统,使用source命令立即生效
source /etc/profile
8
然后再次使用git --version 查看git版本,发现输出2.3.0,表明安装成功。
⑥ 如何在 Linux 上安装 git 服务
1、yum方式安装
# yum -y install git
如果提示系统提示没有找到git包,可以采用下面的方式
2、下载Git源码包
官网:http://git-scm.com/
$ tar -xjvf git-1.7.4.1.tar.bz2
$ cd git-1.7.4.1/
$ make prefix=/usr/local all
$ make prefix=/usr/local install
⑦ 如何在Ubuntu 16.04安装的Git
最简单的方法git安装,并准备使用是使用Ubuntu的默认存储库。 这是最快的方法,但版本可能比最新版本旧。 如果你需要最新版本,请考虑以下的步骤来编译git从源代码。
您可以使用apt软件包管理工具来更新你的本地包索引。 之后,您可以下载并安装程序:
sudo apt-get update
sudo apt-get install git
这将下载并安装git为您的系统。
⑧ jenkins 构建git 项目,源码管理部分成功了,f可以正常下载代码,但是构
当时也是花费了不少时间来配置Jenkins自动打包的问题,觉得还是需要记录一下。
1.安装Jenkins,这个很简单,不需要多说。
2.下载Git Plugin,Gradle Plugin,Android Emulator Plugin(这个可以配置SDK路径,觉得这个插件挺好),
Email Extension Plugin 邮件提醒插件,自带的邮件提醒插件确实太弱。
3.配置,SDK路径,JDK路径,Git路径,Gradle路径。
配置git:
git config –global user.name “name”
git config –global user.email email
查看:
cat /root/.gitconfig
root是指当前的用户
生成公钥和私钥:
ssh-keygen -t rsa -C “email”
⑨ jenkins git+maven 编译怎么知道编译成功
1.通过Jenkins web页面添加Git plugin
Manage Jenkins->Manage Plugins->Available中选择Git Plugin安装,
注意要填写user name和 email地址,否则日后会碰到git tag的错误
2.在Jenkins使用的机器上创建Git用户所需要的公钥
具体步骤参考前面Git server文章
但是注意,要将最后生成的.ssh目录下的公钥和私钥文件复制到/var/lib/jenkins/.ssh目录下,否则git clone命令会报错
3.修改jenkins目录权限
chmod -R 777 /var/lib/jenkins
4.现在可以通过web页面创建一个项目Test,然后设置该项目使用Git作为版本管理。
并且设置repository路径,比如我的:git@S1:cml.git
5.在build选项的pom文件指定你需要执行的pom.xml路径
比如我的一个测试工程名叫client,是个maven工程,我设置为client/pom.xml
6.现在可以点击左侧的Build now进行测试
一切OK,则没有错误日志。在Build History中可以看到测试结果,有没有错误。
7.Email发送设置
在Manage Jenkins->Configure System->Email Notification中,设置SMTP发送的基本信息,点击Advanced,可以填写用户名和密码。还有一个测试按钮可以用来发送测试设置是否正确。
同时在Test项目中的Building Settings打勾选中E-mail
Notification,点击右边的问号,会出现帮助文档,说明在四种情况下会发送email,填写接受email的地址,然后故意将client代码
修改到不能编译通过。然后点击Build now按钮测试一下。果然收到email.
8.检查代码更新并编译
可以通过Poll SCM来设置定时检查编译功能
比如*/5 * * * * 就是每隔5分钟检查一次,如果git仓库中有更新,则执行build操作。
9.使用Maven加快下载速度
如我这篇文章所述,用可以避免下载过慢问题,也可以绕过公司内部外网限制问题。
Jenkins的.m2目录路径在:/var/lib/jenkins/.m2/
首先清空里面所有的jar包,然后创建settings.xml文件,并编辑内容如下:
源码打印?
<settings>
<mirrors>
<mirror>
<!--This sends everything else to /public -->
<id>nexus</id>
<mirrorOf>*</mirrorOf>
<url></url>
</mirror>
</mirrors>
<profiles>
<profile>
<id>nexus</id>
<!--Enable snapshots for the built in central repo to direct -->
<!--all requests to nexus via the mirror -->
<repositories>
<repository>
<id>central</id>
<url></url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>central</id>
<url></url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
</profiles>
<activeProfiles>
<!--make the profile active all the time -->
<activeProfile>nexus</activeProfile>
</activeProfiles>
</settings>
现在点击build now测试一下,打开console output,看看命令行输出结果,如果发现从S1下载jar包,就正确。和不用的比较了一下,节省了1分多钟.
⑩ 用git 下载的源代码(我看里面不是.java文件),怎么才能部署到 myeclipse运行呢 答对加分 !
不是.java文件是什么文件?.class的吗?
如果不是.java的想直接部署到myeclipse不太可能。
如果是.jar或者.class文件你可以通过一些工具(我用的是jd-gui.exe,这个工具可以直接双击.class或者jar文件看里面代码)把这些编译过的java文件再反编译回来
