天天看点

ubuntu常用开发配置

配置开发环境

  1. 更新软件源以确保安装到的软件是最适合当前系统的版本(必须):
sudo apt-get update          
           
  1. 安装和配置代码管理工具 git,记得把下面命令行中的名字和邮件替换成自己的(必须):
sudo add-apt-repository ppa:git-core/ppa                            
    sudo apt-get update                            
    sudo apt-get install git                            
    git config --global user.email "[email protected]"                            
    git config --global user.name "Your Name"            
           
  1. 安装git lfs手顺
git config --global ssh.variant ssh                            
    curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | sudo bash                            
    sudo apt-get install git-lfs                            
    cd <任意git仓库>                            
    git lfs install      
           
  1. 安装 cmake (必须):
sudo apt-get install cmake       
           
  1. 安装 make 3.8.1 (Ubuntu 16.04 LTS 或更新版本:必须):
wget "http://ftp.gnu.org/gnu/make/make-3.81.tar.bz2"                            
    tar xjf make-3.81.tar.bz2                            
    cd make                            
    ./configure                            
    sudo make install        
           
  1. 安装和配置 ccache(可选:使用 ccache 会增加第一次编译的时间,但是可以有效的减少后续编译的时间):

    安装

sudo apt-get install ccache                            
    配置,在~/.bashrc中添加下列的行                            
    export CCACHE="ccache"                            
    export CCACHE_BASEDIR="/"                            
    export CCACHE_COMPILERCHECK="content"                            
    export CCACHE_CPP2="true"                            
    export CCACHE_SLOPPINESS="time_macros,include_file_mtime,file_macro"                   
           
  1. 安装 JAVA 6,如编译过程中出现缺少 Java6 的错误,请安装JDK(可选):
sudo add-apt-repository ppa:webupd8team/java                            
    sudo apt-get update                            
    sudo update-java-alternatives -s java-6-oracle    
           

开发环境配置(Ubuntu 18.04 LTS 专用)

9. 安装 32 位 Native 工具链(必须)

sudo apt-get install g++-4.8 lib32stdc++-4.8-dev g++-i686-linux-gnu           
           
  1. 安装其他编译工具和依赖库 (必须)
sudo apt-get install bison zlib1g-dev:i386 python-pil python-lxml python-m2crypto  
           
  1. 安装 LXC 3.0 依赖库 (启动模拟器必须)
sudo apt-get install lxc libelf-dev              
           
  1. 安装模拟器 (QEMU - x86/arm) 依赖库(模拟器版必须)
sudo apt-get install libglvnd-dev:i386      
           

开发环境配置(Ubuntu 14.04/16.04 LTS 专用)

1.安装gcc4.8&g++4.8

sudo apt-get install gcc-4.8 g++-4.8 g++-4.8-multilib  g++-multilib -y                            
   sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 40                            
   sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 40                            
   #有多个gcc/g++时切换版本:                            
   sudo update-alternatives --config gcc                            
   sudo update-alternatives --config g++       
           

2.必备库:

sudo apt-get install bison zlib1g-dev zlib1g-dev:i386 doxygen libxext-dev libpulse-dev libasound2-dev libesd0-dev git-core gnupg flex gperf build-essential zip curl libc6-dev lib32ncurses5-dev x11proto-core-dev libx11-dev lib32readline-gplv2-dev lib32z1-dev libgl1-mesa-dev:i386 g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc libpango1.0-dev ccache libxcursor-dev libgstreamer0.10-dev python-m2crypto python-lxml libx11-dev:i386 dpkg-dev  
           

3.开发包:

sudo apt-get install libpulse-dev libdirectfb-dev libpango1.0-dev libdbus-1-dev libasound2-dev libesd0-dev libncurses5-dev libicu-dev libxml2-dev libsqlite3-dev libegl1-mesa-dev libgles2-mesa-dev libevent-dev libxcursor-dev libgstreamer0.10-dev gstreamer0.10-plugins-good gstreamer0.10-plugins-ugly gstreamer0.10-plugins-bad  gstreamer0.10-fluendo-mp3 pyside-tools python-pygments python-yaml libgif-dev imagemagick xvfb   
           

4.开发工具

sudo apt-get install ssh vim cmake ccache xrdp gitk meld bison dos2unix subversion             
           

xc模拟器可能出现的错误

1.若32位兼容包(libx11-dev:i386等)无法安

可能是因为64位系统尚未开启32位支持:

sudo dpkg --add-architecture i386                            
   sudo apt-get update                            
   sudo apt-get dist-upgrade                            
           

若编译时出现 /usr/bin/ld: cannot find -l*** 错误可尝试安装 lib***或lib***-dev或lib***-dev:i386

例:出现 /usr/bin/ld: cannot find -lX11 则需要安装libx11-dev:i386

另:与 /usr/bin/ld: cannot find -lgl 错误相关的库有libgl1-mesa-dev,libegl1-mesa-dev,libgles2-mesa-dev及他们的32位兼容版本(64位与32位互斥),需根据出错的具体文件确定需要安装的库及版本。

2.insmod时出现 ERROR:Required key not available

原因是Ubuntu的内核使用EFI_SECURE_BOOT_SIG_ENFORCE的内核配置,这样会阻止内核载入第三方模块。

sudo apt install mokutil

sudo mokutil --disable-validation

执行后,终端会让你设置密码(之后要用), 设置完密码后,重启电脑,会出现蓝屏,按下任意键进入选择界面,选项如下:

- Continue boot

- Change Secure Boot state

- Enroll key from disk

- Enroll hash from disk

选择第二项。

输入你设置的密码,注意系统可能并不是让你输入完整的密码,比如Enter password character 3,意思是输入密码的第3位。

进入Disable Secure Boot选择界面,选择 yes(如果直接按下Enter,只能从头再来)。

下个界面又回到最开始的界面,选择reboot。

配置Git

1.管理工具

sudo add-apt-repository ppa:git-core/ppa
sudo apt-get update
sudo apt-get install git
git config --global user.email "[email protected]"
git config --global user.name "Your Name"
           

2.安装git lfs手顺

git config --global ssh.variant ssh
curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | sudo bash
sudo apt-get install git-lfs
cd <任意git仓库>
git lfs install
           

3.生成ssh key

ssh-keygen -t rsa
           

4.配置ssh默认用户名

一般就是登录igerrit的用户名,配置方法如下:

  1. 在本地的.ssh文件夹下新建config文件
  2. 文件中写入“user your_name”并保存

5.添加ssh-key到服务器

点击网页右上角登录名,在弹出的页面中点击Settings

点击左侧的SSH Public Keys,进入用户ssh key配置页面

在Add SSH Public Key下面空白的编辑区内中拷贝本机的ssh public key(默认是 ~/.ssh/id_rsa.pub)中的内容,点击输入框下的Add按钮。

请不要拷贝最后[email protected]或是类似其他的用户名,只拷贝之前的内容即可

6.ssh测试

ssh -p 29418 igerrit.storm
           

配置repo

下载repo
sudo cp repo /usr/bin
sudo chmod a+x /usr/bin/repo
           

配置Java

安装java8

1、sudo add-apt-repository ppa:openjdk-r/ppa
2、sudo apt-get update
3、sudo apt-get install openjdk-8-jdk
4、执行:sudo update-alternatives –config java,选择java的版本
5、执行:sudo update-alternatives –config javac,选择javac的版本