Ubuntu 14.04下创建Genymotion安卓虚拟机的步骤详解
前言
genymotion 来自于 androvm 这个开源项目,基于 x86 和 virtualbox,支持 opengl 加速,可以用于 mac/win/linux。
最近工作开发环境有windows切换到了ubuntu,以前在windows环境下使用genymotion搞android开发还蛮好用的。那么在ubuntu环境下桌面创建genymotion虚拟机呢,今天搞搞试试看~!~!
virtualbox
先安装虚拟机软件virtualbox,没有安装这个软件不能够使用genymotion软件。
sudo apt-get install virtualbox
genymotion
下载
先访问genymotion官网,想要下载必须先注册genymotion账号。
点击右上角的下载按钮,进入下载页面。genymotion有好多版本,有些时收费的,作为开发者我们使用最基础的版本就够用的(ps:免费)。选择get genymotion personal version,进入personal edit下载genymotion-2.8.1_x64.bin。
执行下边命令,生成名为genymotion的文件夹。
chmod +x [installerpath]/genymotion.bin [installerpath]/genymotion.bin
运行
进入genymotion文件夹后,我们可以看到名为genymotion的可运行程序,双击或者在命令行当中运行。
im@58user:/usr/lib/x86_64-linux-gnu$ sudo /home/im/program/genymotion/./genymotion logging activities to file: /home/im/.genymobile/genymotion.log logging activities to file: /home/im/.genymobile/genymotion.log logging activities to file: /home/im/.genymobile/genymotion/deployed/google nexus 5x - 6.0.0 - api 23 - 1080x1920/genymotion-player.log opengl connected to 192.168.56.101:25000 port 22468 will be used for opengl data connections
如果没有问题那么则会像windows环境下一样启动。
问题
自古好事多磨
问题1:
im@58user:/usr/lib/x86_64-linux-gnu$ sudo /home/im/program/genymotion/./genymotion /home/im/program/genymotion/./genymotion: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `cxxabi_1.3.8' not found (required by /home/im/program/genymotion/libqt5core.so.5) /home/im/program/genymotion/./genymotion: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `glibcxx_3.4.20' not found (required by /home/im/program/genymotion/libqt5webkit.so.5) /home/im/program/genymotion/./genymotion: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `cxxabi_1.3.8' not found (required by /home/im/program/genymotion/libicui18n.so.52) /home/im/program/genymotion/./genymotion: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `cxxabi_1.3.8' not found (required by /home/im/program/genymotion/libicuuc.so.52) /home/im/program/genymotion/./genymotion: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `glibcxx_3.4.20' not found (required by /home/im/program/genymotion/libqt5qml.so.5)
执行genymotion程序时缺少相应的文件,上网找答案,提示更新gcc为4.9
下边为网络上的解决办法
sudo add-apt-repository ppa:ubuntu-toolchain-r/test sudo apt-get update sudo apt-get install gcc-4.9 g++-4.9
然而在我的电脑环境中执行却没有办法更新gcc。
日志信息:
im@58user:/usr/lib/x86_64-linux-gnu$ sudo apt-get install gcc-4.9 g++-4.9 [sudo] password for im: 正在读取软件包列表... 完成 正在分析软件包的依赖关系树 正在读取状态信息... 完成 有一些软件包无法被安装。如果您用的是 unstable 发行版,这也许是 因为系统无法达到您要求的状态造成的。该版本中可能会有一些您需要的软件 包尚未被创建或是它们已被从新到(incoming)目录移出。 下列信息可能会对解决问题有所帮助: 下列软件包有未满足的依赖关系: g++-4.9:i386 : 依赖: gcc-4.9-base:i386 (= 4.9.4-2ubuntu1~14.04.1) 但是 4.9.3-0ubuntu4 正要被安装 依赖: libstdc++-4.9-dev:i386 (= 4.9.4-2ubuntu1~14.04.1) 但是它将不会被安装 依赖: libcloog-isl4:i386 (>= 0.17) 但是它将不会被安装 依赖: libmpc3:i386 但是它将不会被安装 依赖: libmpfr4:i386 (>= 3.1.3) 但是它将不会被安装 gcc-4.9:i386 : 依赖: cpp-4.9:i386 (= 4.9.4-2ubuntu1~14.04.1) 但是它将不会被安装 依赖: gcc-4.9-base:i386 (= 4.9.4-2ubuntu1~14.04.1) 但是 4.9.3-0ubuntu4 正要被安装 依赖: binutils:i386 (>= 2.24) 但是它将不会被安装 依赖: libgcc-4.9-dev:i386 (= 4.9.4-2ubuntu1~14.04.1) 但是它将不会被安装 依赖: libcloog-isl4:i386 (>= 0.17) 但是它将不会被安装 依赖: libmpc3:i386 但是它将不会被安装 依赖: libmpfr4:i386 (>= 3.1.3) 但是它将不会被安装 e: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。
好无奈,没有办法解决这个问题。
再才执行运行genymotion的命令
im@58user:/usr/lib/x86_64-linux-gnu$ sudo /home/im/program/genymotion/./genymotion
查看输出的日志,有这么一段关键的信息
version xxx not found``` ,查看了一下该路径下的文件: ``` im@58user:/usr/lib/x86_64-linux-gnu$ ls | grep "libstdc" libstdc++.so.6 libstdc++.so.6.0.19 im@58user:/usr/lib/x86_64-linux-gnu$ pwd /usr/lib/x86_64-linux-gnu
有libstdc++.so.6这个文件啊!!!
问题二:
要升级gcc(ps:升级失败),会不会gcc4.9比gcc4.8的libstdc++.so.6文件版本高。先下载libstdc++看看。
发现为.deb非常兴奋,是不是直接执行安装就行啦。结果依旧提示“依赖: gcc-4.9-base:i386 ”。
思考思考,先解压看看libstdc++6-4.9-dbg_4.9.2-10_amd64.deb文件里面都有什么:
libstdc++6-4.9-dbg_4.9.2-10_amd64.deb.png
找到libstdc++.so.6.0.20并提取出来并修改为libstdc++.so.6,再与 /usr/lib/x86_64-linux-gnu 目录下的libstdc++.so.6替换。再次运行genymotion,成功启动~!~!
解决一个问题的方法有好多种,多尝试,总能找到答案。
总结
以上就是关于ubuntu14.04创建genymotion虚拟机的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。