Sorry to trouble you !

I run debian and installed binutils-dev beforehand.
Then I copied tools/build/feature/test-libbfd.c to t.c and run:
------------------------------------------------------------------------
root@lazyfintech:~# cat t.c 
#include <bfd.h>

extern int printf(const char *format, ...);

int main(void)
{
        char symbol[4096] = "FieldName__9ClassNameFd";
        char *tmp;

        tmp = bfd_demangle(0, symbol, 0);

        printf("demangled symbol: {%s}\n", tmp);

        return 0;
}
root@lazyfintech:~# gcc t.c -lbfd
root@lazyfintech:~# ./a.out 
demangled symbol: {ClassName::FieldName}


I thought libbfd can be reached from above. 
But when I built tools/bpf, libbfd cannot be detected: 
-------------------------------------------------------------------------
/linux# make O=../buildkernel/ tools/bpf
make[1]: Entering directory '/root/buildkernel'
  DESCEND  bpf

Auto-detecting system features:
...                        libbfd: [ OFF ]
...        disassembler-four-args: [ on  ]

  DESCEND  bpftool

Auto-detecting system features:
...                        libbfd: [ OFF ]
...        disassembler-four-args: [ on  ]

make[1]: Leaving directory '/root/buildkernel'


I wonder how should I do to get libbfd auto detected when  building bpf tool?


Regards,
shenghui

Reply via email to