I am trying to use a plugin ( Release VaRest 1.1-rc9 · ufna/VaRest · GitHub ) that was compiled for UE 4.9; my project is done in UE 4.11. When I try to open the project, it treis to rebuild the plugin, but it fails and it tells me to rebuild it manually.
Question is, how can I build a plugin? I tried following the documentation (Plugins in Unreal Engine | Unreal Engine 5.1 Documentation ), but I’m stuck at point 3: Rebuild your C++ project files … how to do that? The documentation is not really clear about this…
If I try with csc (using a command line like
csc /t:library /out:VaRestPlugin.dll VaRestPlugin.Build.cs
,
I get as a response:
VaRestPlugin.Build.cs(7,30): error CS0246: The type or namespace name 'ModuleRules' could not be found (are you missing a using directive or an assembly reference?)
How do I specify the assembly reference? If I try with something like
csc /t:library /r:ModuleRules.dll /out:VaRestPlugin.dll VaRestPlugin.Build.cs
of course I get as a response
error CS0006: Metadata file 'ModuleRules.dll' could not be found
If I try instead to import the project into Visual Studio, of course it cannot find the includes like Engine.h
, CoreUObject.h
, etc.
Also, reading the Build.cs of that particular plugin, I’ve seen that it’s getting a ThirdPartyPath:
private string ThirdPartyPath
{
get { return Path.GetFullPath(Path.Combine(ModulePath, "../../ThirdParty/")); }
}
I see that there are a lot of ThirdParty
subdirectories under the Engine
directory. Which one is the correct one? Do that means that I have to put the plugin somewhere inside the Engine
directory, in order to manually build it?