New Gem doesn't have LmbrCentral Option in #include?

0

Hi,

I've made a new gem and am moving my c++ files to it so that I can reuse it in multiple projects. I changed the namespaces etc. to fit, added it to the waf files etc. but when building get this error:

        Build failed
<++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++>
Compilation failed - File: 'RigidBodyOscillatorComponent.cpp.144.obj', Module: 'Playground', Configuration: 'win_x64_vs2015|profile', error code 2
Input Files: 'd:\Repos\UES-lumberyard\dev\Gems\Playground\Code\Source\Components\RigidBodyOscillatorComponent.cpp'
Output Files: 'd:\Repos\UES-lumberyard\dev\BinTemp\win_x64_vs2015_profile\Gems\Playground\Code\Source\Components\RigidBodyOscillatorComponent.cpp.144.obj'
Command: 'D:\VS2015\VC\BIN\amd64\CL.exe /nologo /W3 /WX /MP /Gy /GF /Gm- /fp:fast /Zc:wchar_t /Zc:forScope /Gd /wd4530 /wd4351 /Ox /Ob2 /Ot /Oi /Oy- /FS /Wv:18 /bigobj /showIncludes /MD /Z7 /YuPlayground_precompiled.h /Fpd:\Repos\UES-lumberyard\dev\BinTemp\win_x64_vs2015_profile\Gems\Playground\Code\Source\Playground_precompiled.144.pch /GR- /Id:\Repos\UES-lumberyard\dev\BinTemp\win_x64_vs2015_profile\Gems\Playground\Code /Id:\Repos\UES-lumberyard\dev\Gems\Playground\Code /Id:\Repos\UES-lumberyard\dev\Code\SDKs\boost /Id:\Repos\UES-lumberyard\dev\Code\CryEngine\CryCommon /Id:\Repos\UES-lumberyard\dev\Gems\Playground\Code\Include /Id:\Repos\UES-lumberyard\dev\Gems\Playground\Code\Source /Id:\Repos\UES-lumberyard\dev\Code\CryEngine\CryAction /Id:\Repos\UES-lumberyard\dev\BinTemp\win_x64_vs2015_profile\Code\Framework\AzFramework /Id:\Repos\UES-lumberyard\dev\Code\Framework\AzFramework /Id:\Repos\UES-lumberyard\dev\BinTemp\win_x64_vs2015_profile\Code\Framework\GridMate /Id:\Repos\UES-lumberyard\dev\Code\Framework\GridMate /Id:\Repos\UES-lumberyard\dev\BinTemp\win_x64_vs2015_profile\Code\Framework\AzCore /Id:\Repos\UES-lumberyard\dev\Code\Framework\AzCore /ID:\VS2015\VC\INCLUDE /ID:\VS2015\VC\ATLMFC\INCLUDE /IC:\Program Files (x86)\Windows Kits\10\include\10.0.10240.0\ucrt /IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um /IC:\Program Files (x86)\Windows Kits\8.1\include\shared /IC:\Program Files (x86)\Windows Kits\8.1\include\um /IC:\Program Files (x86)\Windows Kits\8.1\include\winrt /Id:\Repos\UES-lumberyard\dev\Code\SDKs\rapidjson\include /Id:\Repos\UES-lumberyard\dev\Code\SDKs\rapidxml /Id:\Repos\UES-lumberyard\dev\Code\SDKs\Lua /Id:\Repos\UES-lumberyard\dev\Code\SDKs\zlib-common\include /D_WIN32 /D_WIN64 /DCODE_BASE_FOLDER="d:/Repos/UES-lumberyard/dev/Code/" /D_PROFILE /DPROFILE /DNDEBUG /DSCRIPTCANVAS_ERRORS_ENABLED /DBINFOLDER_NAME="Bin64vc140" /DPLATFORM_SUPPORTS_AWS_NATIVE_SDK /DUSE_WINDOWS_DLL_SEMANTICS /DLY_BUILD=526767 /D_MT /D_DLL /DAZ_ENABLE_TRACING /DAZ_ENABLE_DEBUG_TOOLS /DEXE_VERSION_INFO_0=1 /DEXE_VERSION_INFO_1=12 /DEXE_VERSION_INFO_2=0 /DEXE_VERSION_INFO_3=0 d:\Repos\UES-lumberyard\dev\Gems\Playground\Code\Source\Components\RigidBodyOscillatorComponent.cpp /c /Fo d:\Repos\UES-lumberyard\dev\BinTemp\win_x64_vs2015_profile\Gems\Playground\Code\Source\Components\RigidBodyOscillatorComponent.cpp.144.obj'
Output:
RigidBodyOscillatorComponent.cpp
d:\Repos\UES-lumberyard\dev\Gems\Playground\Code\Source\Components\RigidBodyOscillatorComponent.cpp(9): fatal error C1083: Cannot open include file: 'LmbrCentral\Physics\PhysicsComponentBus.h': No such file or directory
<++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++>

It appears that the lmbrCentral thing is not available as a #include, and when I try to add it manually by manually typing out the #include <Lmbr....> it comes up with LmbrAWS, but not LmbrCentral. It works perfectly fine in the original c++ files in the project itself.

Thanks in advance for any help

asked 6 years ago183 views
3 Answers
0
Accepted Answer

Doing:

#include <..\..\LmbrCentral\Code\include\LmbrCentral\Physics\PhysicsComponentBus.h>

works, but is a messy solution. Any better fixes?

answered 6 years ago
0

I tried to add the test1 project as a dependency to my playground gem like this:

    {
"GemFormatVersion": 4,
"Uuid": "9e1bf6a6cbb3432cb108c9e812a3e55a",
"Name": "Playground",
"DisplayName": "Playground",
"Version": "0.1.0",
"Summary": "All the code and assets we share between projects",
"Tags": ["Untagged"],
"IconPath": "preview.png",
"Modules": [
{
"Type": "GameModule"
}
],
"Dependencies": [
{
"Uuid": "4f2993c739444e33a766cc3d64efb8a1", //the uuid of the test1 project gem
"VersionConstraints": [
">=0.1"
],
"_comment": "Test1"
}
]
}

But it doesn't work :(

answered 6 years ago
0

My gem worked fine when I added LmbrCentral dependencies to the gem.JSON file

{

"Dependencies": [

    {

"Uuid": "ff06785f7145416b9d46fde39098cb0c",

      "VersionConstraints": [

">=0.1" ],

  "_comment": "LumbrCentral"

} ],

"GemFormatVersion": 4,

"Uuid": "7cf95b92295a4076b0093befaa36e7fd",

"Name": "Hands",

"DisplayName": "Hands",

"Version": "0.1.0",

"Summary": "Hands Gem.",

"Tags": ["Untagged"],

"IconPath": "preview.png",

    "Modules": [

{ "Type": "GameModule" } ]

}

answered 6 years ago

This post is closed: Adding new answers, comments, and votes is disabled.