Open rdyro opened 1 year ago
Hi Robert,
Your issue looks very similar to #8. The plugin currently doesn't support Linux out of the box (I'll update the readme later to reflect that). It probably could work on Linux, but some work is required (it's discussed in #8 ).
The plugin also doesn't build alongside CARLA, as there are duplicate classes name. The easiest workaround is to delete my plugin's ATrafficLightController
, as it probably has less downstream effects than deleting CARLA's (this is also discussed in #8 ).
As for Windows, it should build. We've been successfully using it on 4.26 -> 5.1. Are you sure the output log is identical? I think the "explicit Category specifier" error is Unix only (I'll still fix it later anyway), so I'd be surprised to see it on Windows.
Thanks for the quick response!
I'll give building CARLA alongside Unreal a try, I'll keep you updated.
Thank you in advance for updating the installation instructions!
I tested the combined Carla + Unreal setup on Windows (following the CARLA docs) with the master version of CARLA.
Unfortunately, I'm running into the same issues as mentioned in #8 .
I'm not currently sure how to proceed (I've tried a couple easy fixes like removing the TrafficLight files from OpenDRIVE).
Could you specify which version of Carla and Unreal engine is this plugin tested on? Thanks!
Could you specify which version of Carla and Unreal engine is this plugin tested on? Thanks!
This plugin has never been tested alongside CARLA. It has been tested on UE4.26 to 5.0.
Could you maybe share more about the issue you encounter? In #8 , once the OP deleted the ATrafficLightController
class, they encountered an issue that, as far as I know, only occurs on Linux.
If the issue is related to missing RoadManager files, make sure you have properly initialized the plugin's submodule (git submodule update --init --recursive
).
Thank you for all of your responses, this is very helpful!
On windows, with Visual Studio 2019, I attempted to build UnrealEngine 4.27.2 (from EpicGames) with the plugin correctly initialized under Engine\Plugins
.
These are the build errors I'm getting:
Build started...
1>------ Build started: Project: UE4, Configuration: Development_Editor x64 ------
1>Creating makefile for UE4Editor (no existing makefile)
1>Parsing headers for UE4Editor
1> Running UnrealHeaderTool UE4Editor "C:\Users\rdyro\Desktop\UE4\Engine\Intermediate\Build\Win64\UE4Editor\Development\UE4Editor.uhtmanifest" -LogCmds="loginit warning, logexit warning, logdatabase error" -Unattended -WarningsAsErrors -abslog="C:\Users\rdyro\Desktop\UE4\Engine\Programs\UnrealBuildTool\Log_UHT.txt"
1>LogInit: Display: Loading text-based GConfig....
1>C:/Users/rdyro/Desktop/UE4/Engine/Plugins/OpenDRIVE/Source/OpenDRIVE/Public/JunctionSignSpawner.h(19) : LogCompile: Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
1>C:/Users/rdyro/Desktop/UE4/Engine/Plugins/OpenDRIVE/Source/OpenDRIVE/Public/JunctionSignSpawner.h(22) : LogCompile: Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
1>C:/Users/rdyro/Desktop/UE4/Engine/Plugins/OpenDRIVE/Source/OpenDRIVE/Public/OpenDriveTrajectory.h(20) : LogCompile: Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
1>C:/Users/rdyro/Desktop/UE4/Engine/Plugins/OpenDRIVE/Source/OpenDRIVE/Public/RoadDecalSpawner.h(17) : LogCompile: Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
1>C:/Users/rdyro/Desktop/UE4/Engine/Plugins/OpenDRIVE/Source/OpenDRIVE/Public/TrafficLight.h(36) : LogCompile: Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
1>C:/Users/rdyro/Desktop/UE4/Engine/Plugins/OpenDRIVE/Source/OpenDRIVE/Public/TrafficLight.h(39) : LogCompile: Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
1>C:/Users/rdyro/Desktop/UE4/Engine/Plugins/OpenDRIVE/Source/OpenDRIVE/Public/TrafficLight.h(49) : LogCompile: Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
1>C:/Users/rdyro/Desktop/UE4/Engine/Plugins/OpenDRIVE/Source/OpenDRIVE/Public/TrafficLight.h(52) : LogCompile: Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
1>C:/Users/rdyro/Desktop/UE4/Engine/Plugins/OpenDRIVE/Source/OpenDRIVE/Public/TrafficLightController.h(16) : LogCompile: Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
1>C:/Users/rdyro/Desktop/UE4/Engine/Plugins/OpenDRIVE/Source/OpenDRIVE/Public/TrafficLightController.h(21) : LogCompile: Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
1>C:/Users/rdyro/Desktop/UE4/Engine/Plugins/OpenDRIVE/Source/OpenDRIVE/Public/TrafficLightController.h(26) : LogCompile: Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
1>C:/Users/rdyro/Desktop/UE4/Engine/Plugins/OpenDRIVE/Source/OpenDRIVE/Public/TrafficLightController.h(31) : LogCompile: Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
1>C:/Users/rdyro/Desktop/UE4/Engine/Plugins/OpenDRIVE/Source/OpenDRIVE/Public/TrafficLightController.h(36) : LogCompile: Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
1>C:/Users/rdyro/Desktop/UE4/Engine/Plugins/OpenDRIVE/Source/OpenDRIVE/Public/TrafficLightController.h(41) : LogCompile: Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
1>C:/Users/rdyro/Desktop/UE4/Engine/Plugins/OpenDRIVE/Source/OpenDRIVEEditor/Public/OpenDrive2Landscape.h(25) : LogCompile: Error: An explicit Category specifier is required for any property exposed to the editor or Blueprints in an Engine module.
1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.MakeFile.Targets(45,5): error MSB3073: The command "..\..\Build\BatchFiles\Build.bat -Target="UE4Editor Win64 Development" -Target="ShaderCompileWorker Win64 Development -Quiet" -WaitMutex -FromMsBuild" exited with code 6.
1>Done building project "UE4.vcxproj" -- FAILED.
========== Build: 0 succeeded, 1 failed, 2 up-to-date, 0 skipped ==========
The explicit Category specifiers errors were actually the same ones when building UnrealEngine (non-CARLA version) under Ubuntu 20.04.
Have you encountered these errors before?
Have you encountered these errors before?
No, but something tells me that it's related to the fact that you installed the plugin into the engine directory instead of the project directory. It's not something I ever tested, so that could be it. Maybe try to move the plugin to the project directory and see if that helps.
In any case, I'll try to fix those explicit Category specifier is required
errors tomorrow (they're quite easy), or at the very least by the end of the week. I'm not sure why they cause an error for some users and not others, but the errors just enforce a good practice that I should be implementing anyway. So that fix should at least solve one problem. I'll ping you once it's pushed.
I just built UnrealEngine 4.27.2 on Windows 10 with VisualStudio 2019 and I'm getting the same error as on linux:
The following modules are missing or build with a different engine version:
OpenDRIVE
OpenDRIVELoader
OpenDRIVEEditor
Would you like to rebuild them now?
Yes/No
After pressing Yes, I get:
Engine modules are out of date, and cannot be compiled while the engine is running. Please build through your IDE.
I followed the following steps:
OpenDRIVE
repo into a new folder under the project root Plugins
, so that the structure was Plugins\OpenDRIVE
Have you encountered this before?
Have you encountered this before?
No, but the last message is fairly explicit: the plugin needs to be rebuilt from the IDE. If you don't have a solution file (.sln
) for your project, you can generate one by right clicking the .uproject
and selecting Generate Visual Studio project files
. This probably requires a C++ project though.
Hi!
I'm trying to get this plugin to compile with the CARLA fork of the UnrealEngine version 4.26 on Linux. My environment is:
First, I tried placing the fully-submodule-initialized copy of this repo under a
Plugins
folder in an Unreal Project and opening the project withUE4Editor
. The editor first asks:After pressing
Yes
, I get:Next, I placed the fully-submodule-initialized copy of this repo under
UnrealEngine/Engine/Plugins
, but I'm receiving the following compile errors:I repeated the process on Windows 10 (on the same machine) with VisualStudio 2019 and got the exact same outputs.
Could you advise on how to build your plugin correctly?
Best regards, Robert