Uwghiello Posted October 24, 2017 Report Share Posted October 24, 2017 I am trying to install systemC on visual studio 2017 but it seems that I cannot find the guide for it. So I had to follow the guide of installing systemC on VS2010 :( In fact, I have got systemC.lib but when I configured the project for systemC, i.e, the project->property->C/C++->Code Generation->Runtime Library->balabalabala... finished all of them and build solutions, there are some errors. So...what should I do? Totally confused because I know nothing about VS =_= PS: the guide is here Ehud 1 Quote Link to comment Share on other sites More sharing options...
Philipp A Hartmann Posted October 24, 2017 Report Share Posted October 24, 2017 Starting with SystemC 2.3.2, the MSVC project files shipped with the package use the DLL-based runtime library. Therefore it is not necessary (instead rather harmful) to select the statically linked runtime library in your application. Secondly, you should not set the SC_SIGNAL_WRITE_CHECK environment variable to DISABLE (unrelated to your current issue, but suggested in the video above). More instructions on using MSVC with SystemC can be found in the INSTALL file shipped with the proof-of-concept simulator. Hope that helps, Philipp Uwghiello 1 Quote Link to comment Share on other sites More sharing options...
Uwghiello Posted October 25, 2017 Author Report Share Posted October 25, 2017 Thanks a lot! I really appreciate it :D Quote Link to comment Share on other sites More sharing options...
Aaron0127 Posted February 27, 2018 Report Share Posted February 27, 2018 I had the same problems, after I set Code Generation in c/c++ tab in project property, these issues are gone. But I get the error "entry point must be defined". How do I fix it? Thanks. Quote Link to comment Share on other sites More sharing options...
maehne Posted February 28, 2018 Report Share Posted February 28, 2018 Do you provide a proper definition of "void sc_main(int argc, char* argv[])" in your application as entry point for your simulation? Have you made sure to not have a function main() defined at the same time? In the latter case you would need to call explicitly sc_elab_and_sim(argc, argv) to hand over control to SystemC for elaboration and simulation (which will include a call to sc_main()). Confer to IEEE Std 1666-2011 clause 4.3 for details. Quote Link to comment Share on other sites More sharing options...
samng Posted November 24, 2020 Report Share Posted November 24, 2020 I can build SystemC 2.3.3 in VC++ 2017 but when it come to linking, it cannot find some assignment operators like: Severity Code Description Project File Line Suppression State Error LNK2019 unresolved external symbol "public: class sc_dt::sc_fixed_fast<8,1,0,0,0> & __cdecl sc_dt::sc_fixed_fast<8,1,0,0,0>::operator=(class sc_dt::sc_fxnum_fast const &)" (??4?$sc_fixed_fast@$07$00$0A@$0A@$0A@@sc_dt@@QEAAAEAV01@AEBVsc_fxnum_fast@1@@Z) referenced in function "void __cdecl utils::fx2fp<12,8>(class fx_complex_<class sc_dt::sc_fixed_fast<12,12,5,3,0>,class sc_dt::sc_fxval_fast>,class fx_complex_<class sc_dt::sc_fixed_fast<8,1,0,0,0>,class sc_dt::sc_fxval_fast> &,class sc_dt::sc_uint<4> &,enum sc_dt::sc_switch)" (??$fx2fp@$0M@$07@utils@@YAXV?$fx_complex_@V?$sc_fixed_fast@$0M@$0M@$04$02$0A@@sc_dt@@Vsc_fxval_fast@2@@@AEAV?$fx_complex_@V?$sc_fixed_fast@$07$00$0A@$0A@$0A@@sc_dt@@Vsc_fxval_fast@2@@@AEAV?$sc_uint@$03@sc_dt@@W4sc_switch@4@@Z) model_test C:\Users\samn\Perforce\samn_lithium\depot\arch\phy\beryllium\src\digital\hls\hls_client\model_test\model_test.obj 1 Is the fixed point package built by default? When I use dumpbin to look at the symbols in systemc.lib, I cannot find any sc_fixed related functions. Even setting SC_INCLUDE_FX during the compilation of systemc-2.3.3.lib and systemc.lib do not help. Thanks Sam Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.