PlaneShift
Development => Development Deliberation => Topic started by: ctlmo5 on March 23, 2007, 07:22:57 pm
-
Dear everyone
i am a entry level student for programming.
I really need HELP
i follow the PlaneShift Compiling Guide
Instralled:
1.Visual Studio 2005
2.Platform SDK for MSVC 8
(Cannot updata from http://www.microsoft.com/downloads/details.aspx?
FamilyId=A55B6B43-E24F-4EA3-A93E-40C0EC4F68E5&displaylang=en (http://www.microsoft.com/downloads/details.aspx?
FamilyId=A55B6B43-E24F-4EA3-A93E-40C0EC4F68E5&displaylang=en)
Therefore i download WindowsR Server 2003 SP1 Platform SDK ISO from
http://www.microsoft.com/downloads/info.aspx?
na=47&p=2&SrcDisplayLang=en&SrcCategoryId=&SrcFamilyId=A55B6B43-E24F-4EA3-A93E-
40C0EC4F68E5&u=details.aspx%3ffamilyid%3dD8EECD75-1FC4-49E5-BC66-9DA2B03D9B92%
26displaylang%3den (http://www.microsoft.com/downloads/info.aspx?
na=47&p=2&SrcDisplayLang=en&SrcCategoryId=&SrcFamilyId=A55B6B43-E24F-4EA3-A93E-
40C0EC4F68E5&u=details.aspx%3ffamilyid%3dD8EECD75-1FC4-49E5-BC66-9DA2B03D9B92%
26displaylang%3den))
And do the follower change in Visual C++ Directories -> Show directories
Executables files - C:\Program Files\Microsoft Platform SDK\Bin
Include files - C:\Program Files\Microsoft Platform SDK\include
Library files - C:\Program Files\Microsoft Platform SDK\lib )
3.CS Windows Libraries (installed in other folder, but using "Copy DLLs to a CS
directory" Set the directory to C:\development\CS)
4.cURL(C:\development\curl
5.WinCVS
6.TortoiseSVN
7.MySQL version 5.0.(c:\mysql\)
8.WordNet binaries, version 2.1.
Set Environment Variables:
Variable Name: CRYSTAL (all caps)
Variable Value: C:\development\cs
Variable Name: CEL (all caps)
Variable Value: C:\development\cel
Download Source Code:
Crystal Space (Using TortoiseSVN, C:\development\CS, revision number: 26286)
Crystal Entity Layer (Using TortoiseSVN, C:\development\cel, revision number: 2591)
PlaneShift (Using WinCVS, C:\development\planeshift)
Updating Sources:
Do not updata anything
Compile the Code:
Setup MSVC Environment:
"Include Files"
C:\development\CS\include
C:\development\CS\include\csutil\win32
C:\development\cel\include
C:\development\curl\include
C:\mysql\include
"Library Files"
C:\mysql\lib\opt
C:\development\curl\
Crystal Space (CS):
MSVC 8.0 open C:\development\CS\mk\msvc8\wkstypical.sln
Make sure that your specific 'msvc' folder has the 'read only' box unchecked before
continuing.(I do not know where 'read only' is)
'Build Solution'
After i select 'Build Solution' the program start to compile
However i have the error
c:\development\cs\include\csutil\zip.h(32) : fatal error C1083: Cannot open include file:
'zlib.h': No such file or directory
LINK : fatal error LNK1104: cannot open file '..\..\out\debug8\libs\libcrystalspace_d.lib'
.
.
.
Is that something wrong?
How can i fix it?
This is very important for me.
Please Help Me
-
Please, install IRC and visit #planeshift-build on Freenode. The people there offer great help for builders!
Anyway:
- What do you mean with "Cannot update from...". What needs to be updated?
- Did you install the correct version of the CS winlibs?
- Right-click on a folder, go to properties, at the bottom of that menu you see a checkbox with "Read only" behind it. Uncheck it.
-
i know that one. took a while to sort that one out
the compiler can't find the 'zlib.h' double check that you installed the cswin32 libraries to the right location and have told vs 2005 that they are there. once i did that that the whole thing compiled right the first time.
-
Thank You
i reinstall cswin32, the problem of zlib.h is sorted.
However there have many warning and.... new error....
Compiling resources...
Compiling manifest to resources...
Linking...
Creating library ..\..\out\debug8\build\plgvfs\plgvfs.lib and object ..\..\out\debug8\build\plgvfs\plgvfs.exp
libcrystalspace_d.lib(vfsplat.obj) : error LNK2019: unresolved external symbol __imp__SHGetPathFromIDListA@8 referenced in function "bool __cdecl GetShellFolderPath(int,char *)" (?GetShellFolderPath@@YA_NHPAD@Z)
libcrystalspace_d.lib(instpath.obj) : error LNK2001: unresolved external symbol __imp__SHGetPathFromIDListA@8
libcrystalspace_d.lib(vfsplat.obj) : error LNK2019: unresolved external symbol __imp__SHGetSpecialFolderLocation@12 referenced in function "bool __cdecl GetShellFolderPath(int,char *)" (?GetShellFolderPath@@YA_NHPAD@Z)
libcrystalspace_d.lib(instpath.obj) : error LNK2001: unresolved external symbol __imp__SHGetSpecialFolderLocation@12
libcrystalspace_d.lib(vfsplat.obj) : error LNK2019: unresolved external symbol __imp__SHGetMalloc@4 referenced in function "bool __cdecl GetShellFolderPath(int,char *)" (?GetShellFolderPath@@YA_NHPAD@Z)
libcrystalspace_d.lib(instpath.obj) : error LNK2001: unresolved external symbol __imp__SHGetMalloc@4
libcrystalspace_d.lib(instpath.obj) : error LNK2019: unresolved external symbol __imp__RegCloseKey@4 referenced in function "bool __cdecl GetRegistryInstallPath(struct HKEY__ * const,char *,unsigned long)" (?GetRegistryInstallPath@@YA_NQAUHKEY__@@PADK@Z)
libcrystalspace_d.lib(instpath.obj) : error LNK2019: unresolved external symbol __imp__RegQueryValueExA@24 referenced in function "bool __cdecl GetRegistryInstallPath(struct HKEY__ * const,char *,unsigned long)" (?GetRegistryInstallPath@@YA_NQAUHKEY__@@PADK@Z)
libcrystalspace_d.lib(instpath.obj) : error LNK2019: unresolved external symbol __imp__RegOpenKeyExA@20 referenced in function "bool __cdecl GetRegistryInstallPath(struct HKEY__ * const,char *,unsigned long)" (?GetRegistryInstallPath@@YA_NQAUHKEY__@@PADK@Z)
..\..\vfs.dll : fatal error LNK1120: 6 unresolved externals
Build log was saved at "file://c:\development\CS\out\debug8\build\plgvfs\BuildLog.htm"
plgvfs - 10 error(s), 0 warning(s)
And i have one more question
i understand what that "Read only" mean
but i do not know where is 'msvc' folder...
i am so sorry, i hope i do not boring you guys
-
Please, install IRC and visit #planeshift-build on Freenode. The people there offer great help for builders!
-
Make sure that shell32.dll, user32.dl,l and friends are being linked in. The usual culprit in these errors is VC8 not knowing that it should use those libraries by default (the Express Edition defaults simply to dragging kernel32.dll in)
-
Or just get VirtualBox from www.virtualbox.org, install Debian 4.0r0 on it, and then use that virtual machine for development. I even have a tested build script for that system (which also detects and, downloads and installs missing parts).