Hey Gabe,
I (well, Hoa) was able to track this down a little bit. See the traceback
below. It looks like since Gem5ToTlmBridge is a SimObject, it's compiled in
by default pulling in the tlm header file.
In file included from build/X86/systemc/ext/tlm:24:0,
from build/X86/systemc/ext/tlm.h:22,
from build/X86/systemc/tlm_bridge/sc_peq.hh:41,
from build/X86/systemc/tlm_bridge/gem5_to_tlm.hh:75,
from build/X86/python/_m5/param_Gem5ToTlmBridge64.cc:9:
build/X86/systemc/ext/systemc:37:10: fatal error: boost/bind.hpp: No such
file or directory
#include <boost/bind.hpp>
^~~~~~~~~~~~~~~~
compilation terminated.
It would be great to fix this. It's been bugging me for a while that boost
has become a required dependency. I'm not sure what is needed and what
isn't. With some guidance we can take a stab at fixing this.
Thanks,
Jason
On Mon, Nov 4, 2019 at 1:47 PM Gabe Black <[email protected]> wrote:
> I agree with Ciro, but will add that things should work with version 7 and
> boost is not supposed to be a dependency. The systemc standard *claims*
> that boost is not required, just specifying some macros that resolve to
> boost code. Unfortunately in reality, the Accellera implementation includes
> boost directly, and their tests (which we try to pass) break if we don't do
> that too. The headers are set up in such a way that that include *should*
> be isolated though, unless you've included one of the top level systemc
> includes like <systemc> or <tlm>. That way gem5 itself doesn't require
> boost, and if you're using systemc, you'd need it even if you were using
> Accellera instead.
>
> If you can identify where that include is coming from, we should fix that
> as soon as possible.
>
> Gabe
>
> On Mon, Nov 4, 2019 at 1:30 PM Ciro Santilli <[email protected]>
> wrote:
>
>> On Mon, Nov 4, 2019 at 8:09 PM Andreas Brokalakis <[email protected]>
>> wrote:
>> >
>> > Hi all,
>> >
>> > I am trying to compile gem5 cloned from the official repository on
>> Ubuntu 19.10 with gcc 9.2.1 installed. I keep on getting errors that make
>> practically the compilation process impossible.
>> >
>> > The first errors were about implicitly-declared things all over the
>> code. I managed to workaround them by adding the option
>> -Wno-error=deprecated-copy . Then there were errors all over the place
>> about redundant move in return statement. The only way I managed to
>> workaround this was by falling back on gcc 7.
>> >
>>
>> Things break for every new major GCC version due to more strict error
>> checking, patches that fix them without ignoring errors are welcome
>> :-)
>>
>> > After that there was an error about not finding boost/bind.hpp .
>> Installing boost is not a documented dependency and I only found this on
>> gem5-dev mailing list:
>> https://www.mail-archive.com/[email protected]/msg28734.html
>> >
>> > From my understanding this is a dependency for when building something
>> that requires interaction with SystemC. Should it be there when building
>> mainline versions of GEM5? Also it is not documented and maybe instructions
>> on building gem5 should be updated (they are already very old).
>> >
>>
>> Previous discussion at:
>> https://www.mail-archive.com/[email protected]/msg28730.html and I've
>> now updated the dependencies page: http://www.gem5.org/Dependencies
>>
>> > Best,
>> > Andreas
>> > _______________________________________________
>> > gem5-users mailing list
>> > [email protected]
>> > http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
>> _______________________________________________
>> gem5-users mailing list
>> [email protected]
>> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
>
> _______________________________________________
> gem5-users mailing list
> [email protected]
> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
_______________________________________________
gem5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users