1

I'm using Jam to compile a project, and it seems that no matter how high the debug level I set, I still can't see the details that I'm looking for.

I want to use g++'s -M or -H flag to see which headers are being included (I want to include system headers from a special directory), and I've tested that these work. I'll see something like this:

$ /speciali686/bin/i686-linux-g++ -M simple.cpp
/speciali686/include/c++/4.7.2/iostream
<...>

That allows me to verify that my solution is working fine without Jam, but now I want to confirm that Jam isn't messing anything up.

I tried jam -d 9 | grep include | grep i686 and don't see anything.

What could be going wrong here? And why is the raw compiler output so obfuscated?

s g
  • 4,057
  • 6
  • 39
  • 67

2 Answers2

2

Try -n to see the command without executing them or -d+2 to see them while they are executed.

Source: http://osdir.com/ml/lib.boost.build/2004-04/msg00113.html

usr1234567
  • 17,173
  • 10
  • 96
  • 112
0

This is actually pretty easy, and oakad is exactly right.

Simply use the jam -d x... This flag will show the shell arguments called by jam so you can see the actual compiler invocation.

It can be easily found in the manual here: http://public.perforce.com/public/jam/src/Jam.html but for some reason the man pages on my computer didn't have (but everything else??) that top section

s g
  • 4,057
  • 6
  • 39
  • 67