Closed whalefood closed 4 years ago
Hi @whalefood, It looks like this DLL is included with Barracuda and is not available for those platforms according to their configuration in their package. I have assigned @mantasp for him to take a look.
I believe this is related to #3125, which I have mistakenly closed. I will reopen it.
Thanks for taking a look
You may be able to copy it, and only include it for android.
So, I just did a sort of hacky thing and got it to work. You can edit the Google.Protobuf.dll.meta file. Flip all of the Android platform enabled flags to 1. Then you should be able to build for Android.
This is where I found that file. You can open the Google.Protobuf.dll.meta
file with a text editor.
Modify the line
Exclude Android: 1
to
Exclude Android: 0
and then modify
- first:
Android: Android
second:
enabled: 0
settings:
CPU: ARMv7
to
Android: Android
second:
enabled: 1
settings:
CPU: ARMv7
The same could be done for iOS
Good to know. Thanks!
This fix worked for me, thank you! Just remember to Reimport the package after making the changes.
Is there a resolution for this issue that will work for Cloud Builds?
In unity 2019.3.3f1, ml-agent 0.14.1, I just had to update the Barracuda package from version 0.5.0 to version 0.6.0 and I was able to build without the error.
@JoRouss Good point, that was something that Barracuda addressed in the 0.6.0 release:
Fix: enabled Google Protobuf for all platforms as ML Agents rely on this package. Fixes building ML Agents on non-desktop platforms.
This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.
A project with mlagents won't compile when the platform is switched to android. Getting a bunch of reference errors:
"The type or namespace name 'Google' could not be found (are you missing a using directive or an assembly reference?)'
Looks like this is related to the google protobuf library. You can see the issue just in the example project.