Register
Site Login
Site Search
Forums
Advertisement
Welcome to PocketMatrix. PocketMatrix is dedicated to providing the best online community for mobile device developers and enthusiests. What's new?

PocketFrog vs VS2005


PocketFrog vs VS2005

Postby dyn » Jul 23, 2005 @ 12:41pm

Had someone compile pf project under vs2005 beta2?

on this simple code:
Code: Select all









// main.cpp
#include "PocketFrog.h"

   int WINAPI WinMain(HINSTANCE hInstance,
       HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow )
{
  return 0;
}
// endof main.cpp
9 lines; 4 keywds; 1 nums; 8 ops; 1 strs; 2 coms    Syntactic Coloring v0.4 - Dan East  

linker says:
Error 1 error LNK2001: unresolved external symbol "const type_info::`vftable'" (??_7type_info@@6B@) main.obj
Error 2 error LNK2001: unresolved external symbol "const type_info::`vftable'" (??_7type_info@@6B@) atlsd.lib

if
Code: Select all



#include "PocketFrog.h"
//change on
#include "windows.h"
3 lines; 2 keywds; 0 nums; 0 ops; 2 strs; 1 coms    Syntactic Coloring v0.4 - Dan East  

it compiles without problems.

MSDN says:
This product does not currently support C++ exception handling or run-time Type Information. (KB191663) :D

Can someone help me?
User avatar
dyn
pm Member
 
Posts: 17
Joined: Dec 5, 2004 @ 10:05am


Postby chipxsd » Aug 20, 2005 @ 4:15pm

I'm having the same problems. I did compile the Pocket Frog library with VS2005's Pocket PC 2003 compiler, but with couple of these messages:
_CE_ACTIVEX was not defined because this Windows CE SDK does not have DCOM.
_CE_ACTIVEX could be caused to be defined by defining _CE_ALLOW_SINGLE_THREADED_OBJECTS_IN_MTA, but it is recommended that this be done only for single-threaded apps.
_ATL_NO_HOSTING was defined because _CE_ACTIVEX was not defined.

Then i tried to compile the "Alpha" sample application, first with my .lib and then with the original PocketFrog_ARM.lib - no success

Here's the log ouput:
------ Rebuild All started: Project: aplha_vs2005, Configuration: Debug Pocket PC 2003 (ARMV4) ------
Deleting intermediate and output files for project 'aplha_vs2005', configuration 'Debug|Pocket PC 2003 (ARMV4)'
Compiling...
Alpha.cpp
_CE_ACTIVEX was not defined because this Windows CE SDK does not have DCOM.
_CE_ACTIVEX could be caused to be defined by defining _CE_ALLOW_SINGLE_THREADED_OBJECTS_IN_MTA, but it is recommended that this be done only for single-threaded apps.
_ATL_NO_HOSTING was defined because _CE_ACTIVEX was not defined.
Compiling resources...
Linking...
Alpha.obj : error LNK2001: unresolved external symbol "const type_info::`vftable'" (??_7type_info@@6B@)
atlsd.lib(Externs.obj) : error LNK2001: unresolved external symbol "const type_info::`vftable'" (??_7type_info@@6B@)
atlsd.lib(AtlTraceModuleManager.obj) : error LNK2001: unresolved external symbol _CrtDbgReportW
atlsd.lib(atlcommodule.obj) : error LNK2001: unresolved external symbol _CrtDbgReportW
atlsd.lib(atlfuncs.obj) : error LNK2001: unresolved external symbol _CrtDbgReportW
atlsd.lib(atlbase.obj) : error LNK2001: unresolved external symbol _CrtDbgReportW
atlsd.lib(Allocate.obj) : error LNK2001: unresolved external symbol _CrtDbgReportW
Alpha.obj : error LNK2019: unresolved external symbol _CrtDbgReportW referenced in function "public: virtual int __cdecl Frog::Game::ProcessWindowMessage(struct HWND__ *,unsigned int,unsigned int,long,long &,unsigned long)" (?ProcessWindowMessage@Game@Frog@@UAAHPAUHWND__@@IIJAAJK@Z)
atlsd.lib(atltrace.obj) : error LNK2001: unresolved external symbol _CrtDbgReportW
atlsd.lib(Externs.obj) : error LNK2001: unresolved external symbol _CrtDbgReportW
atlsd.lib(AtlDebugAPI.obj) : error LNK2001: unresolved external symbol _CrtDbgReportW
Alpha.obj : error LNK2019: unresolved external symbol "public: void __cdecl Frog::Rasterizer::Clear(unsigned short)" (?Clear@Rasterizer@Frog@@QAAXG@Z) referenced in function "public: virtual bool __cdecl alphaSample::GameInit(void)" (?GameInit@alphaSample@@UAA_NXZ)
Alpha.obj : error LNK2019: unresolved external symbol "class Frog::Surface * __cdecl Frog::LoadImageW(unsigned int,wchar_t const *,struct HINSTANCE__ *)" (?LoadImageW@Frog@@YAPAVSurface@1@IPB_WPAUHINSTANCE__@@@Z) referenced in function "class Frog::Surface * __cdecl Frog::LoadImageW(class Frog::Display *,unsigned int,wchar_t const *,struct HINSTANCE__ *)" (?LoadImageW@Frog@@YAPAVSurface@1@PAVDisplay@1@IPB_WPAUHINSTANCE__@@@Z)
Alpha.obj : error LNK2019: unresolved external symbol "public: void __cdecl Frog::Rasterizer::SetBlending(unsigned char)" (?SetBlending@Rasterizer@Frog@@QAAXE@Z) referenced in function "public: virtual void __cdecl alphaSample::GameLoop(void)" (?GameLoop@alphaSample@@UAAXXZ)
Alpha.obj : error LNK2001: unresolved external symbol __CxxFrameHandler3
Alpha.obj : error LNK2019: unresolved external symbol memcpy_s referenced in function "bool __cdecl ocscpy_s(wchar_t *,unsigned int,wchar_t const *)" (?ocscpy_s@@YA_NPA_WIPB_W@Z)
Alpha.obj : error LNK2019: unresolved external symbol wcsncpy_s referenced in function "void __cdecl ATL::Checked::tcsncpy_s(wchar_t *,unsigned int,wchar_t const *,unsigned int)" (?tcsncpy_s@Checked@ATL@@YAXPA_WIPB_WI@Z)
atlsd.lib(AtlDebugAPI.obj) : error LNK2001: unresolved external symbol wcsncpy_s
atlsd.lib(AtlTraceModuleManager.obj) : error LNK2001: unresolved external symbol wcsncpy_s
atlsd.lib(AtlDebugAPI.obj) : error LNK2019: unresolved external symbol wcscpy_s referenced in function AtlTraceGetProcessInfo
atlsd.lib(atlbase.obj) : error LNK2019: unresolved external symbol memmove_s referenced in function "void __cdecl ATL::Checked::memmove_s(void *,unsigned int,void const *,unsigned int)" (?memmove_s@Checked@ATL@@YAXPAXIPBXI@Z)
atlsd.lib(Allocate.obj) : error LNK2001: unresolved external symbol memmove_s
Pocket PC 2003 (ARMV4)\Debug/aplha_vs2005.exe : fatal error LNK1120: 10 unresolved externals
Build log was saved at "file://d:\My Projects\PocketFrog\samples\alpha\aplha_vs2005\Pocket PC 2003 (ARMV4)\Debug\BuildLog.htm"
aplha_vs2005 - 23 error(s), 0 warning(s)
========== Rebuild All: 0 succeeded, 1 failed, 0 skipped ==========


I hope that someone will make Pocket Frog work in VS2005 someday :(
User avatar
chipxsd
pm Member
 
Posts: 33
Joined: Jul 12, 2004 @ 8:25am
Location: Slovenia (Europe)


Postby dyn » Aug 25, 2005 @ 4:32pm

I've already solved this problem.

eVC libs don't compile in vs2005 and vise versa.
I think this is because of changes in linker...

To solve this problem you should create new project (SmartDevice Lib) for PocketFrog, add PF source files, and recompile all libs you need.
That's all. :)

Btw, I have noticed strange thing: my project runs slower, when compiled in VS2005b2. :?
Average FPS:
compiled in VS2005 - ~25
compiled in eVC 4.0 - ~45
device - HP rx3715 (WM2003SE)
User avatar
dyn
pm Member
 
Posts: 17
Joined: Dec 5, 2004 @ 10:05am


Postby chipxsd » Aug 25, 2005 @ 10:10pm

Thanks, but I already managed to compile the library and some of the samples in PocketFrog.

I didn't noticed any slowdown, because I don't have the eVC installed. But i did notice you gain better performance if you build your project in Release mode (with speed optimization). I've noticed that with 'minimal' sample (in PocketHAL project). FPS jumped from 60fps (debug) to 160fps (release) :)

If there is someone on this forum who'd like to know how I managed to build the PocketFrog projects, let me know...
User avatar
chipxsd
pm Member
 
Posts: 33
Joined: Jul 12, 2004 @ 8:25am
Location: Slovenia (Europe)


Postby Conan » Aug 26, 2005 @ 7:31am

Daft question really, there's about 20 people who would welcome knowing what you did to get it to build. That's whe idea, one of us does it first to save all the others :)
What is Best in Life ?
User avatar
Conan
pm Member
 
Posts: 1309
Joined: Dec 24, 2001 @ 5:16am
Location: the Shades, Ankh-Morpock


Getting PocketFrog to run in VS 2005

Postby beemboy » Jun 26, 2008 @ 1:34am

Hello all,

I'm just getting into graphics programming on smartphones, and discovered PocketHAL (after finding D3DM to be rather lacking in support) and PocketFrog.

Here's roughly what I did to get PF compiling on VS 2005:
  1. Download PF from sourceforge here
  2. Unzip PocketFrog, and replace the entire PocketHAL directory with the latest one from here
  3. Open the PocketFrog eVC 3/4 project (.vcp extension) from inside the 'make' directory in VS 2005 and walk through the conversion
  4. Build
Note that the last step generates some warnings which you can ignore for starters (you can read about them here and here)

This generates the PF library. In order to get the 'alpha' sample to work, I then:
  1. Used the VS 2005 PocketFrog solution created above and added a new empty project in it called 'Alpha'
  2. Add all the existing files from the directory containing the alpha sample obtained by unzipping PocketFrog in step #2 above.
  3. I added a reference to the 'PocketFrog' project by right-clicking on the Alpha project and selecting 'References...'->'Add New Reference'
  4. I added a reference to the PocketHAL directory as an additional 'include' directory by going to 'Alpha' Project Properties->Configuration Properties->C/C++->Additional Include Directories. This is needed since the sample source includes <PocketFrog/PocketFrog.h>


This now runs fine on my HTC Excalibur (S620).

Hope this helps
-beemboy 8)
beemboy
pm Member
 
Posts: 3
Joined: Jun 25, 2008 @ 10:22pm


Return to PocketFrog & PocketHAL


Sort


Forum Description

SDKs for fast and robust device-independent access to Pocket PC display hardware.

Moderators:

sponge, Kzinti

Forum permissions

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

cron