Compiling CEGUI for Windows

Get answers to all your basic programming questions. No Ogre questions, please!
User avatar
paul424
Gnome
Posts: 377
Joined: Thu May 24, 2012 7:16 pm
x 18

Compiling CEGUI for Windows

Post by paul424 »

Here, I will be gathering all info about my build of CEGUI for Windows with Visual Studio 2022 :

So far I have build several libraries, but it is still ranting about not fullfilled dependencies:
I follow this guide: http://cegui.org.uk/wiki/Building_from_source .
I am sure that I have at least one library from each required module there....
so far I get with cmake-gui :

Code: Select all

CMake Deprecation Warning at CMakeLists.txt:4 (cmake_minimum_required):
  Compatibility with CMake < 3.5 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.


CMake Deprecation Warning at CMakeLists.txt:6 (cmake_policy):
  The OLD behavior for policy CMP0017 will be removed from a future version
  of CMake.

  The cmake-policies(7) manual explains that the OLD behaviors of all
  policies are deprecated and that a policy should be set to OLD only under
  specific short-term circumstances.  Projects should be ported to the NEW
  behavior and not rely on setting a policy to OLD.


CMake Deprecation Warning at CMakeLists.txt:10 (cmake_policy):
  The OLD behavior for policy CMP0045 will be removed from a future version
  of CMake.

  The cmake-policies(7) manual explains that the OLD behaviors of all
  policies are deprecated and that a policy should be set to OLD only under
  specific short-term circumstances.  Projects should be ported to the NEW
  behavior and not rely on setting a policy to OLD.


Selecting Windows SDK version 10.0.22621.0 to target Windows 10.0.19045.
CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args` (FREETYPE)
  does not match the name of the calling package (Freetype).  This can lead
  to problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  cmake/CEGUIMacros.cmake:673 (find_package_handle_standard_args)
  cmake/FindFreetype.cmake:22 (cegui_find_package_handle_standard_args)
  CMakeLists.txt:84 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args` (MINIZIP)
  does not match the name of the calling package (Minizip).  This can lead to
  problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  cmake/CEGUIMacros.cmake:673 (find_package_handle_standard_args)
  cmake/FindMinizip.cmake:22 (cegui_find_package_handle_standard_args)
  CMakeLists.txt:85 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

Could NOT find MINIZIP (missing: MINIZIP_LIB MINIZIP_LIB_DBG MINIZIP_H_PATH) 
Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE) 
CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args` (FRIBIDI)
  does not match the name of the calling package (Fribidi).  This can lead to
  problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  cmake/CEGUIMacros.cmake:673 (find_package_handle_standard_args)
  cmake/CEGUIFindHelpers.cmake:78 (cegui_find_package_handle_standard_args)
  cmake/FindFribidi.cmake:6 (cegui_find_package)
  CMakeLists.txt:86 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

Could NOT find FRIBIDI (missing: FRIBIDI_FOUND_ALL_LIBS FRIBIDI_FOUND_ALL_LIBS_DBG FRIBIDI_INCLUDE_DIR) 
Could NOT find GLEW (missing: GLEW_LIB GLEW_LIB_DBG GLEW_H_PATH) 
Could NOT find GLM (missing: GLM_H_PATH) 
Could NOT find GLFW (missing: GLFW_LIB GLFW_LIB_DBG GLFW_H_PATH) 
Could NOT find GLFW3 (missing: GLFW3_LIB GLFW3_LIB_DBG GLFW3_H_PATH) 
Could NOT find SDL2 (missing: SDL2_LIB SDL2_LIB_DBG SDL2_H_PATH) 
CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args` (SDL2IMAGE)
  does not match the name of the calling package (SDL2_image).  This can lead
  to problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  cmake/CEGUIMacros.cmake:673 (find_package_handle_standard_args)
  cmake/FindSDL2_image.cmake:84 (cegui_find_package_handle_standard_args)
  CMakeLists.txt:97 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

Could NOT find SDL2IMAGE (missing: SDL2IMAGE_LIB SDL2IMAGE_LIB_DBG SDL2IMAGE_H_PATH) 
Found SFML 2.5.0 in C:/SFML-2.5.0/include
CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args` (DIRECTXSDK)
  does not match the name of the calling package (DirectXSDK).  This can lead
  to problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  cmake/FindDirectXSDK.cmake:39 (find_package_handle_standard_args)
  CMakeLists.txt:105 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

Could NOT find DIRECTXSDK (missing: DIRECTXSDK_LIB_PATH DIRECTXSDK_H_PATH DIRECTXSDK_MAX_D3D) 
CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args`
  (D3DX11EFFECTS) does not match the name of the calling package
  (D3DX11Effects).  This can lead to problems in calling code that expects
  `find_package` result variables (e.g., `_FOUND`) to follow a certain
  pattern.
Call Stack (most recent call first):
  cmake/CEGUIMacros.cmake:673 (find_package_handle_standard_args)
  cmake/FindD3DX11Effects.cmake:17 (cegui_find_package_handle_standard_args)
  CMakeLists.txt:106 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

Could NOT find D3DX11EFFECTS (missing: D3DX11EFFECTS_LIB D3DX11EFFECTS_LIB_DBG D3DX11EFFECTS_H_PATH) 
CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args` (IRRLICHT)
  does not match the name of the calling package (Irrlicht).  This can lead
  to problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  cmake/FindIrrlicht.cmake:11 (find_package_handle_standard_args)
  CMakeLists.txt:107 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

Could NOT find IRRLICHT (missing: IRRLICHT_LIB IRRLICHT_H_PATH) 
CMake Error at C:/ogreBuild/cmake/OGREConfig.cmake:91 (include):
  include could not find requested file:

C:/ogreBuild/cmake/OgreTargets.cmake
Call Stack (most recent call first):
  CMakeLists.txt:109 (find_package)


Found OGRE
  static     : OFF
  components : MeshLodGenerator;Paging;Property;RTShaderSystem;Terrain;Volume
  plugins    : Plugin_BSPSceneManager;Plugin_OctreeSceneManager;Plugin_PCZSceneManager;Plugin_ParticleFX;RenderSystem_GL;RenderSystem_GLES2;RenderSystem_GL3Plus;RenderSystem_Direct3D11;Codec_STBI
  media      : C:/ogreBuild/Media
CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args` (DIRECTFB)
  does not match the name of the calling package (DirectFB).  This can lead
  to problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  cmake/CEGUIMacros.cmake:673 (find_package_handle_standard_args)
  cmake/FindDirectFB.cmake:17 (cegui_find_package_handle_standard_args)
  CMakeLists.txt:128 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

Could NOT find DIRECTFB (missing: DIRECTFB_LIB DIRECTFB_LIB_DBG DIRECTFB_H_PATH) 
CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args` (OPENGLES)
  does not match the name of the calling package (OpenGLES).  This can lead
  to problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  cmake/FindOpenGLES.cmake:13 (find_package_handle_standard_args)
  CMakeLists.txt:129 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

Could NOT find OPENGLES (missing: OPENGLES_LIB OPENGLES_H_PATH) 
CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args` (EPOXY) does
  not match the name of the calling package (Epoxy).  This can lead to
  problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  cmake/FindEpoxy.cmake:10 (find_package_handle_standard_args)
  CMakeLists.txt:130 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

Could NOT find EPOXY (missing: EPOXY_LIB EPOXY_H_PATH) 
CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args` (XERCESC)
  does not match the name of the calling package (XercesC).  This can lead to
  problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  cmake/CEGUIMacros.cmake:673 (find_package_handle_standard_args)
  cmake/FindXercesC.cmake:18 (cegui_find_package_handle_standard_args)
  CMakeLists.txt:133 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

Could NOT find XERCESC (missing: XERCESC_LIB XERCESC_LIB_DBG XERCESC_H_PATH) 
Could NOT find LibXml2 (missing: LIBXML2_LIBRARIES LIBXML2_INCLUDE_DIR) 
CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args` (TINYXML)
  does not match the name of the calling package (TinyXML).  This can lead to
  problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  cmake/CEGUIMacros.cmake:673 (find_package_handle_standard_args)
  cmake/FindTinyXML.cmake:18 (cegui_find_package_handle_standard_args)
  CMakeLists.txt:135 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

Could NOT find TINYXML (missing: TINYXML_LIB TINYXML_LIB_DBG TINYXML_H_PATH) 
CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args` (TINYXML2)
  does not match the name of the calling package (TinyXML2).  This can lead
  to problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  cmake/CEGUIMacros.cmake:673 (find_package_handle_standard_args)
  cmake/FindTinyXML2.cmake:15 (cegui_find_package_handle_standard_args)
  CMakeLists.txt:136 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

Could NOT find TINYXML2 (missing: TINYXML2_LIB TINYXML2_LIB_DBG TINYXML2_H_PATH) 
CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args` (RAPIDXML)
  does not match the name of the calling package (RapidXML).  This can lead
  to problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  cmake/FindRapidXML.cmake:9 (find_package_handle_standard_args)
  CMakeLists.txt:137 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args` (IL) does
  not match the name of the calling package (DevIL).  This can lead to
  problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  cmake/CEGUIMacros.cmake:673 (find_package_handle_standard_args)
  cmake/FindDevIL.cmake:26 (cegui_find_package_handle_standard_args)
  CMakeLists.txt:139 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

Could NOT find IL (missing: IL_LIB IL_LIB_DBG IL_H_PATH) 
CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args` (ILU) does
  not match the name of the calling package (DevIL).  This can lead to
  problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  cmake/CEGUIMacros.cmake:673 (find_package_handle_standard_args)
  cmake/FindDevIL.cmake:27 (cegui_find_package_handle_standard_args)
  CMakeLists.txt:139 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

Could NOT find ILU (missing: ILU_LIB ILU_LIB_DBG) 
CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args` (FREEIMAGE)
  does not match the name of the calling package (FreeImage).  This can lead
  to problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  cmake/CEGUIMacros.cmake:673 (find_package_handle_standard_args)
  cmake/FindFreeImage.cmake:18 (cegui_find_package_handle_standard_args)
  CMakeLists.txt:140 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

Could NOT find SILLY (missing: SILLY_LIB SILLY_LIB_DBG SILLY_H_PATH) 
CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args` (CORONA)
  does not match the name of the calling package (Corona).  This can lead to
  problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  cmake/CEGUIMacros.cmake:673 (find_package_handle_standard_args)
  cmake/FindCorona.cmake:21 (cegui_find_package_handle_standard_args)
  CMakeLists.txt:142 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

Could NOT find CORONA (missing: CORONA_LIB CORONA_LIB_DBG CORONA_H_PATH) 
CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args` (PVRTOOLS)
  does not match the name of the calling package (PVRTools).  This can lead
  to problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  cmake/FindPVRTools.cmake:10 (find_package_handle_standard_args)
  CMakeLists.txt:143 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

Could NOT find PVRTOOLS (missing: PVRTOOLS_LIB PVRTOOLS_H_PATH) 
CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args` (LUA51) does
  not match the name of the calling package (Lua51).  This can lead to
  problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  cmake/CEGUIMacros.cmake:673 (find_package_handle_standard_args)
  cmake/FindLua51.cmake:17 (cegui_find_package_handle_standard_args)
  CMakeLists.txt:145 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

Could NOT find LUA51 (missing: LUA_LIB LUA_LIB_DBG LUA_H_PATH) 
Could NOT find TOLUAPP (missing: TOLUAPP_LIB TOLUAPP_LIB_DBG TOLUAPP_H_PATH) 
CMake Warning (dev) at CMakeLists.txt:147 (find_package):
  Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules
  are removed.  Run "cmake --help-policy CMP0148" for policy details.  Use
  the cmake_policy command to set the policy and suppress this warning.

This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at CMakeLists.txt:154 (find_package):
  Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules
  are removed.  Run "cmake --help-policy CMP0148" for policy details.  Use
  the cmake_policy command to set the policy and suppress this warning.

This warning is for project developers.  Use -Wno-dev to suppress it.

Could NOT find Boost (missing: python unit_test_framework timer) (found suitable version "1.71.0", minimum required is "1.36.0")
CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
  The package name passed to `find_package_handle_standard_args` (FREETYPE)
  does not match the name of the calling package (Freetype).  This can lead
  to problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  cmake/CEGUIMacros.cmake:673 (find_package_handle_standard_args)
  cmake/FindFreetype.cmake:22 (cegui_find_package_handle_standard_args)
  C:/Program Files/CMake/share/cmake-3.29/Modules/FindGTK2.cmake:680 (find_package)
  CMakeLists.txt:159 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

Some or all of the gtk libraries were not found. (missing: GTK2_GTK_LIBRARY GTK2_GTK_INCLUDE_DIR GTK2_GDK_INCLUDE_DIR GTK2_GDKCONFIG_INCLUDE_DIR GTK2_GDK_LIBRARY GTK2_GLIB_INCLUDE_DIR GTK2_GLIBCONFIG_INCLUDE_DIR GTK2_GLIB_LIBRARY) 
CMake Warning (dev) at CMakeLists.txt:201 (set):
  implicitly converting 'INT' to 'STRING' type.
This warning is for project developers.  Use -Wno-dev to suppress it.

Configuring incomplete, errors occurred!

Maybe someone did already that, especially I wonder whether I need gtk2 libs or glew, glm and other gl* libraries ?

User avatar
paul424
Gnome
Posts: 377
Joined: Thu May 24, 2012 7:16 pm
x 18

Re: Compiling CEGUI for Windows

Post by paul424 »

CMake Error at C:/ogreBuild/cmake/OGREConfig.cmake:91 (include):
include could not find requested file:

Code: Select all

C:/ogreBuild/cmake/OgreTargets.cmake

Call Stack (most recent call first):
CMakeLists.txt:109 (find_package)

User avatar
paul424
Gnome
Posts: 377
Joined: Thu May 24, 2012 7:16 pm
x 18

Re: Compiling CEGUI for Windows

Post by paul424 »

Seems I need to install Ogre system wide, how do I do it when I have it in OgreBuild ?

OGRE_H_BUILD_SETTINGS_PATH C:/ogre-1.12.13/ogre-1.12.13/OgreMain/include
OGRE_H_PATH C:/ogre-1.12.13/ogre-1.12.13/OgreMain/include

are those valid paths ?
I keep getting

Severity Code Description Project File Line Suppression State Details
Error (active) E1696 cannot open source file "OgreMatrix4.h" CEGUIOgreRenderer-0 C:\cegui-0\cegui\include\CEGUI\RendererModules\Ogre\GeometryBuffer.h 35

paroj
OGRE Team Member
OGRE Team Member
Posts: 2107
Joined: Sun Mar 30, 2014 2:51 pm
x 1132

Re: Compiling CEGUI for Windows

Post by paroj »

"install" on windows means you get a SDK folder as described here:
https://ogrecave.github.io/ogre/api/lat ... otoc_md273

you have to reference the sdk/include directory, not the one in source or the build folder.

User avatar
paul424
Gnome
Posts: 377
Joined: Thu May 24, 2012 7:16 pm
x 18

Re: Compiling CEGUI for Windows

Post by paul424 »

Many thanks , you helped me a lot. The same goes to boost libraries .... any advices how I am suppossed to compile boost ? One - thread - multi -thread ? , what architecture , what other specs ? So far the Windows 10 gives me inifinite series of windows store queries ( "which program do you wish to open it with ?") when compiling with the program b2.exe ; this leads to general hang of entire system.
Note this is not necessary for CEGUI but for my game ....

Boost build completed!

How do I make the ogre3d to work with OD-plus ?
Mind , that I prefer the custom build libraries -- C:\ogre-1.12.13\ogre-1.12.13 than an sdk ones : C:\ogre_sdk\ogre-sdk-v1.12.13-vc15-x64\ .....
Image

User avatar
Crystal Hammer
Gnome
Posts: 390
Joined: Sat Jun 23, 2007 5:16 pm
x 99

Re: Compiling CEGUI for Windows

Post by Crystal Hammer »

You could set the OGRE_DIR env. variable (info here). Not sure if PC restart is needed after.
Or input all needed Ogre paths in CMake-Gui.
Or as I found it easier to do if many times, edit CMakeCache.txt file in your build dir and there set/replace those OGRE_* needed paths.

paroj
OGRE Team Member
OGRE Team Member
Posts: 2107
Joined: Sun Mar 30, 2014 2:51 pm
x 1132

Re: Compiling CEGUI for Windows

Post by paroj »

paul424 wrote: Mon Apr 29, 2024 2:27 pm

How do I make the ogre3d to work with OD-plus ?
Mind , that I prefer the custom build libraries -- C:\ogre-1.12.13\ogre-1.12.13 than an sdk ones : C:\ogre_sdk\ogre-sdk-v1.12.13-vc15-x64\ .....

https://ogrecave.github.io/ogre/api/lat ... otoc_md273

User avatar
paul424
Gnome
Posts: 377
Joined: Thu May 24, 2012 7:16 pm
x 18

Re: Compiling CEGUI for Windows

Post by paul424 »

I almost have everything !
I'm really exited, many thanks for all the tips so far from you!
So far I have build Ogre without OgreOverlay and OgreBites and I am almost last step before approaching the linking step.
But I need OgreWindowEventUtilities.h

It requries to build the zlib:
I get

Code: Select all

Configuring done (0.8s)
CMake Error at Components/Overlay/CMakeLists.txt:44 (target_link_libraries):
  Target "OgreOverlay" links to:

ZLIB::ZLIB

  but the target was not found.  Possible reasons include:

* There is a typo in the target name.
* A find_package call is missing for an IMPORTED target.
* An ALIAS target is missing.

So far I have tried

choco install libpng
choco install zlib

but that traditionally , windowsish-ten does not work .... Any idea how I can get it ?

User avatar
Crystal Hammer
Gnome
Posts: 390
Joined: Sat Jun 23, 2007 5:16 pm
x 99

Re: Compiling CEGUI for Windows

Post by Crystal Hammer »

I didn't build old Ogre in a while. But I'm guessing it is either built in ogre-deps already
(but I don't see this repo anymore), maybe new scripts get and build it?
Or if you don't have it already built with Ogre, then I'd say getting its source from
http://www.zlib.net/
or here
https://github.com/madler/zlib
and building from sources, I see it has CMake, probably should be easy to build.

User avatar
sercero
Bronze Sponsor
Bronze Sponsor
Posts: 480
Joined: Sun Jan 18, 2015 4:20 pm
Location: Buenos Aires, Argentina
x 167

Re: Compiling CEGUI for Windows

Post by sercero »

The OGRE v1 dependencies are now compiled automatically when you hit "Configure" in CMake, at least in Windows.

In Linux, perhaps it uses the packages installed by the distro.

User avatar
paul424
Gnome
Posts: 377
Joined: Thu May 24, 2012 7:16 pm
x 18

Re: Compiling CEGUI for Windows

Post by paul424 »

FINALLY I VE GOT THE WORKING BINARY OF OPENDUNGEONS-PLUS !!!!

THANKS TO ALL THE PEOPLE WHO CONTRIBUTED WITH HELP!!!!

HOWEVER HERE'S A SMALL PROBLEM, WHEN TRYING TO LAUNCH THE GAME FROM ANOTHER MACHINE MY FRIEND GETS :

Code: Select all

15:24:25: Parsing script Adventurer.material
15:24:25: Error: ScriptCompiler - reference to a non existing object in Adventurer.material(2): RTShaderSystem.material

FOr sure it cannot find the later......
What the shape of resource.cfg should be , so it works on all machines ? :

Code: Select all

[OgreInternal]
FileSystem=Media/
FileSystem=Media/RTShaderLib/GLSL
FileSystem=Media/ShadowVolume



[Graphics]
FileSystem=RTShaderLib/materials
FileSystem=materials/scripts
FileSystem=materials/textures
FileSystem=models
FileSystem=particles
FileSystem=shaders

[GUI]
FileSystem=gui
FileSystem=gui/fonts
FileSystem=gui/schemas

[Music]
FileSystem=music

[Sound]
FileSystem=sounds



EDIT : I wrote too little. The required file is of course in RTShaderLib/materials, any reason why it sees on my machine, while fails on the other ?!

User avatar
Crystal Hammer
Gnome
Posts: 390
Joined: Sat Jun 23, 2007 5:16 pm
x 99

Re: Compiling CEGUI for Windows

Post by Crystal Hammer »

Congrats!
Is the ANOTHER MACHINE a Linux one? If so then file names are case sensitive, while on Windows not.
Other idea, is it running from same path as you? Is it run by script or link, that doesn't change path?

User avatar
paul424
Gnome
Posts: 377
Joined: Thu May 24, 2012 7:16 pm
x 18

Re: Compiling CEGUI for Windows

Post by paul424 »

NO, they are both Windows machines...
I prepared a zip file archieve. One just unpack it on his machine.
One should just double click on opendungeons_plus_d.exe so no path is changed...
Donno, I just learned that "Debug versions of applications and the various Visual C++ debug DLLs are not redistributable." so I need to prepare the Release version as well or a person without installed MS Visual Studio would end up with such errors about missing dlls : https://imjur.000.pe/uploads/1Ia80v.jpeg
But that another particular machine has those ( because the OD+ proceeds further then simply loading dlls there)...
As you seem to be working with MS visual studio code I can send you that bundle on priv as well ....

User avatar
Crystal Hammer
Gnome
Posts: 390
Joined: Sat Jun 23, 2007 5:16 pm
x 99

Re: Compiling CEGUI for Windows

Post by Crystal Hammer »

IDK about debug but, yeah that's normal.
No need for whole VS just the VS C++ redist, latest here:
https://learn.microsoft.com/en-US/cpp/w ... 9-and-2022
I'm installing it during Stunt Rally installer. And also the DirectX one.
Our script has some info about that on top: https://github.com/stuntrally/stuntrall ... taller.nsi
You can use this tool: https://dependencywalker.com/
to check your binary exe for all needed DLLs, like those that will be in above redists.

User avatar
paul424
Gnome
Posts: 377
Joined: Thu May 24, 2012 7:16 pm
x 18

Re: Compiling CEGUI for Windows

Post by paul424 »

Dependency Walker runs on Windows 95, 98, Me, NT, 2000, XP, 2003, Vista, 7, and 8. It can process any 32-bit or 64-bit Windows module, including ones designed for Windows CE. It can be run as graphical application or as a console application. Dependency Walker handles all types of module dependencies, including implicit, explicit (dynamic / runtime), forwarded, delay-loaded, and injected. A detailed help is included.

Seems so , here on Windows 10 the newest version crashes with my program binary image.

User avatar
paul424
Gnome
Posts: 377
Joined: Thu May 24, 2012 7:16 pm
x 18

Re: Compiling CEGUI for Windows

Post by paul424 »

After the third approach it works and opens the dependency tree.
How do I search with that tool particular dll , I know when the game launches it keeps asking about debug version of redistributable VS C++ libraries.
Now , How I am supposed to find that particular version of dll with Dependency Walker ? It's like looking for needle in hay stack.

User avatar
Crystal Hammer
Gnome
Posts: 390
Joined: Sat Jun 23, 2007 5:16 pm
x 99

Re: Compiling CEGUI for Windows

Post by Crystal Hammer »

Ok so first of all I'm not sure if Debug versions are inside those redists, I think they should, but maybe not.
Either way nobody really releases Debug builds in official releases etc. Debug is only for testing crashes etc.
I think you should build Release version. Well it will take less time but still, need to build Release versions of all deps.
Then you will have missing msvcp140.dll etc not msvcp140d.dll for Debug. If indeed debug dlls are not in redists (which I somewhat doubt).

Looks like you build with Visual Studio 2015, thus the 140 part in e.g. msvcp140.dll needed.
Perhaps this other redist for just 2015 is better?
https://www.microsoft.com/en-gb/downloa ... x?id=48145
The new way is that redist covering VS 2015-2019
https://helpdeskgeek.com/windows-10/how ... indows-10/
https://answers.microsoft.com/en-us/win ... 3fb7c38625

As for dependency walker, if you run it it will mark red any dll-s not present on the other PC where you try to start your build. These are all dlls you will have to either include yourself to be there (or have some redist install them like those msvc).
Either way you can also just open your exe with a binary viewer or notepad++ and search for all .dll, this will give similar result as dependency walker, meaning those are dll files you need to provide with your exe to work (or be somewhere in windows system32 etc).