Page 1 of 1

zgeskelet build

Posted: Mon Apr 10, 2017 6:37 am
by Jay3D
Hello
I am trying to get zgeskelet built, but I am unsuccessful.
I am following the guide ZgeSkelet Library ‐ How to Build
I can't seem to get step 5 to work.
I keep getting errors. First I was getting "Cannot open include file: 'cal3d/cal3d.h'". For some reason that stopped and switched to "Cannot open include file: 'GL/glew.h'".
I am trying to follow the instructions as closely as I can. I'm not sure if I am misunderstanding.
Please help.

Re: zgeskelet build

Posted: Mon Apr 10, 2017 11:52 am
by Jay3D
Okay. I got it done.
I had to move the OpenGL library files from the Win32GlutAndGlew folder to Cal3D source (src) folder.
Thanks for the tool.

Re: zgeskelet build

Posted: Mon Apr 10, 2017 12:27 pm
by Jay3D
The problem I am having now is with the android build.
I navigated to the Android folder, which contains one directory - jni, and run the command ndk-build.
I received this message: 'ndk_build' is not recognized as an internal or external command, operable program or batch file.
I already have Android NDK installed, and the Path variable set.
Have I done things correctly?

Re: zgeskelet build

Posted: Mon Apr 10, 2017 3:12 pm
by Jay3D
Well, with a few adjustments, I got it to build, but it quit with some major errors:
  • [armeabi] Compile++ thumb: ZgeSkelet <= ZgeSkelet.cpp
    In file included from jni/../../src/ZgeSkelet.cpp:47:
    In file included from jni/../../cal3d/src\cal3d/cal3d.h:37:
    In file included from jni/../../cal3d/src\cal3d/loader.h:27:
    jni/../../cal3d/src\cal3d/tinyxml.h:512:52: warning: 'this' pointer cannot be
    null in well-defined C++ code; pointer may be assumed to always convert to

    true [-Wundefined-bool-conversion]
    ...TiXmlDocument* ToDocument() const { return ( this && type
    == D...
    ^~~~ ~~
    jni/../../cal3d/src\cal3d/tinyxml.h:513:51: warning: 'this' pointer cannot be
    null in well-defined C++ code; pointer may be assumed to always convert to

    true [-Wundefined-bool-conversion]
    ...TiXmlElement* ToElement() const { return ( this && type == E...
    ^~~~ ~~
    jni/../../cal3d/src\cal3d/tinyxml.h:514:51: warning: 'this' pointer cannot be
    null in well-defined C++ code; pointer may be assumed to always convert to

    true [-Wundefined-bool-conversion]
    ...TiXmlComment* ToComment() const { return ( this && type == C...
    ^~~~ ~~
    jni/../../cal3d/src\cal3d/tinyxml.h:515:51: warning: 'this' pointer cannot be
    null in well-defined C++ code; pointer may be assumed to always convert to

    true [-Wundefined-bool-conversion]
    ...TiXmlUnknown* ToUnknown() const { return ( this && type == U...
    ^~~~ ~~
    jni/../../cal3d/src\cal3d/tinyxml.h:516:50: warning: 'this' pointer cannot be
    null in well-defined C++ code; pointer may be assumed to always convert to

    true [-Wundefined-bool-conversion]
    ...TiXmlText* ToText() const { return ( this && type == T...
    ^~~~ ~~
    jni/../../cal3d/src\cal3d/tinyxml.h:517:57: warning: 'this' pointer cannot be
    null in well-defined C++ code; pointer may be assumed to always convert to

    true [-Wundefined-bool-conversion]
    ...TiXmlDeclaration* ToDeclaration() const { return ( this && type == D...
    ^~~~ ~~
    jni/../../src/ZgeSkelet.cpp:63:1: error: expected unqualified-id
    EXPORT void* zsk_CreateCoreModel(char* name) {
    ^
    jni/../../src/ZgeSkelet.cpp:40:16: note: expanded from macro 'EXPORT'
    #define EXPORT "C"
    ^
    jni/../../src/ZgeSkelet.cpp:67:1: error: expected unqualified-id
    EXPORT void zsk_DestroyCoreModel(CalCoreModel* coreModel) {
    ^
    jni/../../src/ZgeSkelet.cpp:40:16: note: expanded from macro 'EXPORT'
    #define EXPORT "C"
    ^
    jni/../../src/ZgeSkelet.cpp:71:1: error: expected unqualified-id
    EXPORT bool zsk_LoadSkeleton(CalCoreModel* coreModel, char* file) {
    ^
    jni/../../src/ZgeSkelet.cpp:40:16: note: expanded from macro 'EXPORT'
    #define EXPORT "C"
    ^
    jni/../../src/ZgeSkelet.cpp:75:1: error: expected unqualified-id
    EXPORT bool zsk_LoadSkeletonBuffer(CalCoreModel* coreModel, void* buffer) {
    ^
    jni/../../src/ZgeSkelet.cpp:40:16: note: expanded from macro 'EXPORT'
    #define EXPORT "C"
    ^
    jni/../../src/ZgeSkelet.cpp:79:1: error: expected unqualified-id
    EXPORT int zsk_LoadAnimation(CalCoreModel* coreModel, char* file) {
    ^
    jni/../../src/ZgeSkelet.cpp:40:16: note: expanded from macro 'EXPORT'
    #define EXPORT "C"
    ^
    jni/../../src/ZgeSkelet.cpp:83:1: error: expected unqualified-id
    EXPORT int zsk_LoadAnimationBuffer(CalCoreModel* coreModel, void* buffer) {
    ^
    jni/../../src/ZgeSkelet.cpp:40:16: note: expanded from macro 'EXPORT'
    #define EXPORT "C"
    ^
    jni/../../src/ZgeSkelet.cpp:87:1: error: expected unqualified-id
    EXPORT int zsk_LoadMesh(CalCoreModel* coreModel, char* file) {
    ^
    jni/../../src/ZgeSkelet.cpp:40:16: note: expanded from macro 'EXPORT'
    #define EXPORT "C"
    ^
    jni/../../src/ZgeSkelet.cpp:91:1: error: expected unqualified-id
    EXPORT int zsk_LoadMeshBuffer(CalCoreModel* coreModel, void* buffer) {
    ^
    jni/../../src/ZgeSkelet.cpp:40:16: note: expanded from macro 'EXPORT'
    #define EXPORT "C"
    ^
    jni/../../src/ZgeSkelet.cpp:95:1: error: expected unqualified-id
    EXPORT int zsk_LoadMaterial(CalCoreModel* coreModel, int userId, char* file) {
    ^
    jni/../../src/ZgeSkelet.cpp:40:16: note: expanded from macro 'EXPORT'
    #define EXPORT "C"
    ^
    jni/../../src/ZgeSkelet.cpp:104:1: error: expected unqualified-id
    EXPORT int zsk_LoadMaterialBuffer(CalCoreModel* coreModel, int userId, v...
    ^
    jni/../../src/ZgeSkelet.cpp:40:16: note: expanded from macro 'EXPORT'
    #define EXPORT "C"
    ^
    jni/../../src/ZgeSkelet.cpp:113:1: error: expected unqualified-id
    EXPORT void zsk_CreateCoreMaterialThread(CalCoreModel* coreModel, int th...
    ^
    jni/../../src/ZgeSkelet.cpp:40:16: note: expanded from macro 'EXPORT'
    #define EXPORT "C"
    ^
    jni/../../src/ZgeSkelet.cpp:117:1: error: expected unqualified-id
    EXPORT void zsk_SetCoreMaterialId(CalCoreModel* coreModel,
    ^
    jni/../../src/ZgeSkelet.cpp:40:16: note: expanded from macro 'EXPORT'
    #define EXPORT "C"
    ^
    jni/../../src/ZgeSkelet.cpp:124:1: error: expected unqualified-id
    EXPORT void* zsk_CreateModelInstance(CalCoreModel* coreModel) {
    ^
    jni/../../src/ZgeSkelet.cpp:40:16: note: expanded from macro 'EXPORT'
    #define EXPORT "C"
    ^
    jni/../../src/ZgeSkelet.cpp:128:1: error: expected unqualified-id
    EXPORT void zsk_DestroyModelInstance(CalModel* modelInst) {
    ^
    jni/../../src/ZgeSkelet.cpp:40:16: note: expanded from macro 'EXPORT'
    #define EXPORT "C"
    ^
    jni/../../src/ZgeSkelet.cpp:132:1: error: expected unqualified-id
    EXPORT int zsk_AttachMesh(CalModel* modelInst, int meshId) {
    ^
    jni/../../src/ZgeSkelet.cpp:40:16: note: expanded from macro 'EXPORT'
    #define EXPORT "C"
    ^
    jni/../../src/ZgeSkelet.cpp:136:1: error: expected unqualified-id
    EXPORT int zsk_DetachMesh(CalModel* modelInst, int meshId) {
    ^
    jni/../../src/ZgeSkelet.cpp:40:16: note: expanded from macro 'EXPORT'
    #define EXPORT "C"
    ^
    jni/../../src/ZgeSkelet.cpp:140:1: error: expected unqualified-id
    EXPORT void zsk_SetLevelOfDetail(CalModel* modelInst, float lod) {
    ^
    jni/../../src/ZgeSkelet.cpp:40:16: note: expanded from macro 'EXPORT'
    #define EXPORT "C"
    ^
    jni/../../src/ZgeSkelet.cpp:144:1: error: expected unqualified-id
    EXPORT void zsk_BlendAnimCycle(CalModel* modelInst, int animationId, flo...
    ^
    jni/../../src/ZgeSkelet.cpp:40:16: note: expanded from macro 'EXPORT'
    #define EXPORT "C"
    ^
    jni/../../src/ZgeSkelet.cpp:148:1: error: expected unqualified-id
    EXPORT void zsk_ClearAnimCycle(CalModel* modelInst, int animationId, flo...
    ^
    jni/../../src/ZgeSkelet.cpp:40:16: note: expanded from macro 'EXPORT'
    #define EXPORT "C"
    ^
    fatal error: too many errors emitted, stopping now [-ferror-limit=]
    6 warnings and 20 errors generated.

    make: *** [obj/local/armeabi/objs/ZgeSkelet/src/ZgeSkelet.o] Error 1
Does any one know what cased these errors?

Re: zgeskelet build

Posted: Tue Apr 11, 2017 7:07 pm
by Rado1
Dear Jay3D, you can download compiled versions of ZgeSkelet library from here.

Re: zgeskelet build

Posted: Wed Apr 12, 2017 2:01 pm
by Jay3D
I was trying to access the previous link for these, but it was broken. Thanks

Re: zgeskelet build

Posted: Wed Apr 12, 2017 2:51 pm
by Jay3D
One question.
Do I put the .dll and .so files in ..\Template\base\libs?

Re: zgeskelet build

Posted: Wed Apr 12, 2017 4:43 pm
by Rado1
Put the .dll file to the same directory as .exe (or .zgeproj for development) and .so file to libs/armeabi folder (libzgeandroid.so is already there). You can see my examples.

Re: zgeskelet build

Posted: Wed Apr 12, 2017 8:48 pm
by Jay3D
Thanks.
Sorry to take up your time.
This one is clear -
and .so file to libs/armeabi folder
I don't understand this one -
Put the .dll file to the same directory as .exe (or .zgeproj for development)
There are two folders with .exe - the root, containing ZGameEditor.exe" and Tools, containing "upx.exe".
Neither of these folders contain a .zgeproj file.
I'm not sure what you mean.

Re: zgeskelet build

Posted: Thu Apr 13, 2017 6:45 am
by Rado1
Jay3D wrote:I don't understand this one -
Put the .dll file to the same directory as .exe (or .zgeproj for development)
To clarify it: DLLs of external libraries are usually put to the directory where your project resides (ZGE project has extension .zgeproj); not to the installation folder of ZGE. Some system libraries are taken from system's installation. Also when you compile your project to EXE file and distribute, the DLL must be placed in the same folder as EXE, by default (you can change it... but why?).

BTW, do not apologize for your questions, I'm happy to help users of ZGE and my libraries.

Re: zgeskelet build

Posted: Thu Apr 13, 2017 2:17 pm
by Jay3D
Now I gotcha. Thanks :)