linux编译

Android编译环境折腾记

六月ゝ 毕业季﹏ 提交于 2019-11-29 03:59:33
一、Ubuntu编译Android4.4.4 1.平台:realtek RTD2984(Android4.4.4)   第一次安装了ubuntu14.04.5,官网下载的iso,官网下的jar,编译android4.x需要安装jdk6,更高的版本会有问题,baidu到很多搭建环境的步骤,这个不多说,在win7下使用EasyBCD引导安装的ubuntu,1TB硬盘果断装了双系统,事实证明没删掉win7是个多么明智的决定,在jdk方面,android4.4比4.0要多配置一个javap,其他都一样 1 update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk1.6.0_43/bin/java" 1 2 update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk1.6.0_43/bin/javac" 1 3 update-alternatives --install "/usr/bin/javadoc" "javadoc" "/usr/lib/jvm/jdk1.6.0_43/bin/javadoc" 1 4 update-alternatives --install "/usr/lib/mozilla/plugins

004 gcc 编译 C-C++ 默认使用哪个标准

两盒软妹~` 提交于 2019-11-29 02:42:10
0. 前言 我挺久没碰 C,不想就这么忘了,最近重温了一些相关知识 1. C 语言的几种“方言” 简单地说,有这么几种常见的 年份 名称 1983 ANSI C 1987 C87 1999 C99 2011 C11 C 语言的全国二级等级考试采用的标准是 ANSI C (如果没变的话) 2. gcc 编译 C 默认使用哪个标准 查了一些资料,说法不一,大概因为大家使用的是不同版本的 gcc 2.1 我使用的 gcc 版本 $ gcc -v ... ... Target: x86_64-w64-mingw32 ... ... Thread model: win32 gcc version 8.1.0 (x86_64-win32-seh-rev0, Built by MinGW-W64 project) 2.2 网上的一种方法 我想到之前装过 Cygwin ,就打开试了这条代码 $ gcc -posix -E -dM - </dev/null ... ... #define __STDC_VERSION__ 201112L ... ... 结果很长,有用的是这句,但只能看出来是 2011 的版本 2.3 想到了一个 Linux 的命令:man 同样是在 Win10 的环境打开 Cygwin $ man gcc ... gnu11 gnu1x GNU dialect of ISO C11

【C/C++】复合类型(自定义类型)

杀马特。学长 韩版系。学妹 提交于 2019-11-29 00:50:57
gcc编译器 gcc(GNU Compiler Collection,GNU 编译器套件),是由 GNU 开发的编程语言编译器。gcc原本作为GNU操作系统的官方编译器,现已被大多数类Unix操作系统(如Linux、BSD、Mac OS X等)采纳为标准的编译器,gcc同样适用于微软的Windows。 gcc最初用于编译C语言,随着项目的发展gcc已经成为了能够编译C、C++、Java、Ada、fortran、Object C、Object C++、Go语言的编译器大家族。 编译命令格式: gcc [-option1] ... <filename> g++ [-option1] ... <filename> 1 2 命令、选项和源文件之间使用空格分隔 一行命令中可以有零个、一个或多个选项 文件名可以包含文件的绝对路径,也可以使用相对路径 如果命令中不包含输出可执行文件的文件名,可执行文件的文件名会自动生成一个默认名,Linux平台为a.out,Windows平台为a.exe gcc、g++编译常用选项说明: 选项 含义 -o file 指定生成的输出文件名为file -E 只进行预处理 -S(大写) 只进行预处理和编译 -c(小写) 只进行预处理、编译和汇编 C语言是不跨平台的,用Java用习惯的我突然回到C,有点不适应,用SpringBoot完成的Java项目,打成jar包

在Ubuntu 18.04编译Android 8.1

心已入冬 提交于 2019-11-28 20:12:30
感谢博主 :https://blog.csdn.net/qq_42889470/article/details/81463559 硬件要求: 越高越好,不建议在虚拟机内编译 内存越大越好,推荐200G,在这里就不赘述怎么安装ubuntu双系统了,网上教程很多,有时间写一教程出来 传送门 推文: 传送门 安装并配置git sudo apt-get install git -y git config --global user.name "your name" git config --global user.email "your@example.com" 安装repo sudo apt install repo -y sudo apt-get install curl -y 下载repo工具 mkdir ~/bin PATH=~/bin:$PATH curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo chmod a+x ~/bin/repo 若下载不了,用下面的方法(推荐) git clone https://mirrors.tuna.tsinghua.edu.cn/git/git-repo cp ~/git-repo/repo ~/bin/ chmod a+x ~/bin/repo

Visual Studio Code 如何编写运行 C、C++ 程序?

独自空忆成欢 提交于 2019-11-28 18:45:36
0. 前言 本文面向初学者,但是 不适合还在学写Hello World级别的初学者 。阅读本文能在一定程度上了解程序编译的知识,以及使用VS Code的知识。 本文大部分内容都可从VS Code官方文档: C++ programming with Visual Studio Code 以及各个扩展的文档中获得,并且他们还会进行更新(本文也进行过几次重大更新)。如果你想更深入了解,可以去看。其实本文基本上是由不断地尝试得出来的,如果有错误可以指出。 我的环境:64位Windows 10。32位Win在某些地方需要修改,不过本文没有提;Linux下也有许多不同,仅供参考。 最终效果: 实时显示编译阶段的错误 、格式化代码、进行单文件的编译与调试。 1. 环境的准备 VSC的官网、下载、安装,我就不多说了。VSC只是一个 编辑器 (editor),不是IDE(集成开发环境),不含 编译器 (compiler)和许多其它功能,所以编译器要自己装好。 其实MinGW和MinGW-w64只是名字像,它们是两个不同的项目。为了方便,本文中的MinGW指的其实都是MinGW-w64。MinGW本身已经很久没有更新了,故 不推荐 。下载以下两个程序(都要): LLVM Download Page 在此页面下载Clang。选 Pre-Built Binaries 中的 Windows (64-bit)

centos7安装python3 以及tab补全功能

我的未来我决定 提交于 2019-11-28 18:05:25
1.安装python3 1.1下载python源码包 网址:https://www.python.org/downloads/release/python-362/ 下载地址:https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz 1.1.1 安装python前的库环境,非常重要 yum install gcc patch libffi-devel python-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel -y 1.2下载,解压安装源码包 1、configure 这一步一般用来生成 Makefile,为下一步的编译做准备,你可以通过在 configure 后加上参数来对安装进行控制,比如代码: ./configure --prefix=/usr 上面的意思是将该软件安装在 /usr 下面,执行文件就会安装在 /usr/bin (而不是默认的 /usr/local/bin),资源文件就会安装在 /usr/share(而不是默认的/usr/local/share)。

解决ERROR: No toolchains found in the NDK toolchains folder for ABI with prefix: mipsel-linux-android

左心房为你撑大大i 提交于 2019-11-28 17:52:49
在下载XposedBridge源码编译的时候出现 No toolchains found in the NDK toolchains folder for ABI with prefix: mipsel-linux-android 错误 查找资料发现不少伙伴也遇到了,但是解决的办法有多种,这里略作总结 首先产生这个问题的原因是因为官方不推荐使用 mipsel-linux-android 了,所以gradle没有支持,但是旧版本的项目编译无法通过 解决方式1(不推荐): 亲测无用,因为官方新版的ndk已经没有 mipsel 了,不死心的可以在这个地址下载(需要访问google) ndk下载地址 下载自己需要的版本解压 然后将 mips64el-linux-android 放到如下目录 这个还是有点麻烦的,并且不适用,因为需要访问google的Android官网并且下载的东西有点大(不到1G),从这里也可以看出SDKManager下载的东西并不全 解决方式2: google 不推荐使用 mipsel ,但是很多库还是检测它是否存在,如果不存在就报错,其实可以创建空文件夹或者 ln -s arm-linux-androideabi-4.9 mipsel-linux-android 其实都一样占个位置而已防止检测不通过编译失败, 这种方式也不推荐,因为官方都放弃了,还用它干什么呢

用BusyBox制作Linux最小系统

柔情痞子 提交于 2019-11-28 17:52:07
1、下载busybox-1.30.1 地址:https://busybox.net/downloads/busybox-1.30.1.tar.bz2 2、解压:tar xvf busybox-1.30.1.tar.bz2 3、安装交叉编译器 4、安装libncurses5-dev:sudo apt-get install libncurses5-dev 5、配置busybox:make menuconfig   使用默认的配置项就可以,下面是一些重要的配置项说明:   Setting->Build Options->Build BusyBox as a static binary (no shared libs) 是否使用静态编译,如果不是静态编译,则busybox运行时还需要复制几个动态库文件,否则不能运行   settings->build options->Cross compiler prefix设置交叉编译前缀(如果设了环境变量CROSS_COMPILE或make指定了则这里不需要设置)   settings->installation options->Destination path for 'make install'设置安装目录,默认是./_install   Linux System Utilities->mdev支持mdev 6、编译   make CROSS

漫话:如何给女朋友解释鸿蒙OS是怎样实现跨平台的?

两盒软妹~` 提交于 2019-11-28 17:14:10
周末在家休息,女朋友在刷朋友圈,突然她问我: 鸿蒙OS回顾 2019年8月9日华为开发者大会上,华为消费者业务CEO余承东正式宣布发布自有操作系统鸿蒙,内核为Linux内核、鸿蒙微内核和LiteOS。未来将摆脱Linux内核和LiteOS,只有鸿蒙微内核。 鸿蒙(英语:Harmony OS,开发代号Ark)是华为自2012年开发的一款可能兼容Android app的跨平台操作系统。 图:鸿蒙OS的四大技术特性 1.分布式架构首次用于终端OS,实现跨终端无缝协同体验 2. 确定时延引擎和高性能IPC技术实现系统天生流畅 3. 基于微内核架构重塑终端设备可信安全 4. 通过统一IDE支撑一次开发,多端部署,实现跨终端生态共享 什么是跨平台 在以前, 平台 ≈ 操作系统 。所以,传统意义上的跨平台即不依赖于操作系统,也不依赖硬件环境。一个操作系统下开发的应用,放到另一个操作系统下依然可以运行。 但是随着科技的发展, 平台 ≈ 操作系统 已经不成立了,就像华为推出的鸿蒙OS,他可以支持到多种多样的设备,如手机、手表、电脑、汽车、智能家居设备等。 所以,今天我们谈的跨平台,指的是跨设备。即 平台 ≈ 设备 所以,华为希望鸿蒙OS可以运行在各种各样的设备上,所以,鸿蒙OS必然需要具备跨平台的能力。 而且,鸿蒙想要做的不仅仅是操作系统可以跨平台,更重要的是要让用户和开发者真正的感受到跨平台。

Rust 入门 (一)

旧街凉风 提交于 2019-11-28 17:03:19
Rust 语言的介绍、特性什么的都不说了,如有需要,请自行了解。这里我们直接进去正题。 一、开发环境 mac或linux系统,在命令行安装 curl https://sh.rustup.rs -sSf | sh 安装过程中会询问安装方式,我直接选择的第一种默认方式,第二种是自定义,第三种是取消安装 然后会发现在自己家目录下有一个 .cargo 的隐藏文件夹,里面有四个文件 bin env git registry 。 1. env 文件设置了 Rust 的环境变量, 2. bin 文件夹下是相关的工具 cargo cargo-miri rust-gdb rustdoc cargo-clippy clippy-driver rust-lldb rustfmt cargo-fmt rls rustc rustup 。 更新到最新版本(rust会6个星期更新一个版本) rustup upddate 查看版本 rustc --version cargo --version 卸载 rustup self uninstall 在 Windows 系统上就不说了,直接下载 Rust安装包rustup-init.exe 安装即可。 tips: 如果想查看文档,可以使用如下命令: rustup doc 二、Hello World 学习语言的老规矩,二话不多说,先写一个 Hello World 。