几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量

几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量 (http://www.dimcax.com/hust/index.php)
-   DirectDWG (http://www.dimcax.com/hust/forumdisplay.php?f=89)
-   -   【转帖】build for arm platform (http://www.dimcax.com/hust/showthread.php?t=15308)

yang686526 2009-05-04 05:12 PM

【转帖】build for arm platform
 
build for arm platform
build for arm platform
hello!
linker occurs error
>dd_armv4_db.lib(dbdatabaseload.obj) : error lnk2001: unresolved external symbol __gshandlercheck_eh
when i paste this code:
#pragma comment(lib, "dd_armv4_alloc.lib")
#pragma comment(lib, "dd_armv4_root.lib")
#pragma comment(lib, "dd_armv4_ge.lib")
#pragma comment(lib, "dd_armv4_gi.lib")
#pragma comment(lib, "dd_armv4_gs.lib")
#pragma comment(lib, "dd_armv4_spatialindex.lib")
#pragma comment(lib, "dd_armv4_db.lib")
#pragma comment(lib, "dd_armv4_dynblocks.lib")
#pragma comment(lib, "dd_armv4_ft.lib")
#pragma comment(lib, "dd_armv4_rxplotstylesvcs.lib")
and then calls oddbdatabase::createobject() i caught exception.
how can i fix this problem?
yes, i am call odinitialize.
oddbdatabaseptr od_db = oddbdatabase::createobject(); //success
od_db->initialize(); //fatal error
static dwg_services serv;
odinitialize(&serv);
serv.createdatabase(); //fatal error after call oddbdatabase::initialize();
i'm working with dwgdirect for a long time and this code always work without any problem, but on arm platform i am caught fatal exception
class dwg_services : public exsystemservices, public exhostappservices
{
protected:
odrx_using_heap_operators(exsystemservices);
};
dwg_services& od_services()
{
static odrxobjectimpl<dwg_services> dwg_services;
return dwg_services;
}
application theapp;
// application initialization
bool application::initinstance()
{
shinitextracontrols();
odrx_init_static_module_map();
odinitialize(&od_services());
setregistrykey(_t("local appwizard-generated applications"));
mainwindow* main_wnd = new mainwindow;
m_pmainwnd = main_wnd;
csingledoctemplate* pdoctemplate;
pdoctemplate = new csingledoctemplate(
idr_mainframe,
runtime_class(document),
runtime_class(mainwindow), // main sdi frame window
runtime_class(viewwindow));
if (!pdoctemplate)
return false;
adddoctemplate(pdoctemplate);
// parse command line for standard shell commands, dde, file open
ccommandlineinfo cmdinfo;
parsecommandline(cmdinfo);
// dispatch commands specified on the command line. will return false if
// app was launched with /regserver, /register, /unregserver or /unregister.
if (!processshellcommand(cmdinfo))
return false;
// the one and only window has been initialized, so show and update it
mainwindow::mainwnd().showwindow(sw_show);
mainwindow::mainwnd().updatewindow();
this->m_pmainwnd = &mainwindow::mainwnd();
return true;
}
oddbdatabaseptr application::create_database() const
{
return od_services().createdatabase();
}
od_services().createdatabase() always throw error.
i'm use visual studio 2005 sp1 with armv4_vc8 libs.
in 2.4 vc2005 arm build is probably broken.
it is fixed in 2.5, and our ce sample is ported to vc2005.
2.5 will be released presumably in november
vladimir


所有的时间均为北京时间。 现在的时间是 12:53 PM.