A primer for new C++ developer volunteers on Win XP
I don't know what you mean by guidelines.
Guidelines for what?
For recompiling Celestia, you really need to read carefully the sticky messages that are at the top of the Development forum.
A primer for new C++ developer volunteers on Win XP at http://216.231.48.101/forum/viewtopic.php?t=3637
and
Free Windows-based compiling for Celestia at http://216.231.48.101/forum/viewtopic.php?t=6255
Anything more I can say would just be repeating them.
Guidelines for what?
For recompiling Celestia, you really need to read carefully the sticky messages that are at the top of the Development forum.
A primer for new C++ developer volunteers on Win XP at http://216.231.48.101/forum/viewtopic.php?t=3637
and
Free Windows-based compiling for Celestia at http://216.231.48.101/forum/viewtopic.php?t=6255
Anything more I can say would just be repeating them.
Selden
Hi!
My purpose of compiling Celestia is to modify its code so the user interface would be different so it could be used by Greek people.
I am going to describe to you what exactly I have done to correct me if I have done something wrong
1)I have downoloaded ths celestia cvs with TortoiseCvs then I copied the new created file named celestia and placed it to C:\celestia
2)I have put the two libraries folders inc and lib that I have downloaded from http://celestiaproject.net/celestia/files/winlibs-new.zip
3)Then I have placed in the C:\celestia the libpng1.dll and zlib.dll from my actual Celestia installation and finally
4)I have placed the cxx-setup.bat in the C:\celestia
When I tried to compile it I have succeed it and so the celestia.exe was created in C:\celestia but when I try to rebuild it through Microsoft Visual Studio C++.Net these mistakes appear:
LINK : warning LNK4075: ignoring '/EDITANDCONTINUE' due to '/INCREMENTAL:NO' specification
LINK : warning LNK4098: defaultlib 'LIBC' conflicts with use of other libs; use /NODEFAULTLIB:library
celestiacore.obj : error LNK2019: unresolved external symbol "class ColorTemperatureTable * __cdecl GetStarColorTable(enum ColorTableType)" (?GetStarColorTable@@YAPAVColorTemperatureTable@@W4ColorTableType@@@Z) referenced in function "public: void __thiscall CelestiaCore::charEntered(char const *,int)" (?charEntered@CelestiaCore@@QAEXPBDH@Z)
cel_engine.lib(render.obj) : error LNK2019: unresolved external symbol "class ColorTemperatureTable * __cdecl GetStarColorTable(enum ColorTableType)" (?GetStarColorTable@@YAPAVColorTemperatureTable@@W4ColorTableType@@@Z) referenced in function "public: virtual void __thiscall OrbitSampler::sample(double,class Point3<double> const &)" (?sample@OrbitSampler@@UAEXNABV?$Point3@N@@@Z)
winmain.obj : error LNK2001: unresolved external symbol _wglGetPixelFormatAttribivARB
winmain.obj : error LNK2001: unresolved external symbol _wglChoosePixelFormatARB
winmain.obj : error LNK2019: unresolved external symbol "bool __cdecl WGLExtensionSupported(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (?WGLExtensionSupported@@YA_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z) referenced in function "bool __cdecl SetDCPixelFormat(struct HDC__ *)" (?SetDCPixelFormat@@YA_NPAUHDC__@@@Z)
winmain.obj : error LNK2019: unresolved external symbol "void __cdecl InitWGLExtensions(struct HINSTANCE__ *)" (?InitWGLExtensions@@YAXPAUHINSTANCE__@@@Z) referenced in function _WinMain@16
cel_engine.lib(render.obj) : error LNK2019: unresolved external symbol "public: class Vec3ShaderParameter & __thiscall Vec3ShaderParameter::operator=(class Vector3<float> const &)" (??4Vec3ShaderParameter@@QAEAAV0@ABV?$Vector3@M@@@Z) referenced in function "void __cdecl renderSphere_GLSL(struct RenderInfo const &,struct LightingState const &,class RingSystem *,float,class Matrix4<float> const &,class Frustum const &,class GLContext const &)" (?renderSphere_GLSL@@YAXABURenderInfo@@ABULightingState@@PAVRingSystem@@MABV?$Matrix4@M@@ABVFrustum@@ABVGLContext@@@Z)
cel_engine.lib(render.obj) : error LNK2019: unresolved external symbol "public: class FloatShaderParameter & __thiscall FloatShaderParameter::operator=(float)" (??4FloatShaderParameter@@QAEAAV0@M@Z) referenced in function "void __cdecl renderSphere_GLSL(struct RenderInfo const &,struct LightingState const &,class RingSystem *,float,class Matrix4<float> const &,class Frustum const &,class GLContext const &)" (?renderSphere_GLSL@@YAXABURenderInfo@@ABULightingState@@PAVRingSystem@@MABV?$Matrix4@M@@ABVFrustum@@ABVGLContext@@@Z)
cel_engine.lib(render.obj) : error LNK2019: unresolved external symbol "public: class CelestiaGLProgram * __thiscall ShaderManager::getShader(class ShaderProperties const &)" (?getShader@ShaderManager@@QAEPAVCelestiaGLProgram@@ABVShaderProperties@@@Z) referenced in function "void __cdecl renderSphere_GLSL(struct RenderInfo const &,struct LightingState const &,class RingSystem *,float,class Matrix4<float> const &,class Frustum const &,class GLContext const &)" (?renderSphere_GLSL@@YAXABURenderInfo@@ABULightingState@@PAVRingSystem@@MABV?$Matrix4@M@@ABVFrustum@@ABVGLContext@@@Z)
cel_engine.lib(render.obj) : error LNK2019: unresolved external symbol "class ShaderManager & __cdecl GetShaderManager(void)" (?GetShaderManager@@YAAAVShaderManager@@XZ) referenced in function "void __cdecl renderSphere_GLSL(struct RenderInfo const &,struct LightingState const &,class RingSystem *,float,class Matrix4<float> const &,class Frustum const &,class GLContext const &)" (?renderSphere_GLSL@@YAXABURenderInfo@@ABULightingState@@PAVRingSystem@@MABV?$Matrix4@M@@ABVFrustum@@ABVGLContext@@@Z)
cel_engine.lib(render.obj) : error LNK2019: unresolved external symbol "public: void __thiscall ShaderProperties::setShadowCountForLight(unsigned int,unsigned int)" (?setShadowCountForLight@ShaderProperties@@QAEXII@Z) referenced in function "void __cdecl renderSphere_GLSL(struct RenderInfo const &,struct LightingState const &,class RingSystem *,float,class Matrix4<float> const &,class Frustum const &,class GLContext const &)" (?renderSphere_GLSL@@YAXABURenderInfo@@ABULightingState@@PAVRingSystem@@MABV?$Matrix4@M@@ABVFrustum@@ABVGLContext@@@Z)
cel_engine.lib(render.obj) : error LNK2019: unresolved external symbol "public: __thiscall ShaderProperties::ShaderProperties(void)" (??0ShaderProperties@@QAE@XZ) referenced in function "void __cdecl renderSphere_GLSL(struct RenderInfo const &,struct LightingState const &,class RingSystem *,float,class Matrix4<float> const &,class Frustum const &,class GLContext const &)" (?renderSphere_GLSL@@YAXABURenderInfo@@ABULightingState@@PAVRingSystem@@MABV?$Matrix4@M@@ABVFrustum@@ABVGLContext@@@Z)
cel_engine.lib(render.obj) : error LNK2019: unresolved external symbol "public: void __thiscall GLProgram::use(void)const " (?use@GLProgram@@QBEXXZ) referenced in function "public: void __thiscall CelestiaGLProgram::use(void)const " (?use@CelestiaGLProgram@@QBEXXZ)
cel_engine.lib(render.obj) : error LNK2019: unresolved external symbol "public: class Vec4ShaderParameter & __thiscall Vec4ShaderParameter::operator=(class Vector4<float> const &)" (??4Vec4ShaderParameter@@QAEAAV0@ABV?$Vector4@M@@@Z) referenced in function "void __cdecl setEclipseShadowShaderConstants(struct LightingState const &,float,class Matrix4<float> const &,class CelestiaGLProgram &)" (?setEclipseShadowShaderConstants@@YAXABULightingState@@MABV?$Matrix4@M@@AAVCelestiaGLProgram@@@Z)
cel_engine.lib(render.obj) : error LNK2019: unresolved external symbol "public: bool __thiscall ShaderProperties::usesFragmentLighting(void)const " (?usesFragmentLighting@ShaderProperties@@QBE_NXZ) referenced in function "void __cdecl setLightParameters_GLSL(class CelestiaGLProgram &,class ShaderProperties const &,struct LightingState const &,class Color,class Color)" (?setLightParameters_GLSL@@YAXAAVCelestiaGLProgram@@ABVShaderProperties@@ABULightingState@@VColor@@3@Z)
cel_engine.lib(render.obj) : error LNK2019: unresolved external symbol "public: bool __thiscall ShaderProperties::usesShadows(void)const " (?usesShadows@ShaderProperties@@QBE_NXZ) referenced in function "void __cdecl setLightParameters_GLSL(class CelestiaGLProgram &,class ShaderProperties const &,struct LightingState const &,class Color,class Color)" (?setLightParameters_GLSL@@YAXAAVCelestiaGLProgram@@ABVShaderProperties@@ABULightingState@@VColor@@3@Z)
cel_engine.lib(render.obj) : error LNK2019: unresolved external symbol "public: class Vec3ShaderParameter & __thiscall Vec3ShaderParameter::operator=(class Point3<float> const &)" (??4Vec3ShaderParameter@@QAEAAV0@ABV?$Point3@M@@@Z) referenced in function "void __cdecl renderRings_GLSL(class RingSystem &,struct RenderInfo &,struct LightingState const &,float,float,unsigned int,bool,unsigned int)" (?renderRings_GLSL@@YAXAAVRingSystem@@AAURenderInfo@@ABULightingState@@MMI_NI@Z)
cel_engine.lib(stardb.obj) : error LNK2019: unresolved external symbol "class Orbit * __cdecl CreateOrbit(class PlanetarySystem *,class AssociativeArray *,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,bool)" (?CreateOrbit@@YAPAVOrbit@@PAVPlanetarySystem@@PAVAssociativeArray@@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@_N@Z) referenced in function "public: class Star * __thiscall StarDatabase::createStar(unsigned int,class AssociativeArray *,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,bool)" (?createStar@StarDatabase@@QAEPAVStar@@IPAVAssociativeArray@@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@_N@Z)
cel_engine.lib(solarsys.obj) : error LNK2001: unresolved external symbol "class Orbit * __cdecl CreateOrbit(class PlanetarySystem *,class AssociativeArray *,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,bool)" (?CreateOrbit@@YAPAVOrbit@@PAVPlanetarySystem@@PAVAssociativeArray@@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@_N@Z)
cel_engine.lib(stardb.obj) : error LNK2019: unresolved external symbol "void __cdecl FillinRotationElements(class AssociativeArray *,class RotationElements &)" (?FillinRotationElements@@YAXPAVAssociativeArray@@AAVRotationElements@@@Z) referenced in function "public: class Star * __thiscall StarDatabase::createStar(unsigned int,class AssociativeArray *,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,bool)" (?createStar@StarDatabase@@QAEPAVStar@@IPAVAssociativeArray@@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@_N@Z)
cel_engine.lib(solarsys.obj) : error LNK2019: unresolved external symbol "void __cdecl FillinRotationElements(class AssociativeArray *,class RotationElements &)" (?FillinRotationElements@@YAXPAVAssociativeArray@@AAVRotationElements@@@Z) referenced in function "public: class std::locale::facet * __thiscall std::locale::facet::_Decref(void)" (?_Decref@facet@locale@std@@QAEPAV123@XZ)
cel_engine.lib(solarsys.obj) : error LNK2019: unresolved external symbol "bool __cdecl ParseDate(class AssociativeArray *,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,double &)" (?ParseDate@@YA_NPAVAssociativeArray@@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAN@Z) referenced in function "class Body * __cdecl CreatePlanet(class PlanetarySystem *,class Body *,class AssociativeArray *,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,enum Disposition,bool)" (?CreatePlanet@@YAPAVBody@@PAVPlanetarySystem@@PAV1@PAVAssociativeArray@@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@W4Disposition@@_N@Z)
.\Debug/Celestia.exe : fatal error LNK1120: 19 unresolved externals
Build log was saved at "file://c:\celestia\src\celestia\Debug\BuildLog.htm"
Celestia - 23 error(s), 15 warning(s)
---------------------- Done ----------------------
Build: 5 succeeded, 1 failed, 0 skipped
I really can not understand what is going wrong.
Thanks in advance.
My purpose of compiling Celestia is to modify its code so the user interface would be different so it could be used by Greek people.
I am going to describe to you what exactly I have done to correct me if I have done something wrong
1)I have downoloaded ths celestia cvs with TortoiseCvs then I copied the new created file named celestia and placed it to C:\celestia
2)I have put the two libraries folders inc and lib that I have downloaded from http://celestiaproject.net/celestia/files/winlibs-new.zip
3)Then I have placed in the C:\celestia the libpng1.dll and zlib.dll from my actual Celestia installation and finally
4)I have placed the cxx-setup.bat in the C:\celestia
When I tried to compile it I have succeed it and so the celestia.exe was created in C:\celestia but when I try to rebuild it through Microsoft Visual Studio C++.Net these mistakes appear:
LINK : warning LNK4075: ignoring '/EDITANDCONTINUE' due to '/INCREMENTAL:NO' specification
LINK : warning LNK4098: defaultlib 'LIBC' conflicts with use of other libs; use /NODEFAULTLIB:library
celestiacore.obj : error LNK2019: unresolved external symbol "class ColorTemperatureTable * __cdecl GetStarColorTable(enum ColorTableType)" (?GetStarColorTable@@YAPAVColorTemperatureTable@@W4ColorTableType@@@Z) referenced in function "public: void __thiscall CelestiaCore::charEntered(char const *,int)" (?charEntered@CelestiaCore@@QAEXPBDH@Z)
cel_engine.lib(render.obj) : error LNK2019: unresolved external symbol "class ColorTemperatureTable * __cdecl GetStarColorTable(enum ColorTableType)" (?GetStarColorTable@@YAPAVColorTemperatureTable@@W4ColorTableType@@@Z) referenced in function "public: virtual void __thiscall OrbitSampler::sample(double,class Point3<double> const &)" (?sample@OrbitSampler@@UAEXNABV?$Point3@N@@@Z)
winmain.obj : error LNK2001: unresolved external symbol _wglGetPixelFormatAttribivARB
winmain.obj : error LNK2001: unresolved external symbol _wglChoosePixelFormatARB
winmain.obj : error LNK2019: unresolved external symbol "bool __cdecl WGLExtensionSupported(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (?WGLExtensionSupported@@YA_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z) referenced in function "bool __cdecl SetDCPixelFormat(struct HDC__ *)" (?SetDCPixelFormat@@YA_NPAUHDC__@@@Z)
winmain.obj : error LNK2019: unresolved external symbol "void __cdecl InitWGLExtensions(struct HINSTANCE__ *)" (?InitWGLExtensions@@YAXPAUHINSTANCE__@@@Z) referenced in function _WinMain@16
cel_engine.lib(render.obj) : error LNK2019: unresolved external symbol "public: class Vec3ShaderParameter & __thiscall Vec3ShaderParameter::operator=(class Vector3<float> const &)" (??4Vec3ShaderParameter@@QAEAAV0@ABV?$Vector3@M@@@Z) referenced in function "void __cdecl renderSphere_GLSL(struct RenderInfo const &,struct LightingState const &,class RingSystem *,float,class Matrix4<float> const &,class Frustum const &,class GLContext const &)" (?renderSphere_GLSL@@YAXABURenderInfo@@ABULightingState@@PAVRingSystem@@MABV?$Matrix4@M@@ABVFrustum@@ABVGLContext@@@Z)
cel_engine.lib(render.obj) : error LNK2019: unresolved external symbol "public: class FloatShaderParameter & __thiscall FloatShaderParameter::operator=(float)" (??4FloatShaderParameter@@QAEAAV0@M@Z) referenced in function "void __cdecl renderSphere_GLSL(struct RenderInfo const &,struct LightingState const &,class RingSystem *,float,class Matrix4<float> const &,class Frustum const &,class GLContext const &)" (?renderSphere_GLSL@@YAXABURenderInfo@@ABULightingState@@PAVRingSystem@@MABV?$Matrix4@M@@ABVFrustum@@ABVGLContext@@@Z)
cel_engine.lib(render.obj) : error LNK2019: unresolved external symbol "public: class CelestiaGLProgram * __thiscall ShaderManager::getShader(class ShaderProperties const &)" (?getShader@ShaderManager@@QAEPAVCelestiaGLProgram@@ABVShaderProperties@@@Z) referenced in function "void __cdecl renderSphere_GLSL(struct RenderInfo const &,struct LightingState const &,class RingSystem *,float,class Matrix4<float> const &,class Frustum const &,class GLContext const &)" (?renderSphere_GLSL@@YAXABURenderInfo@@ABULightingState@@PAVRingSystem@@MABV?$Matrix4@M@@ABVFrustum@@ABVGLContext@@@Z)
cel_engine.lib(render.obj) : error LNK2019: unresolved external symbol "class ShaderManager & __cdecl GetShaderManager(void)" (?GetShaderManager@@YAAAVShaderManager@@XZ) referenced in function "void __cdecl renderSphere_GLSL(struct RenderInfo const &,struct LightingState const &,class RingSystem *,float,class Matrix4<float> const &,class Frustum const &,class GLContext const &)" (?renderSphere_GLSL@@YAXABURenderInfo@@ABULightingState@@PAVRingSystem@@MABV?$Matrix4@M@@ABVFrustum@@ABVGLContext@@@Z)
cel_engine.lib(render.obj) : error LNK2019: unresolved external symbol "public: void __thiscall ShaderProperties::setShadowCountForLight(unsigned int,unsigned int)" (?setShadowCountForLight@ShaderProperties@@QAEXII@Z) referenced in function "void __cdecl renderSphere_GLSL(struct RenderInfo const &,struct LightingState const &,class RingSystem *,float,class Matrix4<float> const &,class Frustum const &,class GLContext const &)" (?renderSphere_GLSL@@YAXABURenderInfo@@ABULightingState@@PAVRingSystem@@MABV?$Matrix4@M@@ABVFrustum@@ABVGLContext@@@Z)
cel_engine.lib(render.obj) : error LNK2019: unresolved external symbol "public: __thiscall ShaderProperties::ShaderProperties(void)" (??0ShaderProperties@@QAE@XZ) referenced in function "void __cdecl renderSphere_GLSL(struct RenderInfo const &,struct LightingState const &,class RingSystem *,float,class Matrix4<float> const &,class Frustum const &,class GLContext const &)" (?renderSphere_GLSL@@YAXABURenderInfo@@ABULightingState@@PAVRingSystem@@MABV?$Matrix4@M@@ABVFrustum@@ABVGLContext@@@Z)
cel_engine.lib(render.obj) : error LNK2019: unresolved external symbol "public: void __thiscall GLProgram::use(void)const " (?use@GLProgram@@QBEXXZ) referenced in function "public: void __thiscall CelestiaGLProgram::use(void)const " (?use@CelestiaGLProgram@@QBEXXZ)
cel_engine.lib(render.obj) : error LNK2019: unresolved external symbol "public: class Vec4ShaderParameter & __thiscall Vec4ShaderParameter::operator=(class Vector4<float> const &)" (??4Vec4ShaderParameter@@QAEAAV0@ABV?$Vector4@M@@@Z) referenced in function "void __cdecl setEclipseShadowShaderConstants(struct LightingState const &,float,class Matrix4<float> const &,class CelestiaGLProgram &)" (?setEclipseShadowShaderConstants@@YAXABULightingState@@MABV?$Matrix4@M@@AAVCelestiaGLProgram@@@Z)
cel_engine.lib(render.obj) : error LNK2019: unresolved external symbol "public: bool __thiscall ShaderProperties::usesFragmentLighting(void)const " (?usesFragmentLighting@ShaderProperties@@QBE_NXZ) referenced in function "void __cdecl setLightParameters_GLSL(class CelestiaGLProgram &,class ShaderProperties const &,struct LightingState const &,class Color,class Color)" (?setLightParameters_GLSL@@YAXAAVCelestiaGLProgram@@ABVShaderProperties@@ABULightingState@@VColor@@3@Z)
cel_engine.lib(render.obj) : error LNK2019: unresolved external symbol "public: bool __thiscall ShaderProperties::usesShadows(void)const " (?usesShadows@ShaderProperties@@QBE_NXZ) referenced in function "void __cdecl setLightParameters_GLSL(class CelestiaGLProgram &,class ShaderProperties const &,struct LightingState const &,class Color,class Color)" (?setLightParameters_GLSL@@YAXAAVCelestiaGLProgram@@ABVShaderProperties@@ABULightingState@@VColor@@3@Z)
cel_engine.lib(render.obj) : error LNK2019: unresolved external symbol "public: class Vec3ShaderParameter & __thiscall Vec3ShaderParameter::operator=(class Point3<float> const &)" (??4Vec3ShaderParameter@@QAEAAV0@ABV?$Point3@M@@@Z) referenced in function "void __cdecl renderRings_GLSL(class RingSystem &,struct RenderInfo &,struct LightingState const &,float,float,unsigned int,bool,unsigned int)" (?renderRings_GLSL@@YAXAAVRingSystem@@AAURenderInfo@@ABULightingState@@MMI_NI@Z)
cel_engine.lib(stardb.obj) : error LNK2019: unresolved external symbol "class Orbit * __cdecl CreateOrbit(class PlanetarySystem *,class AssociativeArray *,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,bool)" (?CreateOrbit@@YAPAVOrbit@@PAVPlanetarySystem@@PAVAssociativeArray@@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@_N@Z) referenced in function "public: class Star * __thiscall StarDatabase::createStar(unsigned int,class AssociativeArray *,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,bool)" (?createStar@StarDatabase@@QAEPAVStar@@IPAVAssociativeArray@@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@_N@Z)
cel_engine.lib(solarsys.obj) : error LNK2001: unresolved external symbol "class Orbit * __cdecl CreateOrbit(class PlanetarySystem *,class AssociativeArray *,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,bool)" (?CreateOrbit@@YAPAVOrbit@@PAVPlanetarySystem@@PAVAssociativeArray@@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@_N@Z)
cel_engine.lib(stardb.obj) : error LNK2019: unresolved external symbol "void __cdecl FillinRotationElements(class AssociativeArray *,class RotationElements &)" (?FillinRotationElements@@YAXPAVAssociativeArray@@AAVRotationElements@@@Z) referenced in function "public: class Star * __thiscall StarDatabase::createStar(unsigned int,class AssociativeArray *,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,bool)" (?createStar@StarDatabase@@QAEPAVStar@@IPAVAssociativeArray@@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@_N@Z)
cel_engine.lib(solarsys.obj) : error LNK2019: unresolved external symbol "void __cdecl FillinRotationElements(class AssociativeArray *,class RotationElements &)" (?FillinRotationElements@@YAXPAVAssociativeArray@@AAVRotationElements@@@Z) referenced in function "public: class std::locale::facet * __thiscall std::locale::facet::_Decref(void)" (?_Decref@facet@locale@std@@QAEPAV123@XZ)
cel_engine.lib(solarsys.obj) : error LNK2019: unresolved external symbol "bool __cdecl ParseDate(class AssociativeArray *,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,double &)" (?ParseDate@@YA_NPAVAssociativeArray@@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AAN@Z) referenced in function "class Body * __cdecl CreatePlanet(class PlanetarySystem *,class Body *,class AssociativeArray *,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,enum Disposition,bool)" (?CreatePlanet@@YAPAVBody@@PAVPlanetarySystem@@PAV1@PAVAssociativeArray@@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@W4Disposition@@_N@Z)
.\Debug/Celestia.exe : fatal error LNK1120: 19 unresolved externals
Build log was saved at "file://c:\celestia\src\celestia\Debug\BuildLog.htm"
Celestia - 23 error(s), 15 warning(s)
---------------------- Done ----------------------
Build: 5 succeeded, 1 failed, 0 skipped
I really can not understand what is going wrong.
Thanks in advance.
Re: Phase 1
Paolo wrote:1.3 Configure WinCVS
Now it is necessary to configure WinCVS.
Create a new folder on your Hard Disk.
I suggest to use a folder in the root.
As example my folder is: C:\CVS.
This folder will be the base for our local CVS tree.
1.4 Access to SourceForge
It is necessary to input the account settings to access Surceforge CVS Tree.
Open WinCVS
Activate the preferences dialog: Menu\Admin\Preferences...
In the general tab input:Code: Select all
Authentication: pserver
Path: /cvsroot/celestia
Host address: cvs.celestia.sourceforge.net
User name: anonymous
CVS root: anonymous@cvs.celestia.sourceforge.net:/cvsroot/celestia
In the WinCvs tab set the HOME path : "C:\CVS".
Now you can try to connect to the Sourceforge repository.
Activate the login dialog: Menu\Admin\Login...
Set the "Force Using -d" checkbox.
Press Ok
I've just downloaded winCVS 2.0.2.4 (build 4), and all these instructions seems to refer to buttons and commands that aren't in those places anymore. I'm totally clueless with winCVS, can someone please update these for the latest version?
All,
I also am new to Celestia Development... but not development per se. My language of choice is FORTRAN (please, no elderly jokes), and I have significant experience developing simulations. I have recently started using C++, and have enough knowledge to make me dangerous So, here's something I don't understand.
I downloaded the Celestia tree with Tortoise, installed Microsoft Platform SDK, and Microsoft Visual C++ Toolkit 2003 as recommended. I also set up a duplicate "MyCelestia" directory etc. per the "Free Windows-Based compiling for Celestia" sticky instructions.
When I first began to compile I noticed that a few things weren't being found... so I modified celvars.bat to look like this:
All was now found, but the compiler/librarian were still not happy. In checking the compiler flags in the various make files, I discovered the part I don't understand.
First, here is a list of the original debug compiler flags from L:\MyCelestia\src\celutil\Util.mak :
CPPFLAGS=/nologo /MLd /W3 /Gm /GX /ZI /Od /D "_DEBUG" /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D WINVER=0x0400 /D _WIN32_WINNT=0x0400 /Fp"$(INTDIR)\celestia.pch" /YX /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /GZ /c $(INCLUDEDIRS)
With the cl.exe compiler from Toolkit 2003, several of these options are obsolete: /MLd, /YX, /GX, /GZ. And option /Gm requires /Zi not /ZI. So, here's what I did. I replaced in every makefile
(debug)
/ZI with /Zi
/MLd with /MTd (single thread no longer supported)
/GX with /EHsc (equivalent)
/GZ with /RTC1 (equivalent)
(release)
/ML with /MT (single thread no longer supported)
/GX with /EHsc
I also replaced /YX with /Yc... and here's the problem. I get tons of massages that state :
which - I think - tells me that the pre-compiled header isn't being created quite right. Being new to C++, pre-compiled headers are still a mystery to me. But I'm pretty sure that replacing /YX with /Yc is the root of my problem. On-line reading tells me that I can create a list of headers that I want to precompile, but I'm at a loss. Should we include them all?
Finally, even though I get a ton of link warnings the build continues until:
.\Release\avicapture.obj : fatal error LNK1112: module machine type 'IA64' conflicts with target machine type 'X86'
I've poured over avicapture.cpp... and I just can't find anything that says it's an IA64 object. But even so, we include "Microsoft Platform SDK\Bin\win64" in the PATH statement, so maybe some things are OK to be 64 bit?
Thanks in advance,
JR[/code]
I also am new to Celestia Development... but not development per se. My language of choice is FORTRAN (please, no elderly jokes), and I have significant experience developing simulations. I have recently started using C++, and have enough knowledge to make me dangerous So, here's something I don't understand.
I downloaded the Celestia tree with Tortoise, installed Microsoft Platform SDK, and Microsoft Visual C++ Toolkit 2003 as recommended. I also set up a duplicate "MyCelestia" directory etc. per the "Free Windows-Based compiling for Celestia" sticky instructions.
When I first began to compile I noticed that a few things weren't being found... so I modified celvars.bat to look like this:
Code: Select all
Set PATH=C:\Program Files\Microsoft Visual C++ Toolkit 2003\bin;%PATH%
Set PATH=C:\Program Files\Microsoft Platform SDK\Bin\win64;%PATH%
Set INCLUDE=C:\Program Files\Microsoft Visual C++ Toolkit 2003\include;%INCLUDE%
Set LIB=C:\Program Files\Microsoft Visual C++ Toolkit 2003\lib;%LIB%
Set INCLUDE=C:\Program Files\Microsoft Platform SDK\Include;%INCLUDE%
Set LIB=C:\Program Files\Microsoft Platform SDK\Lib;%LIB%
Set INCLUDE=C:\Program Files\Microsoft Platform SDK\Include\mfc;%INCLUDE%
Set LIB=C:\Program Files\Microsoft Platform SDK\Lib\IA64\mfc;%LIB%
All was now found, but the compiler/librarian were still not happy. In checking the compiler flags in the various make files, I discovered the part I don't understand.
First, here is a list of the original debug compiler flags from L:\MyCelestia\src\celutil\Util.mak :
CPPFLAGS=/nologo /MLd /W3 /Gm /GX /ZI /Od /D "_DEBUG" /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D WINVER=0x0400 /D _WIN32_WINNT=0x0400 /Fp"$(INTDIR)\celestia.pch" /YX /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /GZ /c $(INCLUDEDIRS)
With the cl.exe compiler from Toolkit 2003, several of these options are obsolete: /MLd, /YX, /GX, /GZ. And option /Gm requires /Zi not /ZI. So, here's what I did. I replaced in every makefile
(debug)
/ZI with /Zi
/MLd with /MTd (single thread no longer supported)
/GX with /EHsc (equivalent)
/GZ with /RTC1 (equivalent)
(release)
/ML with /MT (single thread no longer supported)
/GX with /EHsc
I also replaced /YX with /Yc... and here's the problem. I get tons of massages that state :
Code: Select all
wintimer.obj : warning LNK4006: "void __cdecl SetMouseCursor(char const *)" (?SetMouseCursor@@YAXPEBD@Z) already defined in winutil.obj; second definition ignored
which - I think - tells me that the pre-compiled header isn't being created quite right. Being new to C++, pre-compiled headers are still a mystery to me. But I'm pretty sure that replacing /YX with /Yc is the root of my problem. On-line reading tells me that I can create a list of headers that I want to precompile, but I'm at a loss. Should we include them all?
Finally, even though I get a ton of link warnings the build continues until:
.\Release\avicapture.obj : fatal error LNK1112: module machine type 'IA64' conflicts with target machine type 'X86'
I've poured over avicapture.cpp... and I just can't find anything that says it's an IA64 object. But even so, we include "Microsoft Platform SDK\Bin\win64" in the PATH statement, so maybe some things are OK to be 64 bit?
Thanks in advance,
JR[/code]
All,
I also am new to Celestia Development... but not development per se. My language of choice is FORTRAN (please, no elderly jokes), and I have significant experience developing simulations. I have recently started using C++, and have enough knowledge to make me dangerous So, here's something I don't understand.
I downloaded the Celestia tree with Tortoise, installed Microsoft Platform SDK, and Microsoft Visual C++ Toolkit 2003 as recommended. I also set up a duplicate "MyCelestia" directory etc. per the "Free Windows-Based compiling for Celestia" sticky instructions.
When I first began to compile I noticed that a few things weren't being found... so I modified celvars.bat to look like this:
All was now found, but the compiler/librarian were still not happy. In checking the compiler flags in the various make files, I discovered the part I don't understand.
First, here is a list of the original debug compiler flags from L:\MyCelestia\src\celutil\Util.mak :
CPPFLAGS=/nologo /MLd /W3 /Gm /GX /ZI /Od /D "_DEBUG" /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D WINVER=0x0400 /D _WIN32_WINNT=0x0400 /Fp"$(INTDIR)\celestia.pch" /YX /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /GZ /c $(INCLUDEDIRS)
With the cl.exe compiler from Toolkit 2003, several of these options are obsolete: /MLd, /YX, /GX, /GZ. And option /Gm requires /Zi not /ZI. So, here's what I did. I replaced in every makefile
(debug)
/ZI with /Zi
/MLd with /MTd (single thread no longer supported)
/GX with /EHsc (equivalent)
/GZ with /RTC1 (equivalent)
(release)
/ML with /MT (single thread no longer supported)
/GX with /EHsc
I also replaced /YX with /Yc... and here's the problem. I get tons of massages that state :
which - I think - tells me that the pre-compiled header isn't being created quite right. Being new to C++, pre-compiled headers are still a mystery to me. But I'm pretty sure that replacing /YX with /Yc is the root of my problem. On-line reading tells me that I can create a list of headers that I want to precompile, but I'm at a loss. Should we include them all?
Finally, even though I get a ton of link warnings the build continues until:
.\Release\avicapture.obj : fatal error LNK1112: module machine type 'IA64' conflicts with target machine type 'X86'
I've poured over avicapture.cpp... and I just can't find anything that says it's an IA64 object. But even so, we include "Microsoft Platform SDK\Bin\win64" in the PATH statement, so maybe some things are OK to be 64 bit?
Thanks in advance,
JR[/code]
I also am new to Celestia Development... but not development per se. My language of choice is FORTRAN (please, no elderly jokes), and I have significant experience developing simulations. I have recently started using C++, and have enough knowledge to make me dangerous So, here's something I don't understand.
I downloaded the Celestia tree with Tortoise, installed Microsoft Platform SDK, and Microsoft Visual C++ Toolkit 2003 as recommended. I also set up a duplicate "MyCelestia" directory etc. per the "Free Windows-Based compiling for Celestia" sticky instructions.
When I first began to compile I noticed that a few things weren't being found... so I modified celvars.bat to look like this:
Code: Select all
Set PATH=C:\Program Files\Microsoft Visual C++ Toolkit 2003\bin;%PATH%
Set PATH=C:\Program Files\Microsoft Platform SDK\Bin\win64;%PATH%
Set INCLUDE=C:\Program Files\Microsoft Visual C++ Toolkit 2003\include;%INCLUDE%
Set LIB=C:\Program Files\Microsoft Visual C++ Toolkit 2003\lib;%LIB%
Set INCLUDE=C:\Program Files\Microsoft Platform SDK\Include;%INCLUDE%
Set LIB=C:\Program Files\Microsoft Platform SDK\Lib;%LIB%
Set INCLUDE=C:\Program Files\Microsoft Platform SDK\Include\mfc;%INCLUDE%
Set LIB=C:\Program Files\Microsoft Platform SDK\Lib\IA64\mfc;%LIB%
All was now found, but the compiler/librarian were still not happy. In checking the compiler flags in the various make files, I discovered the part I don't understand.
First, here is a list of the original debug compiler flags from L:\MyCelestia\src\celutil\Util.mak :
CPPFLAGS=/nologo /MLd /W3 /Gm /GX /ZI /Od /D "_DEBUG" /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D WINVER=0x0400 /D _WIN32_WINNT=0x0400 /Fp"$(INTDIR)\celestia.pch" /YX /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /GZ /c $(INCLUDEDIRS)
With the cl.exe compiler from Toolkit 2003, several of these options are obsolete: /MLd, /YX, /GX, /GZ. And option /Gm requires /Zi not /ZI. So, here's what I did. I replaced in every makefile
(debug)
/ZI with /Zi
/MLd with /MTd (single thread no longer supported)
/GX with /EHsc (equivalent)
/GZ with /RTC1 (equivalent)
(release)
/ML with /MT (single thread no longer supported)
/GX with /EHsc
I also replaced /YX with /Yc... and here's the problem. I get tons of massages that state :
Code: Select all
wintimer.obj : warning LNK4006: "void __cdecl SetMouseCursor(char const *)" (?SetMouseCursor@@YAXPEBD@Z) already defined in winutil.obj; second definition ignored
which - I think - tells me that the pre-compiled header isn't being created quite right. Being new to C++, pre-compiled headers are still a mystery to me. But I'm pretty sure that replacing /YX with /Yc is the root of my problem. On-line reading tells me that I can create a list of headers that I want to precompile, but I'm at a loss. Should we include them all?
Finally, even though I get a ton of link warnings the build continues until:
.\Release\avicapture.obj : fatal error LNK1112: module machine type 'IA64' conflicts with target machine type 'X86'
I've poured over avicapture.cpp... and I just can't find anything that says it's an IA64 object. But even so, we include "Microsoft Platform SDK\Bin\win64" in the PATH statement, so maybe some things are OK to be 64 bit?
Thanks in advance,
JR[/code]
-
- Posts: 216
- Joined: 30.10.2005
- With us: 19 years
How to get the C++ source code for Celestia with the latest WinCVS
The latest WinCVS has different menus than those described in
a previous post on this subject by Paolo. That is why this new
description is needed.
Step 1 Get Python. To download Python, go to the official Website. http://www.python.org/
Step 2 Get WinCVS, the Concurrent Versions System 2.0.51d http://www.wincvs.org/
Step 3 Enter info into WinCVS to prepare for getting source code
Step 3b Create a new folder on your Hard Disk. I suggest to
use a folder in the root. As an example my folder is: C:\CVS.
This folder will be the base for our local CVS tree.
Step 3c Use menu Admin:Preferences to set Home to c:\CVS
Step 3d Understand that the Sourceforge Repository is a
remote website. You will get your own copies of the source code
into your computer directory c:\CVS\celestia (or c:\celestia if
you make a mistake like I did).
Step 4 Communicate with the SourceForge website where the
C++ source code is kept
Step 4a Use the WinCVS menu Admin:Login...
A dialog window appears called Login settings.
Put a checkmark in the CVSROOT box
Step 4b
Paste this line in the login line for cvsroot
:pserver:anonymous@cvs.sourceforge.net:/cvsroot/celestia
Step 4c
When you are prompted for a password, do not type in anything,
just hit the OK button
The console should report your success with code 0, as shown
on 3 lines here:
cvs -d :pserver:anonymous@cvs.sourceforge.net:/cvsroot/celestia login
Logging in to :pserver:anonymous@cvs.sourceforge.net:2401:/cvsroot/celestia
***** CVS exited normally with code 0 *****
If you get code 1, try again. Maybe the connection is too busy to
service your login.
Step 4d Checkout the files with these commands. The first time
this is a checkout. Future WinCVS sessions are updates, and
the commands are the same.
Step 4e Use the menu Admin:Command Line...
Step 4f check the box for CVSROOT and put this line in the space
next to that box:
:pserver:anonymous@cvs.sourceforge.net:/cvsroot/celestia
Step 4f2 : check the box for Execute in directory, enter c:\CVS
Step 4g paste the command on the next line into the big empty command line box:
cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/celestia co -P celestia
Hit the OK button.
Wait while files are then listed as they are sent to your computer. The console will show stuff like this :
cvs -d :pserver:anonymous@cvs.sourceforge.net:/cvsroot/celestia -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/celestia co -P celestia (in directory C:\CVS)
cvs checkout: cwd=C:\CVS ,current=C:\CVS
cvs checkout: Updating celestia
U celestia/ABOUT-NLS
U celestia/AUTHORS
.
.
.
Wait while files are then listed as they are sent to your computer.
The files were put in c:\CVS\celestia
Also, download the Windows-specific shared libraries that aren't
included with Celestia on SourcForge. http://celestiaproject.net/celestia/files/winlibs-new.zip
Unzip these files and put them in a directory with the other
library files. I used :
C:\CVS\celestia\lib
C:\CVS\celestia\inc
And follow all the instructions in
http://www.celestiaproject.net/forum/viewtopic ... 7cca3cbb26
because there are .dll files to copy, things to edit, use Microsoft Internet Explorer to download and set up the SDK... Just read it all and do the work.
Now you have the files. There are many files to understand.
You can verify that the files have C++ code by looking at one
important looking file, like C:\CVS\celestia\src\celengine\render.cpp
The latest WinCVS has different menus than those described in
a previous post on this subject by Paolo. That is why this new
description is needed.
Step 1 Get Python. To download Python, go to the official Website. http://www.python.org/
Step 2 Get WinCVS, the Concurrent Versions System 2.0.51d http://www.wincvs.org/
Step 3 Enter info into WinCVS to prepare for getting source code
Step 3b Create a new folder on your Hard Disk. I suggest to
use a folder in the root. As an example my folder is: C:\CVS.
This folder will be the base for our local CVS tree.
Step 3c Use menu Admin:Preferences to set Home to c:\CVS
Step 3d Understand that the Sourceforge Repository is a
remote website. You will get your own copies of the source code
into your computer directory c:\CVS\celestia (or c:\celestia if
you make a mistake like I did).
Step 4 Communicate with the SourceForge website where the
C++ source code is kept
Step 4a Use the WinCVS menu Admin:Login...
A dialog window appears called Login settings.
Put a checkmark in the CVSROOT box
Step 4b
Paste this line in the login line for cvsroot
:pserver:anonymous@cvs.sourceforge.net:/cvsroot/celestia
Step 4c
When you are prompted for a password, do not type in anything,
just hit the OK button
The console should report your success with code 0, as shown
on 3 lines here:
cvs -d :pserver:anonymous@cvs.sourceforge.net:/cvsroot/celestia login
Logging in to :pserver:anonymous@cvs.sourceforge.net:2401:/cvsroot/celestia
***** CVS exited normally with code 0 *****
If you get code 1, try again. Maybe the connection is too busy to
service your login.
Step 4d Checkout the files with these commands. The first time
this is a checkout. Future WinCVS sessions are updates, and
the commands are the same.
Step 4e Use the menu Admin:Command Line...
Step 4f check the box for CVSROOT and put this line in the space
next to that box:
:pserver:anonymous@cvs.sourceforge.net:/cvsroot/celestia
Step 4f2 : check the box for Execute in directory, enter c:\CVS
Step 4g paste the command on the next line into the big empty command line box:
cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/celestia co -P celestia
Hit the OK button.
Wait while files are then listed as they are sent to your computer. The console will show stuff like this :
cvs -d :pserver:anonymous@cvs.sourceforge.net:/cvsroot/celestia -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/celestia co -P celestia (in directory C:\CVS)
cvs checkout: cwd=C:\CVS ,current=C:\CVS
cvs checkout: Updating celestia
U celestia/ABOUT-NLS
U celestia/AUTHORS
.
.
.
Wait while files are then listed as they are sent to your computer.
The files were put in c:\CVS\celestia
Also, download the Windows-specific shared libraries that aren't
included with Celestia on SourcForge. http://celestiaproject.net/celestia/files/winlibs-new.zip
Unzip these files and put them in a directory with the other
library files. I used :
C:\CVS\celestia\lib
C:\CVS\celestia\inc
And follow all the instructions in
http://www.celestiaproject.net/forum/viewtopic ... 7cca3cbb26
because there are .dll files to copy, things to edit, use Microsoft Internet Explorer to download and set up the SDK... Just read it all and do the work.
Now you have the files. There are many files to understand.
You can verify that the files have C++ code by looking at one
important looking file, like C:\CVS\celestia\src\celengine\render.cpp
Hi All:
Here you have a web page explaining how to configure WinCVs for Annonymous pserver authentication.
http://sourceforge.net/docman/display_d ... ous_config
I hope it will be helpful.
Jaa ne.
Here you have a web page explaining how to configure WinCVs for Annonymous pserver authentication.
http://sourceforge.net/docman/display_d ... ous_config
I hope it will be helpful.
Jaa ne.
Are Globemaker's instructions still valid? I downloaded Python 2.5 and
WinCVS 2.0.2.4 and for starters after installing both and restarting WinCVS
still thought that Python wasn't installed (I pointed it to the right dll folder and
it found TCL at least...).
After that, I tried logging into the server as described and I keep getting
either "code 1" errors, or it asks for a password, I hit OK, and it thinks for a
while and then gives me a code 1.
Am I doing something wrong here? Or are the instructions out of date again?
WinCVS 2.0.2.4 and for starters after installing both and restarting WinCVS
still thought that Python wasn't installed (I pointed it to the right dll folder and
it found TCL at least...).
After that, I tried logging into the server as described and I keep getting
either "code 1" errors, or it asks for a password, I hit OK, and it thinks for a
while and then gives me a code 1.
Am I doing something wrong here? Or are the instructions out of date again?
My Celestia page: Spica system, planetary magnitudes script, updated demo.cel, Quad system
- cartrite
- Posts: 1978
- Joined: 15.09.2005
- With us: 19 years 2 months
- Location: Pocono Mountains, Pennsylvania, USA Greate Grandfother from Irshava, Zakarpattia Oblast Ukraine
Malenfant wrote:
the addr changed from :pserver:anonymous@cvs.sourceforge.net:/cvsroot/celestia
to :pserver:anonymous@celestia.cvs.sourceforge.net:/cvsroot/celestia
Am I doing something wrong here? Or are the instructions out of date again?
the addr changed from :pserver:anonymous@cvs.sourceforge.net:/cvsroot/celestia
to :pserver:anonymous@celestia.cvs.sourceforge.net:/cvsroot/celestia
VivoBook_ASUSLaptop X712JA_S712JA Intel(R) UHD Graphics 8gb ram. Intel(R) Core(TM) i5-1035G1 CPU @ 1.00GHz, 1190 Mhz, 4 Core(s), 8 Logical Processor(s) 8 GB ram. Running on Windows 11 and OpenSuse 15.4
- cartrite
- Posts: 1978
- Joined: 15.09.2005
- With us: 19 years 2 months
- Location: Pocono Mountains, Pennsylvania, USA Greate Grandfother from Irshava, Zakarpattia Oblast Ukraine
I recently installed Microsoft Visual C++ 2005 Express Edition - ENU and the Platform SDK and was trying to build Celestia by the GUI from 2005 Express.
Every file failed to build because of the missing include file windows.h.
After some digging I found the way to set the environment variables with the C++ Express GUI. If you click on Tools => options it brings up a window. On the left side you should see a window that has Projects and Settings. Expand that and click on VC++ Directories. On the right hand side you should see a box for Show Directories for. Set it to Executable Files. Make sure the Platform SDK is before (on top of) $(VCInstallDir)bin. Do the same for Include and Lib by changing the box for Show Directories for.
Now go back to the Executable files. When you click on Platform SDK you should see a browse button to the right. You can browse to the location where the bin folder for Platform SDK is located. Mine was in C:\Program Files\Microsoft Platform SDK\Bin. Do the same for the Include directories and Lib directories.
After I did all this I still got an error for a missing header afxres.h.
I fixed this by adding a line to the Include window. I clicked on the browse button to the right and navigated to C:\Program Files\Microsoft Platform SDK\Include\mfc and moved that line just below the line for C:\Program Files\Microsoft Platform SDK\Include. Click on OK. Now it should build without errors just by right clicking on celestia in the left hand window and chose build. That creates a folder called Release in the Celestia's root directory and the Celestia executable is inside.
I ran into another problem when I tried to compile from the command line with makerelease.bat. I would get a link error that said libc could not be found. I found this post by Selden. http://www.celestiaproject.net/forum/viewtopic ... 7647#77647
So I copied libcmt.lib from C:\Program Files\Microsoft Visual Studio 8\VC\lib and renamed it to libc.lib. I get this warning but......eveything seems to work ok. Unlike building with qt4, I was unsure where to put /NODEFAULTLIB:library in the build files. I tried to put in winbuild.mak but that didn't work. Maybe this should be fixed the right way.
I hope this may be some help to those new to Microsoft Visual C++ 2005 Express Edition.
cartrite
Every file failed to build because of the missing include file windows.h.
After some digging I found the way to set the environment variables with the C++ Express GUI. If you click on Tools => options it brings up a window. On the left side you should see a window that has Projects and Settings. Expand that and click on VC++ Directories. On the right hand side you should see a box for Show Directories for. Set it to Executable Files. Make sure the Platform SDK is before (on top of) $(VCInstallDir)bin. Do the same for Include and Lib by changing the box for Show Directories for.
Now go back to the Executable files. When you click on Platform SDK you should see a browse button to the right. You can browse to the location where the bin folder for Platform SDK is located. Mine was in C:\Program Files\Microsoft Platform SDK\Bin. Do the same for the Include directories and Lib directories.
After I did all this I still got an error for a missing header afxres.h.
I fixed this by adding a line to the Include window. I clicked on the browse button to the right and navigated to C:\Program Files\Microsoft Platform SDK\Include\mfc and moved that line just below the line for C:\Program Files\Microsoft Platform SDK\Include. Click on OK. Now it should build without errors just by right clicking on celestia in the left hand window and chose build. That creates a folder called Release in the Celestia's root directory and the Celestia executable is inside.
I ran into another problem when I tried to compile from the command line with makerelease.bat. I would get a link error that said libc could not be found. I found this post by Selden. http://www.celestiaproject.net/forum/viewtopic ... 7647#77647
So I copied libcmt.lib from C:\Program Files\Microsoft Visual Studio 8\VC\lib and renamed it to libc.lib. I get this warning but......
Code: Select all
Generating Code...
link.exe @C:\DOCUME~1\cartrite\LOCALS~1\Temp\nm179.tmp
LINK : warning LNK4098: defaultlib 'LIBC' conflicts with use of other libs; use
/NODEFAULTLIB:library
cd ..
H:\celestia\msvc-test\celestia\src>cd ..
H:\celestia\msvc-test\celestia>copy src\celestia\Release\celestia.exe .
1 file(s) copied.
I hope this may be some help to those new to Microsoft Visual C++ 2005 Express Edition.
cartrite
VivoBook_ASUSLaptop X712JA_S712JA Intel(R) UHD Graphics 8gb ram. Intel(R) Core(TM) i5-1035G1 CPU @ 1.00GHz, 1190 Mhz, 4 Core(s), 8 Logical Processor(s) 8 GB ram. Running on Windows 11 and OpenSuse 15.4
- Chuft-Captain
- Posts: 1779
- Joined: 18.12.2005
- With us: 18 years 10 months
Theres now a 2008 version: http://www.microsoft.com/express/vc/
Has anyone tried compiling Celestia with this version, or is the 2005 version better/more stable?
Has anyone tried compiling Celestia with this version, or is the 2005 version better/more stable?
"Is a planetary surface the right place for an expanding technological civilization?"
-- Gerard K. O'Neill (1969)
CATALOG SYNTAX HIGHLIGHTING TOOLS LAGRANGE POINTS
-- Gerard K. O'Neill (1969)
CATALOG SYNTAX HIGHLIGHTING TOOLS LAGRANGE POINTS
- Chuft-Captain
- Posts: 1779
- Joined: 18.12.2005
- With us: 18 years 10 months
I thought that might be the case.
I googled for the 2005 version and all that came up (at least on page 1) was 2008 links.
Is it still possible to download 2005 version?
I googled for the 2005 version and all that came up (at least on page 1) was 2008 links.
Is it still possible to download 2005 version?
"Is a planetary surface the right place for an expanding technological civilization?"
-- Gerard K. O'Neill (1969)
CATALOG SYNTAX HIGHLIGHTING TOOLS LAGRANGE POINTS
-- Gerard K. O'Neill (1969)
CATALOG SYNTAX HIGHLIGHTING TOOLS LAGRANGE POINTS
- cartrite
- Posts: 1978
- Joined: 15.09.2005
- With us: 19 years 2 months
- Location: Pocono Mountains, Pennsylvania, USA Greate Grandfother from Irshava, Zakarpattia Oblast Ukraine
I just downloaded it a couple of days ago. Sorry I didn't bookmark the link. You have check out the 2008 links carefully. Somewhere, on one of them, in the upper right corner, is a link to previous versions.
cartrite
cartrite
VivoBook_ASUSLaptop X712JA_S712JA Intel(R) UHD Graphics 8gb ram. Intel(R) Core(TM) i5-1035G1 CPU @ 1.00GHz, 1190 Mhz, 4 Core(s), 8 Logical Processor(s) 8 GB ram. Running on Windows 11 and OpenSuse 15.4
- Chuft-Captain
- Posts: 1779
- Joined: 18.12.2005
- With us: 18 years 10 months
Thanks Cartrite,
That's not surprising. It seems M$ is always keen to recruit new beta-testers for their new versions (ie. Users )
Note the size of the button for the 2008 version!!!!
I shouldn't complain...at least this is free software!
I'll have a hunt for the link.
PS. What version is Chris using for current builds? 2003??
That's not surprising. It seems M$ is always keen to recruit new beta-testers for their new versions (ie. Users )
Note the size of the button for the 2008 version!!!!
I shouldn't complain...at least this is free software!
I'll have a hunt for the link.
PS. What version is Chris using for current builds? 2003??
"Is a planetary surface the right place for an expanding technological civilization?"
-- Gerard K. O'Neill (1969)
CATALOG SYNTAX HIGHLIGHTING TOOLS LAGRANGE POINTS
-- Gerard K. O'Neill (1969)
CATALOG SYNTAX HIGHLIGHTING TOOLS LAGRANGE POINTS
- cartrite
- Posts: 1978
- Joined: 15.09.2005
- With us: 19 years 2 months
- Location: Pocono Mountains, Pennsylvania, USA Greate Grandfother from Irshava, Zakarpattia Oblast Ukraine
I'm not sure. I think he is using a MinGW compiler to build the QT Gui he has been working on. Before that I think he was using vs2005.
http://www.microsoft.com/express/2005/
Scroll down the page to the c++ link.
cartrite
http://www.microsoft.com/express/2005/
Scroll down the page to the c++ link.
cartrite
VivoBook_ASUSLaptop X712JA_S712JA Intel(R) UHD Graphics 8gb ram. Intel(R) Core(TM) i5-1035G1 CPU @ 1.00GHz, 1190 Mhz, 4 Core(s), 8 Logical Processor(s) 8 GB ram. Running on Windows 11 and OpenSuse 15.4