CARLA安装记录(二)

安装好显卡驱动后,接下来的步骤是安装Unreal Engine。我的操作系统是Ubuntu 18.04

系统要求

  1. Ubuntu 18.04。CARLA兼容Ubuntu 16.04及之前版本,但虚幻引擎正常工作需要合适的编译器。
  2. 至少130GB磁盘空间。CARLA会占用大约31GB的空间,而虚幻引擎则会占用大约91GB的空间,因此至少需要保证磁盘空间不小于130GB。血的教训,一定一定要保证磁盘的空间足够!!
  3. 高性能的GPU。CARLA的目标是实现逼真的模拟,因此服务器至少需要6 GB的GPU,建议使用8 GB的GPU。
  4. 两个TCP端口和良好的互联网连接。默认情况下为2000和2001两个端口。确保这些端口未被防火墙拦截或任何其他应用程序占用。

软件要求

终端执行以下命令来安装一部分依赖

sudo apt-get update &&
sudo apt-get install wget software-properties-common &&
sudo add-apt-repository ppa:ubuntu-toolchain-r/test &&
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add - &&
sudo apt-add-repository "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-8 main" &&
sudo apt-get update

如果是Ubuntu 18.04系统,接着执行以下命令

sudo apt-get install build-essential clang-8 lld-8 g++-7 cmake ninja-build libvulkan1 python python-pip python-dev python3-dev python3-pip libpng-dev libtiff5-dev libjpeg-dev tzdata sed curl unzip autoconf libtool rsync libxml2-dev git

在这个过程中如果出现网络错误,可以选择更换仓库的源,也可以考虑使用代理的方式提高网络的可用性。
CARLA安装记录(二)_第1张图片
CARLA安装记录(二)_第2张图片
为了避免虚幻引擎和CARLA依赖项之间出现兼容问题,应该使用相同的编译器版本和C++运行库来编译所有的东西。CARLA使用clang-8和LLVM的libc++。将默认的clang版本更改为编译Unreal Engine和CARLA依赖项,这是无论哪一个系统版本都需要执行的操作。

sudo update-alternatives --install /usr/bin/clang++ clang++ /usr/lib/llvm-8/bin/clang++ 180 &&
sudo update-alternatives --install /usr/bin/clang clang /usr/lib/llvm-8/bin/clang 180

从CARLA 0.9.12开始,用户可以选择使用pip或pip3安装CARLA Python API。但需要20.3或更高版本。通过以下的命令来检查pip的版本:

# For Python 3
pip3 -V

# For Python 2
pip -V

如果需要升级,则执行以下的命令:

# For Python 3
pip3 install --upgrade pip

# For Python 2
pip install --upgrade pip

升级完成后,安装这些python依赖:

pip install --user setuptools &&
pip3 install --user -Iv setuptools==47.3.1 &&
pip install --user distro &&
pip3 install --user distro &&
pip install --user wheel &&
pip3 install --user wheel auditwheel

安装虚幻引擎

由于虚幻引擎的代码仓库是私有的,因此在克隆它的代码之前需要在github上先进行一些操作才能获取到访问其代码仓库的权限,具体的教程可以参考虚幻引擎官网的指引,或者进行百度。

  1. 将CARLA专门的分支克隆到本地
git clone --depth 1 -b carla https://github.com/CarlaUnreal/UnrealEngine.git ~/UnrealEngine_4.26
  1. 进入克隆好的代码的目录
cd ~/UnrealEngine_4.26
  1. 进行编译,这一步非常耗费时间,在多核机器上将make换成make -j可以大大提高编译的速度
./Setup.sh && ./GenerateProjectFiles.sh && make -j
  1. 编译完成后检查虚幻引擎是否能够正常运行
cd ~/UnrealEngine_4.26/Engine/Binaries/Linux && ./UE4Editor

遇到的问题

编译完成后启动ue4时报错Cannot find a compatible Vulkan device or driver…

CARLA安装记录(二)_第3张图片
出现这个报错说明电脑的Vulkan组件没有安装好或没有正确运行起来,在终端中输入vulkaninfo查看vulkan运行状态,果然出现了问题。尝试了百度上很多的方法,有的说单独安装Vulkan这个组件,有的说在运行的时候加上–opengl3或–opengl4这个命令行参数,即cd ~/UnrealEngine_4.26/Engine/Binaries/Linux && ./UE4Editor --opengl3但是这些方法对我来说统统都没有效果。
请添加图片描述报错中提示没有找到某个文件,这个文件的文件名中有nvidia字样,让我联想到是不是显卡驱动没有安装好,因此我到CARLA仓库中的issue栏目搜索了一下是否有用户和我遇到了一样的问题。经过一番查找之后,找到了一个行之有效的解决方法:https://github.com/carla-simulator/carla/issues/4687请添加图片描述
这个用户一开始是使用sudo bash NVIDIA-Linux-x86_64-430.26.run –-no-opengl-files –-no-x-check命令安装显卡驱动的,我一开始也是这么安装的,因此我赶紧把显卡驱动卸载掉,重新不带–-no-opengl-files –-no-x-check这两个参数安装了一遍,再一次运行时就没有报错了。网上很多教程都会在运行显卡驱动安装脚本时在后面添加两个参数,事实证明,添加了这两个参数会导致非常多的问题出现,例如开机卡顿,登录界面无限循环等等,不加这两个参数啥事没有,虚幻引擎还能正常打开。

运行时提示Couldn’t launch …/UnrealEngine_4.26/Engine/Binaries/Linux/ShaderCompileWorker! Make sure you build ShaderCompileWorker

请添加图片描述
出现这个问题的原因不明,估计是编译的时候漏掉了这个模块,在运行make -j ShaderCompileWorker后这个问题解决了,可以正常启动UE4了。

参考文章

https://carla.readthedocs.io/en/latest/build_linux
https://github.com/EpicGames/UnrealEngine
https://github.com/carla-simulator/carla
https://zhuanlan.zhihu.com/p/338927297

你可能感兴趣的:(SLAM学习,unreal,engine,4,ubuntu)