最近在学习如何将Unity的应用打包到Linux系统上。本人Linux新手,在网上找了很多资料,都没有完整的步骤,最后决定将我Linux环境配置的步骤记录下来。

第一步:安装Linux虚拟机

这个网上都有,就不多赘述了,本文安装的是Redhat 6 的系统。可参考https://blog.csdn.net/youran02100210/article/details/81318247

第二步:Unity3d打包
选择Linux平台并打包。

 将Unity3d打包的xxx.x86_64或xxx.x86文件复制到Linux虚拟机内。注意将下面两个文件都copy过去。

 

第三步:Linux环境配置
本人最初不知还要安装什么配置文件,因此可使用终端直接运行打包文件:

打开终端输入命令尝试运行:

./xxx.x86_64

出现下列错误:

"/usr/lib64/libc.so.6: version 'GLIBC_2.15' not found"

"/usr/lib64/libc.so.6: version 'GLIBC_2.14' not found"

"/usr/lib64/libc.so.6: version 'GLIBC_2.13' not found"

/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found 

发现可能是没有更新GLIBC 和GLIBCXX文件。在终端输入下面命令查询GLBC和GLIBCXX版本:

strings /lib64/libc.so.6 |grep GLIBC
strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX

若没有需要的版本则需要更新。

参考https://www.cnblogs.com/jim-hwg/p/4826603.html这个大佬讲得很详细,这里就不赘述了。

安装GCC.

参考https://blog.csdn.net/cffishappy/article/details/80182935

如果在configure 或 make install 过程中出现

configure: error: C++ compiler missing or inoperational
说明没有安装gcc-c++。可通过yum install gcc-c++进行c++的安装,若出现下列错误。便需要换源。

 因为红帽软件源需要注册,因此这里将源换为网易镜像的centos yum。一次输入下列命令:

rpm -aq | grep yum | xargs rpm -e –nodeps 

wget http://mirrors.163.com/centos/6/os/x86_64/Packages/python-urlgrabber-3.9.1-11.el6.noarch.rpm 

wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.30-41.el6.noarch.rpm

wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-3.2.29-81.el6.centos.noarch.rpm

wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-updateonboot-1.1.30-41.el6.noarch.rpm

wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-metadata-parser-1.1.2-16.el6.x86_64.rpm

wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-utils-1.1.30-41.el6.noarch.rpm

rpm -Uvh python-urlgrabber-3.9.1-11.el6.noarch.rpm

rpm -ivh yum-*

cd /etc/yum.repos.d/ 

wget  http://mirrors.163.com/.help/CentOS6-Base-163.repo

vi CentOS6-Base-163.repo

打开CentOS6-Base-163.repo文件后,在esc模式输入:

:%s/$releasever/6/g    #将releasever替换为6.

在esc模式输入:w保存。退出文件后输入:

yum install gcc-c++

完成c++的配置。

回到gcc的build文件夹下,输入:

make

make install

此步骤会用时较久请耐心等待

安装完毕后输入reboot重启机器

现在通过strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX命令查询,发现依然没有所需版本,是因为没有改变libstdc++.so.6的链接指向.

通过下列命令,将目标文件copy到usr/lib64文件夹中,取消libstdc++.so.6以前的软连接并将新版本与其连接上。

$ cp /usr/local/lib64/libstdc++.so.6.0.19 /usr/lib64   

$ rm -rf /usr/lib64/libstdc++.so.6  

$ ln -s /usr/lib64/libstdc++.so.6.0.19 /usr/lib64/libstdc++.so.6  

再次查询,发现版本完整。Linux环境配置完成。

 第四步:运行程序
回到unity打包程序文件夹下,启动xxx.x86_64,配置分辨率,运行完成。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐