admin 管理员组

文章数量: 887021

可能排版不太好,大家见谅

!!!(有了代理,下载的事情就基本不操心了)!!!

以官方教程为主,同时参考了不少网络资料:

Windows build - CARLA Simulator(主要参考)

本文参考的以下博客和视频资料,对他们表示感谢:(次要参考)

win11 下编译 CARLA0.9.13_Lemon_Yam的博客-CSDN博客_carla 编译

超详细的Windows下自动驾驶仿真系统Carla安装指导_我不是程序猿WWW、的博客-CSDN博客_carla安装Windows下编译Carla源码0.9.9(已完成)_pipi_ya的博客-CSDN博客_carla编译超详细的Windows下自动驾驶仿真系统Carla安装指导_我不是程序猿WWW、的博客-CSDN博客_carla安装

视频:(最次要参考)

https://www.bilibili/video/BV1Qz4y1D7jz?spm_id_from=333.337.search-card.all.click

当然有些指令操作也是源自百度和google,太多了,数不过来了,大家自己遇到error可以自己查就行,以及问了不少广大群友,感谢他们的相助,现在正式开始我的记录

先讲下我自己的配置:

台式机,windows10,cpu是i5的11代,3060显卡,磁盘空余空间有400g左右,

符合官方教程的System requirements;

现在准备软件工具包:

1.cmake(默认路径安装)

我在官网教程打开对应的cmake link后,下载了cmake-3.23.0-rc5-windows-x86_64.msi(因为我的电脑是64位的嘛)下载之后安装就行;

(好像安装的过程中,有一个勾选add path 之类的路径,请勾选上,这样不用手动添加环境变量啦,但是我忘记这个软件是哪几个了,大家自己在安装过程中注意勾选add path)

2.git(默认路径安装)

我在官网教程打开对应的git link后,在standalone的下方点击64-bit Git for Windows Setup.

下载了Git-2.35.1.2-64-bit.exe,下载之后安装就行;

(好像安装的过程中,有一个勾选add path 之类的路径,请勾选上,这样不用手动添加环境变量啦,但是我忘记这个软件是哪几个了,大家自己在安装过程中注意勾选add path)

3.make(默认路径安装)

我在官网教程打开对应的make link后,往下滑动,在这里下载:

Download

If you download the Setup program of the package, any requirements for running applications, such as dynamic link libraries (DLL's) from the dependencies as listed below under Requirements, are already included. If you download the package as Zip files, then you must download and install the dependencies zip file yourself. Developer files (header files and libraries) from other packages are however not included; so if you wish to develop your own applications, you must separately install the required packages.

DescriptionDownloadSizeLast changeMd5sum
• Complete package, except sourcesSetup338465325 November 20068ae51379d1f3eef8360df4e674f17d6d

点击setup下载,make-3.81.exe,安装就行

(好像安装的过程中,有一个勾选add path 之类的路径,请勾选上,这样不用手动添加环境变量啦,但是我忘记这个软件是哪几个了,大家自己在安装过程中注意勾选add path)

4.7 zip(默认路径安装)

我在官网教程打开对应的7zip link后,点击下载:

Download.exe64-bit x641.5 MB

(好像安装的过程中,有一个勾选add path 之类的路径,请勾选上,这样不用手动添加环境变量啦,但是我忘记这个软件是哪几个了,大家自己在安装过程中注意勾选add path)

5.python

安装的python是3.9.7版本(官网教程说只要是3.x版本就行),关于怎样看自己的安装的python版本,在cmd命令行输入python就知道了;

(好像安装的过程中,有一个勾选add path 之类的路径,请勾选上,这样不用手动添加环境变量啦,但是我忘记这个软件是哪几个了,大家自己在安装过程中注意勾选add path)

(踩坑记录,我当时自己用过不同版本的python,而且装过anaconda3,如果你也和我有类似的情况,请注意:

确保自己只安装了一个python版本,且为3.x的版本,并且是64位的python,并且设置好环境变量,如果想安装以前的python3.x版本,自己可以在csdn搜如何安装老版本的python3.x:

我在2333(用户名)的环境变量和系统 变量的path里均添加了python的路径;

好,现在继续回到装过anaconda3的处理:

其实我编译安装carla失败了三次,有一次error报错说我用anaconda3的python去编译了carla的某些库,这就很头疼,我明明都没有进入conda环境,它也给我整起来了,我在GitHub上看到error的解决方案是重装python,卸载anaconda,等等操作,但是我不想卸载;

于是我在环境变量中,暂时性的删除了有关anaconda的所有环境变量,等后续自己编译完carla再重新添加进去,哈哈哈哈(注意把自己删掉的环境变量路径保存到某个txt文件,方便后面自己加回去)

小小的总结:

现在装完以上五个软件,均需要设置环境变量:

最后的效果如下:

继续看官方教程,现在是Python dependencies

打开命令行cmd

直接输入以下指令

pip3 -V
pip3 install --upgrade pip
pip3 install --user setuptools
pip3 install --user wheel

现在来到

Major installations

Visual Studio 2019

我自己之前就用过Visual Studio 2019,当时自己下载的是专业版,大家根据自己的需求来下载,好像最近下载安装Visual Studio 2019要代理了,安装进度不动的话,就开吧

现在是安装对应的组件:

.NET framework 4.6.2.

x64 Visual C++ Toolset

根据官网的win8.1 sdk要求,我的2019没有这些win8.1,我自己的是win10.几的sdk,待会截个图

安装这些组件的时候,你懂的,网速慢应该干嘛,开吧

Important

Other Visual Studio versions may cause conflict. Even if these have been uninstalled, some registers may persist. To completely clean Visual Studio from the computer, go to Program Files (x86)\Microsoft Visual Studio\Installer\resources\app\layout and run .\InstallCleanup.exe -full

这个意思就是提醒我们要清除多个版本的冲突

好,现在来到

Unreal Engine

Starting with version 0.9.12, CARLA uses a modified fork of Unreal Engine 4.26. This fork contains patches specific to CARLA.

意思是我们要去下载这个4.26的源码编译

我第一次用cmd 的时候,进入了自己的E盘(空间要足,越大越好,当然官网还建议这个git clone的位置要离c盘近,所以我直接在cmd 输入了    E:     准备在E盘git clone下载 )

    git clone --depth 1 -b carla https://github/CarlaUnreal/UnrealEngine.git

但是,我发现下载失败,是需要进行注册ue4账号,并且与自己的GitHub关联

注册完ue账号后,我在自己的GitHub账户与ue 进行了关联;

但发现自己在E盘路径的cmd执行:

git clone --depth 1 -b carla https://github/CarlaUnreal/UnrealEngine.git

的时候,会弹出一个登录确认之类的弹窗,可以选验证码等等方式登录验证,但是每次我验证完,它又下载失败了,我去google上搜到一些方法,可以直接去ue的GitHub主页直接下源码zip包,再解压,

当我准备在ue的GitHub官网下载ue的源码zip时候,发现需要我认证关联账号,然后我认证关联了(具体忘记咋操作了,不懂的可以查csdn)(但是我之前用源码zip的时候,后面的某些步骤失败了,可能与后面编译carla时候有git branch之类的要求)

所以我又回到了官网教程,准备执行git clone     当然哈,我是开了楼梯的,而且在终端cmd下设置了set_host 之类的指令,不然下的太慢

在cmd命令窗发现居然可以直接git clone了,

当然,最好也在终端设置一下set host 指令,不然下载太慢了

git clone 后,可以看到里头就有setup.bat 和 generateprojectfiles.bat文件

然后在unrealengine这个路径下的cmd执行

Setup.bat
GenerateProjectFiles.bat

保持楼梯,不用关

3. Compile the modified engine:

  1. Open the UE4.sln file inside the source folder with Visual Studio 2019.

  2. In the build bar ensure that you have selected 'Development Editor', 'Win64' and 'UnrealBuildTool' options. Check this guide if you need any help.

  3. In the solution explorer, right-click UE4 and select Build.

这一步就是在文件夹中找到它,注意设置3个选项:

'Development Editor', 'Win64' and 'UnrealBuildTool'

然后编译生成,耗时挺久的,

等待vs编译完成

4. Once the solution is compiled you can open the engine to check that everything was installed correctly by launching the executable Engine\Binaries\Win64\UE4Editor.exe.

我自己在运行这个UE4Editor.exe.的时候,老是提示我什么什么模块不可用:

当时自己还搜索了google,说是要把啥啥文件里的ture 设置为false,具体忘记了,

但是我改了也还是打不开这个UE4Editor.exe.

我就想算了,后面用make launch能打开就行。

If the installation was successful, this should be recognised by Unreal Engine's version selector. You can check this by right-clicking on any .uproject file and selecting Switch Unreal Engine version. You should see a pop-up showing Source Build at PATH where PATH is the installation path that you have chosen. If you can not see this selector or the Generate Visual Studio project files when you right-click on .uproject files, something went wrong with the Unreal Engine installation and you will likely need to reinstall it correctly.

回到这儿,我是可以鼠标右键查看 uproject文件的,可以看到Generate Visual Studio project files 选项

所以我觉得我也安装成功了ue

噢,咱们再设置一下ue的环境变量:在系统变量里新建环境变量

如图:我用户和系统变量都加了,hhhh

现在是第二环节,

编译carla

我git clone 的时候,在E:unrealengine这个路径下执行的

我也不确定在其他路径行不行哈,应该没啥问题

cmd窗口执行:

git clone https://github/carla-simulator/carla

同样的,开起小梯子

下完之后,在文件夹里可以看到:

其实这个:

Update.bat

的意思就是,会下载一个地图资源包,大概有十多g,

我不推荐在终端执行,官方教程也有讲:另一种方法等效于update.bat

To download the assets for a specific version of CARLA:

  1. From the root CARLA directory, navigate to \Util\ContentVersions.txt. This document contains the links to the assets for all CARLA releases.
  2. Extract the assets in Unreal\CarlaUE4\Content\Carla. If the path doesn't exist, create it.
  3. Extract the file with a command similar to the following:

好,找到这个ContentVersions.txt.

如图:

因为我安装的是0.9.13的carla,所以只要打开浏览器,进网址:

http://carla-assets.s3.amazonaws/PUT_FILE_ID_HERE.tar.gz20211112_d5cfa12http://carla-assets.s3.amazonaws/PUT_FILE_ID_HERE.tar.gz

20211112_d5cfa12替换掉put_file_id_here就行

下载之后,把压缩包复制到:

 这个路径下,

我知道,大家还没有这个content /carla路径

官网说了,让我们自己创建content 文件,和carla文件,然后把压缩包放进去

注意是.....你的路径.......

.......your path.......\carla\Unreal\CarlaUE4\Content\Carla

 在这个路径下打开cmd

执行:

tar xf 20211112_d5cfa12.tar.gz

就会解压到当前目录,耐心等

然后添加ue的环境变量

  1. Open Windows Control Panel and go to Advanced System Settings or search for Advanced System Settings in the Windows search bar.
  2. On the Advanced panel open Environment Variables....
  3. Click New... to create the variable.
  4. Name the variable UE4_ROOT and choose the path to the installation folder of the desired Unreal Engine installation.

,,我们在之前已经完成了哈啊

编译carla

This section outlines the commands to build CARLA.

  • All commands should be run in the root CARLA folder.
  • Commands should be executed via the x64 Native Tools Command Prompt for VS 2019. Open this by clicking the Windows key and searching for x64.

打开x64的终端

 在x64终端,进入carla的根目录

我的是E:\UnrealEngine\carla

执行:

 make PythonAPI

这一步,我失败了太多次,

比如

 我根据前人的方法,改了powershell的配置

管理员身份打开PowerShell 输入 set-executionpolicy remotesigned

然后重新开x64 终端进入 E:\UnrealEngine\carla

依旧报错,翻了半天github,很多人都没解决

悲伤的故事,比方这个人留言hhhhhhh

然而,我巧妙的解决了:

首先,因为我们刚刚执行了

 make PythonAPI

这时候,你在carla目录是可以看到生成了一个build目录的

 点进去这个build目录,你们的终端可能只有一个zlib啥啥的文件夹,而且这个文件的大小为空

这时候,删掉build目录里的所有文件

现在去zlib的官网zlib Home Site,下载zlib的这个库,本文写于2022年4月,所以可以看到zlib官网现在更新的版本是:zlib Home Site

 但是我们编译carla需要的版本是zlib1.2.11,

所以我觉得这就bug所在

往下滑,找它的GitHub网站

然后下载这个版本的zip文件

 下载完这个zip,复制到刚刚说的build目录

好,现在build目录里有zlib的zip文件了

先设置好x64终端的代理,进入 E:\UnrealEngine\carla

 make PythonAPI

你会看到,芜湖,可以开始了

起飞

这个过程比较漫长

特别是终端显示运行到这个boost-1.72.0的位置的时候,看上去有点像终端卡住了

其实它是在下载这个zip文件,并且自动解压编译它

编译完成后,

现在看官方文档说

A. .egg file

The .egg file does not need to be installed. All of CARLA's example scripts automatically look for this file when importing CARLA.

If you previously installed a CARLA .whl, the .whl will take precedence over an .egg file.

B. .whl file

The .whl file should be installed using pip3:

pip3 install <path/to/wheel>.whl

This .whl file cannot be distributed as it is built specifically for your OS.

我记得0.9.13版本用的是whl文件,你可以在这儿看到它:

在路径:

E:\UnrealEngine\carla\PythonAPI\carla\dist 打开cmd

执行

pip install <path/to/wheel>.whl

ok完成

然后在x64终端窗口,进入E:\UnrealEngine\carla

执行

make launch

这个过程也要开启代理,设置终端代理

最后结果:

 注意,因为是第一次加载ue4,它会下载和配置安装很多网格文件和模块,

请继续使用代理,耐心等等,比较漫长

点击上方的“运行”  表示启动carla的  server 服务端,

这时可以运行官方实例的py文件,测试一下

然后,我准备接着执行

Test the simulator using the example scripts inside PythonAPI\examples. With the simulator running, open a new terminal for each script and run the following commands to spawn some life into the town and create a weather cycle:

        # Terminal A 
        cd PythonAPI\examples
        pip3 install -r requirements.txt
        python3 generate_traffic.py  

        # Terminal B
        cd PythonAPI\examples
        python3 dynamic_weather.py 

当我在E:\UnrealEngine\carla\PythonAPI\examples的cmd窗口运行:

python generate_traffic.py  

好家伙,报错了,

这个error我找了几个小时,没有找到解决方案,

于是又被我巧妙的解决了

解决如下:

 我在这个目录下 删除了以下文件:

town10hd_opt.bin ,分别位于nav文件夹和tm文件夹

 删完后的结果如图:

 

这个问题的报错我猜测是,我只有opt_bin  没有对应的bin

所以干脆全都删了town10的东西    才能运行这个generate_traffic.py

 运行之后,ue4 会弹出很多小汽车,应该有30辆车

接着我又开了一个终端,

E:\UnrealEngine\carla\PythonAPI\examples的cmd窗口运行:

python manual_control.py

这个指令是加载pygame模块,同步ue4的场景

在pygame窗口可以wasd操作小汽车,同步到ue4

当然,如果你显卡配置不好的话,或者cpu,内存比较吃力

If the simulation is running at a very low FPS rate, go to Edit -> Editor preferences -> Performance in the Unreal Engine editor and disable Use less CPU when in background.

改成低功耗就行

还有一个小小的bug

我在测试:

python tutorial.py

的时候,报错如下:

unboundlocalerror: local variable 'camera' referenced before assignment..............................

我搜了很久,也没找到这个方案的解决

后来,我看了下源代码,巧妙的发现:

设定的通讯响应时间太短了

于是我改成了20.0

测试之后,完美通过

以上,就是本人的安装教程,感谢前人提供的资料和教程,谢谢

希望我这篇也能帮到大家

最后我还要感谢一个人,谢谢你,次且,深夜担心我无聊,担心我感冒,陪我聊天解闷

都到这里,顺手点个赞支持我一下hhhhhhh

本文标签: 源码