CodexLabsLLC / Colosseum

Open source simulator for autonomous robotics built on Unreal Engine with support for Unity

Home Page:https://codexlabsllc.github.io/Colosseum/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Build failing on macOS Ventura

erickahmed opened this issue · comments

commented

Bug report

  • AirSim Version/#commit: Colosseum [main]
  • UE version: 4.27
  • autopilot version: N/A
  • OS Version: MacOS Ventura 13.0

What's the issue you encountered?

After building Colosseum from source, when trying to build the Blocks.xcworkspace with XCode 14.1 (which is generated from ./GenerateProjectFiles.sh) I get the error:

<UE_PATH>/Engine/Source/Runtime/Engine/Classes/Materials/Material.h:1279:26 variable 'LayerNames' set but not used [-Werror,-Wunused-but-set-variable]

After looking on the internet for similar issues I learned that this happens with XCode v>13.3, and that I can solve this error if I add the following two lines to both Blocks.Target.cs and BlocksEditor.Target.cs

bOverrideBuildEnvironment = true;
AdditionalCompilerArguments = "-Wno-unused-but-set-variable";

At this point though, when the build is completed and Unreal tries to run, I get this error (from UE4Editor):
Screenshot 2022-11-04 at 10 40 10

Of course I do have MacOS 13.0 (Ventura) but for some reason it thinks I'm on MacOS 10.16 (Big Sur)

Settings

Default settings

How can the issue be reproduced?

Using XCode 13.3 onwards

  1. After cloning the repo, build Colosseum:
./setup.sh && ./build.sh
  1. cd to AirSim/Unreal/Environments/Blocks
  2. Run ./GenerateProjectFiles.sh <UE_PATH>
  3. Open the XCode workspace and build

Include full error message in text form

/Users/Shared/Epic Games/UE_4.27/Engine/Source/Runtime/Engine/Classes/Materials/Material.h:1279:26 variable 'LayerNames' set but not used [-Werror,-Wunused-but-set-variable]

You cannot use this application with this version of macOS. You cannot use this application with this version of macOS.

What's better than filing an issue? Filing a pull request :).

Hey @erickahmed ,

Mac has been problematic from the beginning with UE. Mac seems to change their build tools constantly, which breaks the internal tools used to build this platform.

What is your use case and is Mac your only option? Due to the graphics cards on most macs, I have found very sub-optimal performance when using them. I would personally like to stop supporting Mac-based builds, as the amount of effort required to fix each new version of MacOS is probably beyond our current resource constraints.

What are your thoughts?

commented

@xxEoD2242 Hi Tyler,

Yeah I imagined that the main issue was that MacOS itself is problematic itself.
I personally have Mac, Windows, and various Linux distros, so that is not actually a problem for me, it's just I wanted to use my new Macbook Pro, but I guess it's not worth the extra time to support a OS that not a lot of people are going to work on, though it would have been nice to support the M1 chips.

I wanted to use Colosseum for a subproject I'm doing at work, and we use Ubuntu 20.04 so actually now I am more interested in that also because we could implement our ground control and px4 firmware

@erickahmed

Ah, yeah. I also don't have any idea how UE5 will perform with the new M1s. Their GPUs aren't the best and that is the main resource used with UE, although an ARM architecture would be interesting to look at from the UE perspective.

Awesome! That is what my company uses Colosseum for as well and we are looking to upgrade the integration with PX4/Autopilot as soon as we get a fixed wing vehicle up and running. I'll keep you updated on that integration as well.

commented

@xxEoD2242

This is great, we are also focusing mainly on fixed wings and VTOLs! I wanted to ask about the implementation of those types of drones In a separate issue, it's fantastic to hear that it's already in the plan.
Do you have some timeline on how and when you plan to switch to UE5 and implement new UAVs?

Also, I'd like to contribute to this project, I saw the issue relative to the implementation of a battery model system, I will start looking into it shortly

Hey @erickahmed,

I am currently working on the underlying physics models now for the fixed wing. My hope is that by Mid-January, we will have some type of fixed wing vehicle up and running in simulation.

As for UE5, I think that we will make the switch by the end of next January, as some of UE5 is still a bit new and there are issues with the Optical Flow images that I have found. I will be releasing a development Roadmap for Colosseum as well.

If you are interested, my company also has a more advanced, developer version. Email me at tylerfedrizzi@codex-labs-llc.com if you want to learn more. We will be adding in fixed wing support to the developer version as well, along with a lot of other tools for doing simulation work.

Sounds great! Excited to have you onboard. Feel free to reach out on Slack as well and set up a channel or working party for this. Battery models are tricky and I will help where I can.

I am currently working on the underlying physics models now for the fixed wing. My hope is that by Mid-January, we will have some type of fixed wing vehicle up and running in simulation.

That seems really interesting, is that available now, @xxEoD2242?