immersivecognition / unity-experiment-framework

UXF - Framework for creating human behaviour experiments in Unity
https://immersivecognition.github.io/unity-experiment-framework/
MIT License
214 stars 41 forks source link

Building to Quest results in WebAWS error #109

Open mrstruijk opened 2 years ago

mrstruijk commented 2 years ago

Hi!

When I'm trying to build my main project to the Quest (which usually worked well on pre-UXF builds), I get the error below re AWSDynamoDB. In the Rig I haven't selected AWS, and I've run the 'SetupWizard - Select Android VR' option. After receiving this error, I've tried removing the Library folder, but no change. I also deleted the AWS plugin from the UXF/Plugins folder, but also no change.

I'm still on 2.3.6, but AFAIK .7 didn't have any changes that might address this.

What might cause this issue?

Thanks, Maarten

Building Library/Bee/artifacts/Android/d8kzr/libil2cpp.so failed with output: Library/Bee/artifacts/Android/d8kzr/uxnc_UXF.o: In function WebAWSDynamoDB_DDB_Setup_mA4ACCDF69FDF93A7DB6D48B7AADC0B7CA8270A61': /Users/mrstruijk/Current Unity Projects/Trauma/Trauma/Library/Bee/artifacts/Android/il2cppOutput/cpp/UXF.cpp:15735: undefined reference toDDB_Setup' Library/Bee/artifacts/Android/d8kzr/uxnc_UXF.o: In function WebAWSDynamoDB_DDB_CreateTable_mBEC1D8220C73DDE2D9C6868EEE477792D4B13CE9': /Users/mrstruijk/Current Unity Projects/Trauma/Trauma/Library/Bee/artifacts/Android/il2cppOutput/cpp/UXF.cpp:15772: undefined reference toDDB_CreateTable' Library/Bee/artifacts/Android/d8kzr/uxnc_UXF.o: In function WebAWSDynamoDB_DDB_PutItem_mAE56450BF66EEE64A056201160BE97B1B9A26B7F': /Users/mrstruijk/Current Unity Projects/Trauma/Trauma/Library/Bee/artifacts/Android/il2cppOutput/cpp/UXF.cpp:15809: undefined reference toDDB_PutItem' Library/Bee/artifacts/Android/d8kzr/uxnc_UXF.o: In function WebAWSDynamoDB_DDB_BatchWriteItem_m0A1C15D7D2A59806347427CBD2F1C681B762867B': /Users/mrstruijk/Current Unity Projects/Trauma/Trauma/Library/Bee/artifacts/Android/il2cppOutput/cpp/UXF.cpp:15842: undefined reference toDDB_BatchWriteItem' Library/Bee/artifacts/Android/d8kzr/uxnc_UXF.o: In function WebAWSDynamoDB_DDB_GetItem_m2B7D409CD47CE169E2B44CBA3C05F38BB80868B3': /Users/mrstruijk/Current Unity Projects/Trauma/Trauma/Library/Bee/artifacts/Android/il2cppOutput/cpp/UXF.cpp:15879: undefined reference toDDB_GetItem' Library/Bee/artifacts/Android/d8kzr/uxnc_UXF.o: In function WebAWSDynamoDB_DDB_Cleanup_mABFB23399CCD6BAE5115EDD6C3EF70194FD2D33F': /Users/mrstruijk/Current Unity Projects/Trauma/Trauma/Library/Bee/artifacts/Android/il2cppOutput/cpp/UXF.cpp:15904: undefined reference toDDB_Cleanup' Library/Bee/artifacts/Android/d8kzr/uxnc_UXF.o: In function WebAWSDynamoDB_GetUserInfo_m4A712105369BE2445004E7285CAD9177145113FB': /Users/mrstruijk/Current Unity Projects/Trauma/Trauma/Library/Bee/artifacts/Android/il2cppOutput/cpp/UXF.cpp:15913: undefined reference toGetUserInfo' /Users/mrstruijk/Current Unity Projects/Trauma/Trauma/Library/Bee/artifacts/Android/il2cppOutput/cpp/UXF.cpp:15913: undefined reference to GetUserInfo' Library/Bee/artifacts/Android/d8kzr/uxnc_UXF.o: In functionWebAWSDynamoDB_DDB_Cleanup_mABFB23399CCD6BAE5115EDD6C3EF70194FD2D33F': /Users/mrstruijk/Current Unity Projects/Trauma/Trauma/Library/Bee/artifacts/Android/il2cppOutput/cpp/UXF.cpp:15904: undefined reference to `DDB_Cleanup' clang++: error: linker command failed with exit code 1 (use -v to see invocation) UnityEditor.EditorApplication:Internal_CallGlobalEventHandler () (at /Users/bokken/buildslave/unity/build/Editor/Mono/EditorApplication.cs:462)

thefirstfloor commented 2 years ago

I had this issue too and ended up manually removing all WebAWSDynamoDB scripts as I was not using that platform anyway. That did the trick for me building for Quest. Goodluck, Jeroen

jackbrookes commented 2 years ago

Is this with Unity 2021? In general I suggest using only LTS builds of Unity, as these are the most stable, and what I develop UXF against.In the meantime, you can delete the WebAWSDynamoDB script, and I will see if I can replicate it.

mrstruijk commented 2 years ago

Thanks for the speedy replies @thefirstfloor & @jackbrookes !

Yes, I've been developing in 2021. Back when I started I figured that during the life-cycle of this program, 2021 would become LTS. I figured that this was a safer bet (since only upgrading within 2021) than to upgrade from 2020 to 2021 when the LTS-clock struck :). You would do differently?

I've deleted the WebAWSDynamoDB script, and building works like a charm again!

Thanks for the advice guys

jackbrookes commented 2 years ago

Its your call – typically I would not want to risk upgrading during a project. Even upgrading Unity 2021.2 to Unity 2021 LTS could cause unforeseen issues (I am still working day-to-day in Unity 2019) 

jackbrookes commented 2 years ago

I'll keep this open to see if I can find a better fix

Amarbd commented 2 years ago

Hi,

I have been facing the same issue as described above and have tried removing the WebAWSDynamoDB script. However, I get a new error when building to the Quest:

You are trying to replace or create a Prefab from the instance 'Web AWS DynamoDB' that references a missing script. This is not allowed.
Please change the script or remove it from the GameObject.
UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&)

I cannot seem to find what kind of instance is being replaced/created or where. Any suggestions?

Thanks!

Amar

thefirstfloor commented 2 years ago

Probably you deleted the script(s) that was living on a prefab, now Unity complains about that. That prefab might be somewhere in the UXF hierarchy in your project.

Amarbd commented 2 years ago

I removed the WebAWS Gameobject from the UXF_rig and now it works! Thanks!

jackbrookes commented 2 years ago

I can't replicate this issue: Can anyone who has this issue take a look at the settings when clicking on the AWSJS plugin? (Assets\UXF\Plugins\AWSJS.jslib) They should look like this.

image

jackbrookes commented 2 years ago

Released a new version which may help fix this: https://github.com/immersivecognition/unity-experiment-framework/releases/tag/2.4.3