microsoft / AirSim

Open source simulator for autonomous vehicles built on Unreal Engine / Unity, from Microsoft AI & Research
https://microsoft.github.io/AirSim/
Other
16.45k stars 4.58k forks source link

Cannot open Blocks.uproject with UE4.27 #4535

Open WarrenSkywalker opened 2 years ago

WarrenSkywalker commented 2 years ago

Question

What's your question?

I followed the instruction here:https://microsoft.github.io/AirSim/unreal_blocks/, however, the UE4 cannot open the default Blocks environment in the AirSim. I found the version of the engine that made the Blocks.uprojcet is 4.27, which is the same as my UE version, it's wield that UE recognized the project came from an engine of different version.

Include context on what you are trying to achieve

Context details

Ubuntu 18.04LTS, AirSim master branch from its github, Unreal 4.27

Include details of what you already did to find answers

I've tried convert it in place, but met a compile error: Building would modify the following engine files: xxxxx/UE4Editor.modules .....

LongruiDong commented 2 years ago

Hi . I am also meeting this error, have you solved yet?

WarrenSkywalker commented 2 years ago

not yet, hope sb could help us

Davidsastresas commented 2 years ago

I am having the same issue all of a sudden!

andrewjong commented 2 years ago

Hi all, I managed to open Blocks.uproject on my machine. UE4.27 on Ubuntu 18.04.

  1. Cloned UnrealEngine to ~/UnrealEngine. Cloned AirSim to ~/AirSim
  2. Cleaned the UBlocks project cd ~/AirSim/Unreal/Environments/Blocks && ./clean.sh
  3. Installed mono-complete for Ubuntu 18.04, which lets you run .exe files on Linux
  4. Made some symlinks: sudo ln -s /usr/bin/mono /bin/mono && sudo ln -s /usr/lib/mono /lib/mono
  5. Ran the following command to rebuild the Blocks project: ~/UnrealEngine/Engine/Binaries/ThirdParty/Mono/Linux/bin/mono ~/UnrealEngine/Engine/Binaries/DotNET/UnrealBuildTool.exe Development Linux -Project=/home/andrew/AirSim/Unreal/Environments/Blocks/Blocks.uproject -TargetType=Editor -Progress
  6. Started UE4Editor from command line: ~/UnrealEngine/Engine/Binaries/Linux/UE4Editor
  7. Clicked More > Browse > /home/andrew/AirSim/Unreal/Environments/Blocks/Blocks.uproject
  8. Error shows up "This project was made with a different version of the Unreal Engine.". Click "More Options" > "Skip conversion"
  9. Project opens, whala! Unfortunately you always have to click "Skip conversion" to open it. If anyone knows a better way, please feel free to share. Thanks!
zimmy87 commented 2 years ago

Thanks for looking into this and providing a solution @andrewjong! Another solution I found is to follow the instructions in this forum post (I suspect this essentially doing the same thing as step 5 in his solution, just with a make command instead of using the UnrealBuildTool). Basically, this is happening because of an outdated BlocksEditor shared library left over from a previous build. I'll try and look into what specific build output needs to be cleaned up to avoid this, but in the meantime, everyone should be unblocked by either @andrewjong's solution or the forum post I linked to.

Here's the solution offered in the previously linked forum post:

/home//UE/UnrealEngine/GenerateProjectFiles.sh /home/projectName/projectName.uproject -game
cd /home/projectName/
make projectNameEditor
09zs19 commented 2 years ago

I have been running into the same issue for about a week or so and the solution from @andrewjong worked perfectly for me. Thank you for the help!

Davidsastresas commented 2 years ago

Thank you so much @andrewjong, your solution worked for me! Thanks thanks thanks!

aliadeeba98 commented 2 years ago

Hi all, I managed to open Blocks.uproject on my machine. UE4.27 on Ubuntu 18.04.

  1. Cloned UnrealEngine to ~/UnrealEngine. Cloned AirSim to ~/AirSim
  2. Cleaned the UBlocks project cd ~/AirSim/Unreal/Environments/Blocks && ./clean.sh
  3. Installed mono-complete for Ubuntu 18.04, which lets you run .exe files on Linux
  4. Made some symlinks: sudo ln -s /usr/bin/mono /bin/mono && sudo ln -s /usr/lib/mono /lib/mono
  5. Ran the following command to rebuild the Blocks project: ~/UnrealEngine/Engine/Binaries/ThirdParty/Mono/Linux/bin/mono ~/UnrealEngine/Engine/Binaries/DotNET/UnrealBuildTool.exe Development Linux -Project=/home/andrew/AirSim/Unreal/Environments/Blocks/Blocks.uproject -TargetType=Editor -Progress
  6. Started UE4Editor from command line: ~/UnrealEngine/Engine/Binaries/Linux/UE4Editor
  7. Clicked More > Browse > /home/andrew/AirSim/Unreal/Environments/Blocks/Blocks.uproject
  8. Error shows up "This project was made with a different version of the Unreal Engine.". Click "More Options" > "Skip conversion"
  9. Project opens, whala! Unfortunately you always have to click "Skip conversion" to open it. If anyone knows a better way, please feel free to share. Thanks!

But sir, after executing the command wine UnrealBuildTool.exe Development Linux -Project=/home/andrew/AirSim/Unreal/Environments/Blocks/Blocks.uproject -TargetType=Editor -Progress, I am getting the following error: wine: Unhandled page fault on read access to 0000000000000004 at address 000000007BCDCAE4 (thread 0019), starting debugger... 000f:err:service:process_send_command service protocol error - failed to write pipe! Using 'git status' to determine working set for adaptive non-unity build (Z:\home\adeeba\UnrealEngine). Invalidating makefile for BlocksEditor (Paper2D.uplugin has been added) ERROR: Platform Linux is not a valid platform to build. Check that the SDK is installed properly.

And I'm stuck here! Please help me out in this regard.

Thank you.

andrewjong commented 2 years ago

@aliadeeba98 , based on the backslashes in your path, it looks like you're on Windows. The instructions I wrote are for Linux. However perhaps it will still work if you simply run ~/UnrealEngine/Engine/Binaries/DotNET/UnrealBuildTool.exe Development Windows -Project=/home/andrew/AirSim/Unreal/Environments/Blocks/Blocks.uproject -TargetType=Editor -Progress? Not entirely sure because I'm not on Windows myself.

aliadeeba98 commented 2 years ago

@aliadeeba98 , based on the backslashes in your path, it looks like you're on Windows. The instructions I wrote are for Linux. However perhaps it will still work if you simply run ~/UnrealEngine/Engine/Binaries/DotNET/UnrealBuildTool.exe Development Windows -Project=/home/andrew/AirSim/Unreal/Environments/Blocks/Blocks.uproject -TargetType=Editor -Progress? Not entirely sure because I'm not on Windows myself.

@andrewjong I'm working on Ubuntu 20.04 LTS and for executing the UnrealBuildTool.exe file in Linux I am taking the help of Wine software.

aliadeeba98 commented 2 years ago

@aliadeeba98 , based on the backslashes in your path, it looks like you're on Windows. The instructions I wrote are for Linux. However perhaps it will still work if you simply run ~/UnrealEngine/Engine/Binaries/DotNET/UnrealBuildTool.exe Development Windows -Project=/home/andrew/AirSim/Unreal/Environments/Blocks/Blocks.uproject -TargetType=Editor -Progress? Not entirely sure because I'm not on Windows myself.

@andrewjong Thanks a lot!! Now, the issue has resolved.

andrewjong commented 2 years ago

mono should let you run the .exe in Linux

jacobsayono commented 2 years ago

@andrewjong hi, your solution worked to compile Blocks, but in the end, i would still get the error: Engine modules are out of date, and cannot be compiled while the engine is running. Please build through your IDE. do you think it is because i am using Ubuntu 20.04 LTS?

tanyaspaul commented 2 years ago

same error on my Ubuntu 20.04 LTS any tips or individual that managed to solve this issue?

gmgarciam commented 2 years ago

This command will generate project files for the game and then follow it with the make command.

./UnrealEngine/GenerateProjectFiles.sh '/Unreal Projects/MyProject/MyProject.uproject' -game make

andrewjong commented 1 year ago

Since AirSim is now deprecated, I suggest transitioning to Colosseum Sim, which is a fork of AirSim. They've carried on AirSim to Unreal Engine 5. We use it for our project and it's working well.

KadriyeNur commented 1 year ago

I am faced wıth thıs error Plugin 'SteamVR' failed to load because module 'SteamVR' could not be found. Please ensure the plugin is properly installed, otherwise consider disabling the plugin for this project.

panyaoqiang commented 1 year ago

I have also encountered this problem. Have you resolved it

abheek19 commented 1 year ago

Hi, @andrewjong , I tried all the steps you mentioned. 2 things I noticed while following the steps mentioned:

  1. the SymLinks already existed, both of them. So I went forward with the following steps.
  2. Even after going through all the steps, I still got the same error that as I started with.
panyaoqiang commented 1 year ago

您好,您的邮件耀强已经收到,辛苦了。 

panyaoqiang commented 1 year ago

您好,您的邮件耀强已经收到,辛苦了。 

cheslee-z commented 1 year ago

Thanks for looking into this and providing a solution @andrewjong! Another solution I found is to follow the instructions in this forum post (I suspect this essentially doing the same thing as step 5 in his solution, just with a make command instead of using the UnrealBuildTool). Basically, this is happening because of an outdated BlocksEditor shared library left over from a previous build. I'll try and look into what specific build output needs to be cleaned up to avoid this, but in the meantime, everyone should be unblocked by either @andrewjong's solution or the forum post I linked to.

Here's the solution offered in the previously linked forum post:

/home//UE/UnrealEngine/GenerateProjectFiles.sh /home/projectName/projectName.uproject -game
cd /home/projectName/
make projectNameEditor

@KadriyeNur, I also encounter your problem when using attentioned method, everything seems to be OK by just disabling the plugin. By the way, my PC is ubuntu 20.04

tbh123456 commented 9 months ago

您好,您的邮件耀强已经收到,辛苦了 I have meet the same question ,do you know how to disable the SteamVR?

panyaoqiang commented 9 months ago

您好,您的邮件耀强已经收到,辛苦了。 

IaroslavS commented 8 months ago

Hi all, I managed to open Blocks.uproject on my machine. UE4.27 on Ubuntu 18.04.

1. Cloned UnrealEngine to `~/UnrealEngine`. Cloned AirSim to `~/AirSim`

2. Cleaned the UBlocks project `cd ~/AirSim/Unreal/Environments/Blocks && ./clean.sh`

3. Installed [mono-complete for Ubuntu 18.04](https://www.mono-project.com/download/stable/#download-lin), which lets you run .exe files on Linux

4. Made some symlinks: `sudo ln -s /usr/bin/mono /bin/mono && sudo ln -s /usr/lib/mono /lib/mono`

5. Ran the following command to rebuild the Blocks project: `~/UnrealEngine/Engine/Binaries/ThirdParty/Mono/Linux/bin/mono ~/UnrealEngine/Engine/Binaries/DotNET/UnrealBuildTool.exe Development Linux -Project=/home/andrew/AirSim/Unreal/Environments/Blocks/Blocks.uproject -TargetType=Editor -Progress`

6. Started UE4Editor from command line: `~/UnrealEngine/Engine/Binaries/Linux/UE4Editor`

7. Clicked More > Browse > `/home/andrew/AirSim/Unreal/Environments/Blocks/Blocks.uproject`

8. Error shows up "This project was made with a different version of the Unreal Engine.".   Click "More Options" > "Skip conversion"

9. Project opens, whala! Unfortunately you always have to click "Skip conversion" to open it. If anyone knows a better way, please feel free to share. Thanks!

I have Unreak Engine 5.2 and I don't have UnrealBuildTool, I found only UnrealEngine/Engine/Binaries/DotNET/UnrealBuildTool/UnrealBuildTool. When I've run

UnrealEngine/Engine/Binaries/ThirdParty/Mono/Linux/bin/mono UnrealEngine/Engine/Binaries/DotNET/UnrealBuildTool/UnrealBuildTool Development Linux -Project=/home/user/workspace/Colosseum/Unreal/Environments/Blocks/Blocks.uproject -TargetType=Editor -Progress

An error occurs:

Cannot open assembly 'UnrealEngine/Engine/Binaries/DotNET/UnrealBuildTool/UnrealBuildTool': File does not contain a valid CIL image.
panyaoqiang commented 8 months ago

您好,您的邮件耀强已经收到,辛苦了。 

nvhungv2k commented 4 months ago

Hi all, I managed to open Blocks.uproject on my machine. UE4.27 on Ubuntu 18.04.

1. Cloned UnrealEngine to `~/UnrealEngine`. Cloned AirSim to `~/AirSim`

2. Cleaned the UBlocks project `cd ~/AirSim/Unreal/Environments/Blocks && ./clean.sh`

3. Installed [mono-complete for Ubuntu 18.04](https://www.mono-project.com/download/stable/#download-lin), which lets you run .exe files on Linux

4. Made some symlinks: `sudo ln -s /usr/bin/mono /bin/mono && sudo ln -s /usr/lib/mono /lib/mono`

5. Ran the following command to rebuild the Blocks project: `~/UnrealEngine/Engine/Binaries/ThirdParty/Mono/Linux/bin/mono ~/UnrealEngine/Engine/Binaries/DotNET/UnrealBuildTool.exe Development Linux -Project=/home/andrew/AirSim/Unreal/Environments/Blocks/Blocks.uproject -TargetType=Editor -Progress`

6. Started UE4Editor from command line: `~/UnrealEngine/Engine/Binaries/Linux/UE4Editor`

7. Clicked More > Browse > `/home/andrew/AirSim/Unreal/Environments/Blocks/Blocks.uproject`

8. Error shows up "This project was made with a different version of the Unreal Engine.".   Click "More Options" > "Skip conversion"

9. Project opens, whala! Unfortunately you always have to click "Skip conversion" to open it. If anyone knows a better way, please feel free to share. Thanks!

Thanks @andrewjong Your way worked for me. My workspace: Ubuntu 20.04LTS, Airsim branch master, Unreal Engine 4.27

panyaoqiang commented 4 months ago

您好,您的邮件耀强已经收到,辛苦了。 

rahmarzougui commented 1 month ago

6. ~/UnrealEngine/Engine/Binaries/Linux/UE4Editor

Thank you this worked for me!