I am attempting to perform a headless build of a project using Opsive UCC on Ubuntu:
The build fails with:
The relevant lines from the log file:
It looks like there are broken references from the Opsive scripts to the shared dlls.
The project builds absolutely fine on Windows:
How can I get my project to build on Ubuntu?
I have tried overriding the Opsive asmdefs to reference the .dlls directly and that did not work.
Do I need shared dlls built specifically for .Net Standard?
Code:
/opt/Unity3D-2021.2.7f1/Editor/Unity -projectPath ~/MyProject -buildWindows64Player ~/MyProject/Build/Windows64/MyProject.exe -batchmode -nographics -quit -logFile unity.log
The build fails with:
Code:
Aborting batchmode due to failure:
Scripts have compiler errors.
Trace/breakpoint trap
The relevant lines from the log file:
Code:
...
Start importing Assets/Packages/Opsive/Shared/Game/Opsive.Shared.Game.dll using Guid(e2a83a46964bc8748ade85db002f5784) Importer(-1,00000000000000000000000000000000) -> (artifact id: '9053ff36f2c1e2a1775fa99d3812aa8b') in 0.001509 seconds
...
##### ExitCode
1
##### Output
Assets/Packages/Opsive/Shared/Game/ObjectPool.cs(12,31): error CS0246: The type or namespace name 'ObjectPoolBase' could not be found (are you missing a using directive or an assembly reference?)
Assets/Packages/Opsive/Shared/Game/Scheduler.cs(12,30): error CS0246: The type or namespace name 'SchedulerBase' could not be found (are you missing a using directive or an assembly reference?)
Assets/Packages/Opsive/Shared/Input/PlayerInput.cs(9,25): error CS0234: The type or namespace name 'Events' does not exist in the namespace 'Opsive.Shared' (are you missing an assembly reference?)
Assets/Packages/Opsive/Shared/Input/PlayerInput.cs(14,25): error CS0234: The type or namespace name 'Utility' does not exist in the namespace 'Opsive.Shared' (are you missing an assembly reference?)
...
It looks like there are broken references from the Opsive scripts to the shared dlls.
The project builds absolutely fine on Windows:
Code:
"C:\Program Files\Unity\Hub\Editor\2021.2.7f1\Editor\Unity.exe" -projectPath C:\MyProject -buildWindows64Player C:\MyProject\Build\Windows64\MyProject.exe -batchmode -nographics -quit -logfile unity.log
How can I get my project to build on Ubuntu?
I have tried overriding the Opsive asmdefs to reference the .dlls directly and that did not work.
Do I need shared dlls built specifically for .Net Standard?