Hi Philipp,
Thanks for the reply.
Can you please look over simple example that Itried and suggest me where I am wrong:
Example: HelloWorld.cpp
#include "systemc.h" SC_MODULE(Hello_SystemC) { // declare module class void main_thread(void) { SC_REPORT_INFO("Temp", "Hello SystemC World!"); } SC_CTOR(Hello_SystemC) { // create a constructor SC_THREAD(main_thread);// register the process }//end constructor }; int sc_main(int sc_argc, char* sc_argv[]) { //create an instance of the SystemC module Hello_SystemC HelloWorld_i("HelloWorld_i"); sc_start(); // invoke the simulator return 0; }
Command Line:
cl /FoHelloWorld.obj /c HelloWorld.cpp /TP /nologo /EHsc /GR /vmg /I<path_of_systemc-2.3.1>\src
link /nologo /OUT:helloworld.exe /LIBPATH:<path_of_systemc-2.3.1>\msvc80\SystemC\x64\Release systemc.lib HelloWorld.obj
Now, this gives me the same error for different systemc module: (Previously I got error w.r.t. to my other project)
systemc.lib<sc_simcontext.obj> : fatal error LNK1112: module machine type 'x64' conflicts with target machine type 'x86'
PS:
1) I am working on Visual C++ express 2010(windows 7 - 64 bit host) and To set 64 bit environment I have used:
CALL "C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.cmd" /x64"
Surprisingly using "vcvarsall.bat x64" throws following error:
The specified configuration type is missing. The tools for the configuration might not be installed.
So, I preferred option (1).
SystemC library is builded using the solution file present in the systemc-2.3.1 source zip file downloaded from official site.
And while building the library In the configuration manager, I have changed the platform to 'x64'.