Would it be possible or has someone already tried porting CPPUnit to EVC++ 4.0??
Ive been looking into converting the cppunit to embedded VC++ 3.0. But since that platform/compiler is so very limited, it couldnt be done. (It needs real c++ exceptions, etc) Something that VC++ 4.0 is supposed to have (first after SP1/2). I looked into this for 2 months ago and couldnt come up with anything.
But if you look into this now, i would be very interested to help out or do the job, since Im in the middle of building my own testing environment at this moment for VC++ Embedded 3.0.
There are a bunch of other Test Unit frameworks available for C++ and C.
Check out these:
Any guidelines on how to port it to eVC++ 4 (sp3)?
I don't have any experience with this platform, but according to MSDN, eVC++ 4 should have enough C++ support to compile CppUnit (exception, stl & basic template).
Porting effort should focus on:
- src/cppunit, the unit testing library
- examples/cppunittest, unit tests for cppunit
I wouldn't expect too much trouble, CppUnit already support a wide range of compiler (including prehistoric one ;-) ).
If you are willing to work on this, contact me at email@example.com, I'll help you analysing the compilation error log.
The problem with eVC++ 4 is: streams support. The fraction of STL shipped with the compiler lacks <ostream> altogether, and neither has STLPort been adapted for eVC.
alexcohn - STLPort v5.0RC2 has support for streams if you build the library.
A colleague has got CPPUnit to compile with standard eVC4 SP4, but we're trying to use STLPort v5.0RC2 (without stream and locale support) and I'm having major problems getting it to compile now.
Here is a typical error:
C:\Program Files\Microsoft eMbedded C++ 4.0\EVC\wce420\bin\c1xx.dll -il C:\DOCUME~1\jonr\LOCALS~1\Temp\a53076 -f C:\cppunit\src\cppunit\Message.cpp -Ze -D_MSC_EXTENSIONS -Zp8 -ZB64 -D_INTEGRAL_MAX_BITS=64 -D_M_IX86=500 -G5 -pc \:/ -D_MSC_VER=1200 -D
_MSC_FULL_VER=12008804 -D_WIN32 -nologo -W 3 -GR -D_CPPRTTI -EHs -EHc -D_CPPUNWIND -Zi -Ob0 -Ot -I include -DDEBUG -D_i386_ -D_X86_ -Dx86 -D_AFXDLL -D_WIN32_WCE=420 -DWCE_PLATFORM_STANDARDSDK -DUNDER_CE=420 -DUNICODE -D_UNICODE -D_LIB -D_STLP_NO_IOS
TREAMS -D_STLP_USE_MFC -FoemulatorDbg/Message.obj -FdemulatorDbg/vc60.pdb -Gs -GF -Bd -I C:\STLport\stlport -I C:\Program Files\Windows CE Tools\wce420\STANDARDSDK_420\Include\emulator -I C:\Program Files\Windows CE Tools\wce
420\STANDARDSDK_420\mfc\include -I C:\Program Files\Windows CE Tools\wce420\STANDARDSDK_420\atl\include
C:\STLport\stlport\stl/_construct.h(119): error C2665: 'new': none of the 2 overloads can convert parameter 2 from type 'stlp_std::basic_string<char,stlp_std::char_traits<char>,stlp_std::> *'
C:\STLport\stlport\stl/_deque.h(649): see reference to function template instantiation 'void stlp_std::_Copy_Construct(stlp_std::basic_string<char,stlp_std::char_traits<char>,stlp_std::> *,const stlp_std::basic_string<cha
r,stlp_std::char_traits<char>,stlp_std::> &)' being compiled
Ive tried to look for this pkg when I needed unit testing in EVC3 (and 4). But it was just to much hassle. So i built a very small framework that would let me code my own unit tests in evc3.It is similar to the junit framework, but has some very different implementations.
The basic of the framework is that all tests are run as their own processes. That means even if a test crashes, it wont crash the whole test runner. Of course it takes a while to start a process (approx 300 ms) but it is not too much. The good part is that it wont need exceptions since essentially every program is a very simple c program.
Sign up for the SourceForge newsletter:
You seem to have CSS turned off.
Please don't fill out this field.