From dnomaid at gmail.com Mon Apr 12 09:25:42 2010 From: dnomaid at gmail.com (=?KOI8-R?B?7cnU0SDiwczByM/O08vJyg==?=) Date: Mon Apr 12 09:25:51 2010 Subject: [xsde-users] "Hello world" document_pimpl::parse() crash when built in VS 2008 Message-ID: Hi all, I'm trying to engage XSD/e in a Windows Mobile 5.0 project. (To reproduce this you must have Windows Mobile 5.0 Smartphone SDK installed) First of all I build xsde.lib using the config from etc\vc-9.0\ (It builds for PocketPC2003/ARMv4 - can this be an issue?) Then I create Win32 Smart Device Project (Windows Mobile 5.0 Smartphone, Windows Application). I put the source code from examples\cxx\hybrid\hello\driver.cxx Into the WndProc(): case IDM_OK: { try { hello_paggr hello_p; xml_schema::document_pimpl doc_p (hello_p.root_parser (), hello_p.root_name ()); hello_p.pre (); static const char * KTestXml = "\ Hello\ sun\ moon\ world\ " ; doc_p.parse (KTestXml, strlen(KTestXml), true); } catch (const xml_schema::parser_exception& e) { return 1; } catch (const std::ios_base::failure&) { return 1; } } DestroyWindow(hWnd); break; Then I add 6 files generated by xsde.exe cxx-hybrid --no-long-long --generate-parser --generate-aggregate hello.xsd I specify xsde.lib in the Additional Dependencies section of the Linker-Input options secchk.lib in the Ignore Specific Library section It builds ok. Then I put a break-point on the line: doc_p.parse (KTestXml, strlen(KTestXml), true); I press F5, the debug starts, the blank window with Ok softkey shows (on the device or the emulator) Then I press Ok, the breakpoint hits, I press F10 and the program crashes (the DestroyWindow(hWnd); line doesn't get executed) The following lines appear in the Output Window: Data Abort: Thread=81dd0918 Proc=802fe110 'XSDETest2.exe' AKY=00080001 PC=0001195c(XSDETest2.exe+0x0000195c) RA=0001193c(XSDETest2.exe+0x0000193c) BVA=28000000 FSR=00000007 Thanks in advance -- Best regards, Dmitry Balakhonsky From boris at codesynthesis.com Mon Apr 12 10:05:55 2010 From: boris at codesynthesis.com (Boris Kolpackov) Date: Mon Apr 12 09:58:39 2010 Subject: [xsde-users] "Hello world" document_pimpl::parse() crash when built in VS 2008 In-Reply-To: References: Message-ID: Hi Dmitry, Dmitry Balakhonsky writes: > First of all I build xsde.lib using the config from etc\vc-9.0\ > (It builds for PocketPC2003/ARMv4 - can this be an issue?) > Then I create Win32 Smart Device Project (Windows Mobile 5.0 > Smartphone, Windows Application). Yes, this is most likely the problem. I am surprised you didn't get any link errors. I suggest that you perform the following steps to build xsde.lib for the "Windows Mobile 5.0 Smartphone/Win32" target: 1. Use one of the WinCE configuration files in etc\vc-9\ as a base but adjust the values in the "Toolchain" section to match your target. The best way is to open the "Project Properties" dialog for the Win32 Smart Device project you have created and copy the command lines from there. At a minimum, you will want to replace the CPPFLAGS variable values since they are all ARM- specific. 2. Copy the vcvarssd.bat file from the same directory and update it to match your setup. The instructions in this file will guide you for where to look for possible values. 3. In a new terminal window, execute the BAT-file created on step 2. Then build xsde.lib with nmake. Let us know if this doesn't help. Boris From dnomaid at gmail.com Tue Apr 13 04:36:12 2010 From: dnomaid at gmail.com (=?KOI8-R?B?7cnU0SDiwczByM/O08vJyg==?=) Date: Tue Apr 13 04:36:20 2010 Subject: [xsde-users] "Hello world" document_pimpl::parse() crash when built in VS 2008 In-Reply-To: References: Message-ID: > 1. Use one of the WinCE configuration files in etc\vc-9\ as a base > ? but adjust the values in the "Toolchain" section to match your > ? target. The best way is to open the "Project Properties" dialog > ? for the Win32 Smart Device project you have created and copy > ? the command lines from there. At a minimum, you will want to > ? replace the CPPFLAGS variable values since they are all ARM- > ? specific. Now cl.exe command line looks like this: cl.exe /DARM /D_ARM /DUNDER_CE /DWINCE /D_WIN32_WCE=0x501 /DNDEBUG /DWIN32_PLATFORM_WFSP /D_WINDOWS /D_ARM_ /DARMV4I /D_UNICODE /DUNICODE /nologo /W3 /O1 /GR- /MT /GS- /FD /EHsc /fp:fast /I.. /EHs /EHs /EHs /c /TP cxx\serializer\validating\unsigned-long.cxx /Focxx\serializer\validating\unsigned-long.obj While I compile my project with: /O2 /Os /GL /D "NDEBUG" /D "_WIN32_WCE=0x501" /D "UNDER_CE" /D "WIN32_PLATFORM_WFSP" /D "WINCE" /D "_WINDOWS" /D "ARM" /D "_ARM_" /D "ARMV4I" /D "_UNICODE" /D "UNICODE" /FD /EHsc /fp:fast /GR- /W3 /nologo /c /Zi /TP (I omitted some specific defines and output paths) > 2. Copy the vcvarssd.bat file from the same directory and update it > ? to match your setup. The instructions in this file will guide you > ? for where to look for possible values. I changed the following lines: SET RUNTIME=armv4i SET INCLUDE=%VCINSTALLDIR%\CE\ATLMFC\INCLUDE;%VCINSTALLDIR%\CE\INCLUDE;C:\Program Files\Windows Mobile 5.0 SDK R2\Smartphone\include\armv4i;%INCLUDE% SET LIB=%VCINSTALLDIR%\CE\ATLMFC\LIB\%RUNTIME%;%VCINSTALLDIR%\CE\LIB\%RUNTIME%;c:\Program Files\Windows Mobile 5.0 SDK R2\Smartphone\Lib\%RUNTIME%;%LIB% > Let us know if this doesn't help. Now the program crashes, but shows Unhandled exception at 0x00011c64 in XSDETest.exe: 0xC0000005: Access violation writing location 0x0003e628. The xutility file opens and the yellow arrow points to the line (*_Pnext)->_Mycont = 0; of the _Container_base_secure::_Orphan_all() function The call stack is like: > XSDETest.exe!std::_Container_base_secure::_Orphan_all(void) Line: 225, Byte Offsets: 0x70 C++ XSDETest.exe!std::_Container_base_secure::~_Container_base_secure(void) Line: 117, Byte Offsets: 0x14 C++ XSDETest.exe!std::_String_base::~_String_base(void) Line: 0, Byte Offsets: 0xffffffff C++ XSDETest.exe!std::_String_val >::~_String_val >(void) Line: 0, Byte Offsets: 0xffffffff C++ XSDETest.exe!std::basic_string,std::allocator >::~basic_string,std::allocator >(void) Line: 917, Byte Offsets: 0x28 C++ XSDETest.exe!hello_pskel::sequence_0(unsigned long int& state = 0, unsigned long int& count = 0, xsde::cxx::ro_string& ns = {...}, xsde::cxx::ro_string& n = {...}, bool start = false) Line: 283, Byte Offsets: 0x1a8 C++ XSDETest.exe!hello_pskel::_end_element_impl(xsde::cxx::ro_string& ns = {...}, xsde::cxx::ro_string& n = {...}) Line: 202, Byte Offsets: 0xfc C++ ?_end_element@complex_content@validating@parser@cxx@xsde@@UAAXABUro_string@45@0@Z ?end_element_@document_pimpl@expat@parser@cxx@xsde@@IAAXPBD@Z XML_Parse XML_Parse XML_Parse XML_Parse XML_Parse XML_ParseBuffer ?parse@document_pimpl@expat@parser@cxx@xsde@@QAAXPBXI_N@Z XSDETest.exe!main(int argc = -2116561702, wchar_t** argv = 0x00000000) Line: 57, Byte Offsets: 0x154 C++ -- Best regards, Dmitry Balakhonsky From boris at codesynthesis.com Tue Apr 13 05:38:51 2010 From: boris at codesynthesis.com (Boris Kolpackov) Date: Tue Apr 13 05:29:25 2010 Subject: [xsde-users] "Hello world" document_pimpl::parse() crash when built in VS 2008 In-Reply-To: References: Message-ID: Hi Dmitry, Dmitry Balakhonsky writes: > Now cl.exe command line looks like this: > cl.exe /DARM /D_ARM /DUNDER_CE /DWINCE /D_WIN32_WCE=0x501 /DNDEBUG > /DWIN32_PLATFORM_WFSP /D_WINDOWS /D_ARM_ /DARMV4I /D_UNICODE /DUNICODE > /nologo /W3 /O1 /GR- /MT /GS- /FD /EHsc /fp:fast /I.. /EHs /EHs /EHs > /c /TP cxx\serializer\validating\unsigned-long.cxx > /Focxx\serializer\validating\unsigned-long.obj Can you remove the /MT, and /EHsc options from the configuration file and replace /GR- with /GR? Then try to rebuild the library. The /MT option selects the runtime library to use. Since your application uses the default runtime (no /M? option), there might be a conflict. The 'c' part in /EHsc specifies that extern C functions never throw an exception which is not the case for the XSD/e runtime when C++ exceptions are enabled. > Now the program crashes, but shows > Unhandled exception at 0x00011c64 in XSDETest.exe: 0xC0000005: Access > violation writing location 0x0003e628. > > The xutility file opens and the yellow arrow points to the line > (*_Pnext)->_Mycont = 0; > of the _Container_base_secure::_Orphan_all() function Ok, this is better. At least now we have a stack trace. It seems there is an issue with STL which could be the result of the /MT option. If removing it does not help, can you try the minimal configuration (etc/vc-9.0/config-min.nmake) which doesn't use STL/iostream? Boris From dnomaid at gmail.com Tue Apr 13 08:08:13 2010 From: dnomaid at gmail.com (=?KOI8-R?B?7cnU0SDiwczByM/O08vJyg==?=) Date: Tue Apr 13 08:08:23 2010 Subject: [xsde-users] "Hello world" document_pimpl::parse() crash when built in VS 2008 In-Reply-To: References: Message-ID: > The /MT option selects the runtime library to use. Since your application > uses the default runtime (no /M? option), there might be a conflict. Thanks a lot! The problem was in the different runtimes specified for the library and the project. I tried both debug and release runtimes, everything is ok. Also, do you have .rules file for the C++/Hybrid? It would be great to have an automated build of the .xsd in IDE. -- Best regards, Dmitry Balakhonsky From ansari.ahmad at gmail.com Tue Apr 13 07:06:38 2010 From: ansari.ahmad at gmail.com (Ahmad Hassan) Date: Tue Apr 13 15:02:05 2010 Subject: [xsde-users] How to get Started ... Message-ID: Hi, I am going to start with an iPhone application, in which i need to parse the RSS feeds. So somebody told me that XSD is one of the faster and better way. I have downloaded the file "xsde-3.1.0-i686-macosx" and i just got stucked after unzipping it. I dont know how to get started with this, how to install it and use it in my iphone application. There was a file INSTALL i have read the section for iphone and found the config files for device and simulator. But what to do next... :( Any help, any sample code, tutorial, ill be very thankful. Thanks in advance. Hoping for a good response :) -- Ahmad Ansari From boris at codesynthesis.com Wed Apr 14 04:42:28 2010 From: boris at codesynthesis.com (Boris Kolpackov) Date: Wed Apr 14 04:32:50 2010 Subject: [xsde-users] "Hello world" document_pimpl::parse() crash when built in VS 2008 In-Reply-To: References: Message-ID: Hi Dmitry, Dmitry Balakhonsky writes: > Also, do you have .rules file for the C++/Hybrid? It would be great to > have an automated build of the .xsd in IDE. No, not yet. Though it should be quite easy to create one based on the C++/Tree version found in XSD. I have also added a note to the planned feature list for XSD/e 3.2.0 about this. Boris From boris at codesynthesis.com Wed Apr 14 05:58:52 2010 From: boris at codesynthesis.com (Boris Kolpackov) Date: Wed Apr 14 05:49:23 2010 Subject: [xsde-users] How to get Started ... In-Reply-To: References: Message-ID: Ahmad Hassan writes: > I am going to start with an iPhone application, in which i need to parse the > RSS feeds. So somebody told me that XSD is one of the faster and better way. > I have downloaded the file "xsde-3.1.0-i686-macosx" and i just got stucked > after unzipping it. I dont know how to get started with this, how to install > it and use it in my iphone application. There was a file INSTALL i have read > the section for iphone and found the config files for device and simulator. > But what to do next... :( > > Any help, any sample code, tutorial, ill be very thankful. I have started a wiki page on using XSD/e in iPhone/iPad applications (additional information from people developing for iPhone will be most welcome): http://wiki.codesynthesis.com/Using_XSDE_in_iPhone_Applications Besides that, I suggest that you read through the Getting Started Guide for the C++/Hybrid mapping: http://www.codesynthesis.com/projects/xsde/documentation/cxx/hybrid/guide/ As well as check the example in the examples/cxx/hybrid/ directory. Boris From xsde-users at groenndemon.de Thu Apr 15 19:02:29 2010 From: xsde-users at groenndemon.de (Marvin M.) Date: Thu Apr 15 19:02:34 2010 Subject: [xsde-users] Tons of Linker Errors (LIBCMT/___CxxFrameHandler3 etc.) Message-ID: <4BC79B05.3070203@groenndemon.de> I would like to parse a schema that contains a xs:choice under Windows XP (32-bit). The changes I've made to the default config.nmake are: XSDE_STL = n XSDE_LONGLONG = n XSDE_POLYMORPHIC = y (Even though I think I don't need XSDE_POLYMORPHIC - unfortunately, as The library compiles just fine, only the examples don't, but I didn't worry about that as I assumed that was die to my configuration above. But when I try to compile my simple console application under Visual Studio 2008 (empty Win32 console project), I get tons of linker errors. I don't know much about the linker and depending on what I choose for /NODEFAULTLIB, /Zl, code-generation options (/MTd, /GS-, runtime library and whatnot) I get between 9 and over 400 linker errors. For example, it tells me that the default library "LIBCMT" is in conflict with other libraries. Or that symbols like __CrtDbgReportW or ___CxxFrameHandler3 or _strlen can't be resolved. Or that other symbols are defined multiple times. I think this has something to do with different default libraries (like libc under *nix) being linked to my application than were used to create xsde.lib. I don't know anything about the different types of multi-threaded runtime environments etc. - all I want is my simple console application to run! Can you please help me out? :-/ Thanks, Marvin From boris at codesynthesis.com Fri Apr 16 10:24:39 2010 From: boris at codesynthesis.com (Boris Kolpackov) Date: Fri Apr 16 10:14:37 2010 Subject: [xsde-users] Tons of Linker Errors (LIBCMT/___CxxFrameHandler3 etc.) In-Reply-To: <4BC79B05.3070203@groenndemon.de> References: <4BC79B05.3070203@groenndemon.de> Message-ID: Hi Marvin, Marvin M. writes: > But when I try to compile my simple console application under Visual > Studio 2008 (empty Win32 console project), I get tons of linker errors. > I don't know much about the linker and depending on what I choose for > /NODEFAULTLIB, /Zl, code-generation options (/MTd, /GS-, runtime library > and whatnot) I get between 9 and over 400 linker errors. You need to make sure your application and xsde.lib use the same C/C++ runtime. To do this, open the Project Properties dialog for your application, go to C/C++ -> Code Generation and check which option is used for the "Runtime Library" setting. It will be one of /M* options. Then open config/config.nmake and add this option to the CFLAGS and CXXFLAGS. Then rebuild xsde.lib: nmake /f nmakefile clean nmake /f nmakefile Boris From xsde-users at groenndemon.de Sat Apr 17 09:50:32 2010 From: xsde-users at groenndemon.de (Marvin M.) Date: Sat Apr 17 09:50:32 2010 Subject: [xsde-users] Tons of Linker Errors (LIBCMT/___CxxFrameHandler3 etc.) In-Reply-To: References: <4BC79B05.3070203@groenndemon.de> Message-ID: <4BC9BCA8.3080100@groenndemon.de> Hi Boris, thank you very much for your help, you saved me! Boris Kolpackov schrieb: >> But when I try to compile my simple console application under Visual >> Studio 2008 (empty Win32 console project), I get tons of linker errors. >> I don't know much about the linker and depending on what I choose for >> /NODEFAULTLIB, /Zl, code-generation options (/MTd, /GS-, runtime library >> and whatnot) I get between 9 and over 400 linker errors. > > You need to make sure your application and xsde.lib use the same > C/C++ runtime. To do this, open the Project Properties dialog > for your application, go to C/C++ -> Code Generation and check > which option is used for the "Runtime Library" setting. It will > be one of /M* options. /MTd for Debug /MT for Release > Then open config/config.nmake and add this > option to the CFLAGS and CXXFLAGS. Btw, what are the CPPFLAGS for? > Then rebuild xsde.lib: > > nmake /f nmakefile clean > nmake /f nmakefile I couldn't use /MT for the XSD/e and then link my Debug (/MTd) application against it. So I had to build XSD/e twice (once with /MT and once with /MTd). I then copied the respective xsde.lib files to new sub-directories "Debug" and "Release" and had my linker path include "...\libxsde\xsde\$(ConfigurationName)" - in case anyone should ever have the same problem. /Marvin From boris at codesynthesis.com Mon Apr 19 09:45:36 2010 From: boris at codesynthesis.com (Boris Kolpackov) Date: Mon Apr 19 09:35:46 2010 Subject: [xsde-users] Tons of Linker Errors (LIBCMT/___CxxFrameHandler3 etc.) In-Reply-To: <4BC9BCA8.3080100@groenndemon.de> References: <4BC79B05.3070203@groenndemon.de> <4BC9BCA8.3080100@groenndemon.de> Message-ID: Hi Marvin, Marvin M. writes: > > Then open config/config.nmake and add this option to the CFLAGS and > > CXXFLAGS. > > Btw, what are the CPPFLAGS for? For the C Preprocessor flags, such as defines (/D) or include search paths (/I). These are used for both C and C++ compilation. > I couldn't use /MT for the XSD/e and then link my Debug (/MTd) > application against it. > So I had to build XSD/e twice (once with /MT and once with /MTd). > I then copied the respective xsde.lib files to new sub-directories > "Debug" and "Release" and had my linker path include > "...\libxsde\xsde\$(ConfigurationName)" - in case anyone should ever > have the same problem. Yes, that's exactly how this should be done. Boris From jaws75 at tiscali.it Tue Apr 20 09:01:36 2010 From: jaws75 at tiscali.it (Jaws) Date: Tue Apr 20 09:01:49 2010 Subject: [xsde-users] Cross-compilation libxsde for PPC under vxWorks Message-ID: <4BCDA5B0.4070407@tiscali.it> I have started with the xsde compiler on a Linux machine using the binary distribution to see the example and to prototype the code for my application. Everything went well. Now I have to use the code for the real target: PPC processor on vxWorks. I need to cross-compile the run-time library but It is not clear how to proceed. I downloaded the xsde-3.1.0+dep.tar.bz2 package but starting the command ./build.sh this is the error make-3.79.1-p7: Entering directory `xsde-3.1.0+dep/build-0.3.4' build/bootstrap.make:255: *** Recursive variable `find-bootstrap-base' references itself (eventually). Stop. make-3.79.1-p7: Leaving directory `xsde-3.1.0+dep/build-0.3.4' Then, I f I well understood, I need to specify the proper compiler to use CXX=g++-ppc CXXFLAGS=-O3 MAKEFLAGS=-j4 ./build.sh Is it correct? thanks in advance From boris at codesynthesis.com Tue Apr 20 11:06:21 2010 From: boris at codesynthesis.com (Boris Kolpackov) Date: Tue Apr 20 10:56:31 2010 Subject: [xsde-users] Cross-compilation libxsde for PPC under vxWorks In-Reply-To: <4BCDA5B0.4070407@tiscali.it> References: <4BCDA5B0.4070407@tiscali.it> Message-ID: Hi, Jaws writes: > I have started with the xsde compiler on a Linux machine using the > binary distribution to see the example and to prototype the code for my > application. Everything went well. > Now I have to use the code for the real target: PPC processor on vxWorks. > I need to cross-compile the run-time library but It is not clear how to > proceed. You would still use a binary distribution for that. For example, if your VxWorks cross-compiler is on Linux, then you will need a Linux XSD/e binary. If it is on Windows, then you will use the Windows binary. The binary distribution contains the source code for the runtime library (libxsde) as well as the build system that supports cross-compilation. For VxWorks, you will use GNU make (which is part of the VxWorks toolchain), just like on Linux. You can also find a number of sample configuration files for VxWorks in the etc/vxworks/ directory of the XSD/e distribution. You can use one of them as a base for your own configuration. There are also comments at the beginning of each configuration file with more information (e.g., how to 'munch' the examples or your application if you are using iostream, etc). Let us know if you run into any problems. Boris From jaws75 at tiscali.it Wed Apr 28 04:40:29 2010 From: jaws75 at tiscali.it (Jaws) Date: Wed Apr 28 04:40:40 2010 Subject: [xsde-users] Cross-compilation libxsde for PPC under vxWorks In-Reply-To: References: <4BCDA5B0.4070407@tiscali.it> Message-ID: <4BD7F47D.2030307@tiscali.it> Hi all, I am using gnu gcc 3.4.5 for ppc with the following option: -U_BIG_ENDIAN -fno-common -mno-sdata -pipe -Wno-invalid-offsetof -mcpu=860 -fno-branch-count-reg -ansi building the runtime library and the application the following error are reported by the linker: _ZnwjPv undefined _ZTVN10__cxxabiv117__class_type_infoE undefined _ZTVN10__cxxabiv120__si_class_type_infoE undefined _ZTVN10__cxxabiv121__vmi_class_type_infoE undefined Do you have any idea why ? The build for linux machine with i386 build completely and works good. thanks in advance. Jaws Boris Kolpackov ha scritto: Hi, Jaws [1] writes: I have started with the xsde compiler on a Linux machine using the binary distribution to see the example and to prototype the code for my application. Everything went well. Now I have to use the code for the real target: PPC processor on vxWorks. I need to cross-compile the run-time library but It is not clear how to proceed. You would still use a binary distribution for that. For example, if your VxWorks cross-compiler is on Linux, then you will need a Linux XSD/e binary. If it is on Windows, then you will use the Windows binary. The binary distribution contains the source code for the runtime library (libxsde) as well as the build system that supports cross-compilation. For VxWorks, you will use GNU make (which is part of the VxWorks toolchain), just like on Linux. You can also find a number of sample configuration files for VxWorks in the etc/vxworks/ directory of the XSD/e distribution. You can use one of them as a base for your own configuration. There are also comments at the beginning of each configuration file with more information (e.g., how to 'munch' the examples or your application if you are using iostream, etc). Let us know if you run into any problems. Boris References 1. mailto:jaws75@tiscali.it From jaws75 at tiscali.it Wed Apr 28 08:17:47 2010 From: jaws75 at tiscali.it (Jaws) Date: Wed Apr 28 08:17:52 2010 Subject: [xsde-users] Cross-compilation libxsde for PPC under vxWorks In-Reply-To: <4BD7F47D.2030307@tiscali.it> References: <4BCDA5B0.4070407@tiscali.it> <4BD7F47D.2030307@tiscali.it> Message-ID: <4BD8276B.9020702@tiscali.it> The error is due to a link check that verify all the Undefined symbol in the library. Is it possibile to avoid the Undefined symbol in the runtime library? Thanks Jaws ha scritto: > Hi all, > I am using gnu gcc 3.4.5 for ppc with the following option: > -U_BIG_ENDIAN -fno-common -mno-sdata -pipe -Wno-invalid-offsetof > -mcpu=860 -fno-branch-count-reg -ansi > building the runtime library and the application the following error > are reported by the linker: > _ZnwjPv undefined > _ZTVN10__cxxabiv117__class_type_infoE undefined > _ZTVN10__cxxabiv120__si_class_type_infoE undefined > _ZTVN10__cxxabiv121__vmi_class_type_infoE undefined > Do you have any idea why ? > The build for linux machine with i386 build completely and works good. > thanks in advance. > Jaws > Boris Kolpackov ha scritto: > > Hi, > > Jaws [1] writes: > > > > I have started with the xsde compiler on a Linux machine using the > binary distribution to see the example and to prototype the code for my > application. Everything went well. > Now I have to use the code for the real target: PPC processor on vxWorks. > I need to cross-compile the run-time library but It is not clear how to > proceed. > > > You would still use a binary distribution for that. For example, if your > VxWorks cross-compiler is on Linux, then you will need a Linux XSD/e > binary. If it is on Windows, then you will use the Windows binary. > > The binary distribution contains the source code for the runtime library > (libxsde) as well as the build system that supports cross-compilation. > For VxWorks, you will use GNU make (which is part of the VxWorks > toolchain), just like on Linux. You can also find a number of sample > configuration files for VxWorks in the etc/vxworks/ directory of the > XSD/e distribution. You can use one of them as a base for your own > configuration. There are also comments at the beginning of each > configuration file with more information (e.g., how to 'munch' the > examples or your application if you are using iostream, etc). > > Let us know if you run into any problems. > > Boris > > References > > 1. mailto:jaws75@tiscali.it > > From boris at codesynthesis.com Thu Apr 29 03:54:58 2010 From: boris at codesynthesis.com (Boris Kolpackov) Date: Thu Apr 29 03:45:41 2010 Subject: [xsde-users] Cross-compilation libxsde for PPC under vxWorks In-Reply-To: <4BD7F47D.2030307@tiscali.it> References: <4BCDA5B0.4070407@tiscali.it> <4BD7F47D.2030307@tiscali.it> Message-ID: Hi, Jaws writes: > I am using gnu gcc 3.4.5 for ppc with the following option: > -U_BIG_ENDIAN -fno-common -mno-sdata -pipe -Wno-invalid-offsetof > -mcpu=860 -fno-branch-count-reg -ansi > building the runtime library and the application the following error are > reported by the linker: > > _ZnwjPv undefined > _ZTVN10__cxxabiv117__class_type_infoE undefined > _ZTVN10__cxxabiv120__si_class_type_infoE undefined > _ZTVN10__cxxabiv121__vmi_class_type_infoE undefined Looks like the runtime type information support is not available on this target. Can you try to recompile the XSD/e runtime and your application with the -fno-rtti and see if this helps? You can do this by adding this option to the CXXFLAGS variable in your config.make and then rebuilding the XSD/e runtime (make clean && make). You will also need to use this option while compiling the generated code and your application code. Let us know how it goes. Boris From jaws75 at tiscali.it Fri Apr 30 11:07:19 2010 From: jaws75 at tiscali.it (Jaws) Date: Fri Apr 30 11:07:30 2010 Subject: [xsde-users] Cross-compilation libxsde for PPC under vxWorks In-Reply-To: References: <4BCDA5B0.4070407@tiscali.it> <4BD7F47D.2030307@tiscali.it> Message-ID: <4BDAF227.3080208@tiscali.it> Thanks, i resolved the issue related the compilation/link adding the option -fno-rtti -O2. Now I have a problem on the target. I have created an example that read an xml file make the parsing and generate some messages. Everithing works on Linux , but When I try to run on the target (PPC860 with vxWorks) from the command on the shell, I have received the following error: fp unavailable Machine Status Register: 0x00009032 Data Access Register: 0xeeeeeeee Condition Register: 0x42004024 Fp Control and Status Register: 0xeeeeeeee 19b200 vxTaskEntry +5c : ed580 () ed630 shell +b4 : ed2c0 () ed3f8 execute +26c: execute () ed2a0 execute +114: yyparse () fff30 yyparse +c94: fe2ec () fe444 yystart +d98: e970b8 () e970c4 db_test(const char *)+10 : loadxmlFile(const char *) () e97308 loadxmlFile(const char *)+20c: xsde::cxx::parser::expat::document_pimpl () 18b4f2c xsde::cxx::parser::expat::document_pimpl+ec : XML_Parse () 18b87a8 XML_ParseBuffer+78 : 18c057c () 18c05ec XML_ParserCreate+1b58: 18becdc () 18bfacc XML_ParserCreate+1038: 18c1908 () 18c1944 XML_ParserCreate+2eb0: 18c08fc () 18c13ec XML_ParserCreate+2958: 18b5a0c () 18b5a54 xsde::cxx::parser::expat::document_pimpl+4c : XML_GetParsingStatus () shell restarted. Do you have any idea or suggestion? Thanks. Boris Kolpackov ha scritto: Hi, Jaws [1] writes: I am using gnu gcc 3.4.5 for ppc with the following option: -U_BIG_ENDIAN -fno-common -mno-sdata -pipe -Wno-invalid-offsetof -mcpu=860 -fno-branch-count-reg -ansi building the runtime library and the application the following error are reported by the linker: _ZnwjPv undefined _ZTVN10__cxxabiv117__class_type_infoE undefined _ZTVN10__cxxabiv120__si_class_type_infoE undefined _ZTVN10__cxxabiv121__vmi_class_type_infoE undefined Looks like the runtime type information support is not available on this target. Can you try to recompile the XSD/e runtime and your application with the -fno-rtti and see if this helps? You can do this by adding this option to the CXXFLAGS variable in your config.make and then rebuilding the XSD/e runtime (make clean && make). You will also need to use this option while compiling the generated code and your application code. Let us know how it goes. Boris References 1. mailto:jaws75@tiscali.it