I am facing problems with getting twiddler to compile. I have binutils-2.15.92.0.2-5. Here is the error. I have header files in place, I think this is linking problem but I have /usr/lib/libbfd.a and /usr/lib/libopcodes.a.
[jayesh@orion twiddler]$ make gcc -W -Wall -g -O2 -DTARGET_X86=1 -lbfd -lopcodes -o twiddler_x86 twiddler.c /tmp/ccKfu4xD.o(.text+0x4a): In function `disasm_section': /home/jayesh/l4/tool/twiddler/twiddler.c:158: undefined reference to `bfd_get_section_contents' /tmp/ccKfu4xD.o(.text+0x180):/home/jayesh/l4/tool/twiddler/twiddler.c:127: undefined reference to `print_insn_i386' /tmp/ccKfu4xD.o(.text+0x31d): In function `main': /home/jayesh/l4/tool/twiddler/twiddler.c:223: undefined reference to `bfd_init' /tmp/ccKfu4xD.o(.text+0x335):/home/jayesh/l4/tool/twiddler/twiddler.c:74: undefined reference to `init_disassemble_info' /tmp/ccKfu4xD.o(.text+0x341):/home/jayesh/l4/tool/twiddler/twiddler.c:226: undefined reference to `bfd_openr' /tmp/ccKfu4xD.o(.text+0x359):/home/jayesh/l4/tool/twiddler/twiddler.c:231: undefined reference to `bfd_check_format' /tmp/ccKfu4xD.o(.text+0x36b):/home/jayesh/l4/tool/twiddler/twiddler.c:231: undefined reference to `bfd_check_format' /tmp/ccKfu4xD.o(.text+0x380):/home/jayesh/l4/tool/twiddler/twiddler.c:233: undefined reference to `bfd_map_over_sections' /tmp/ccKfu4xD.o(.text+0x388):/home/jayesh/l4/tool/twiddler/twiddler.c:237: undefined reference to `bfd_close' /tmp/ccKfu4xD.o(.text+0x424):/home/jayesh/l4/tool/twiddler/twiddler.c:227: undefined reference to `bfd_perror' collect2: ld returned 1 exit status make: *** [twiddler_x86] Error 1
Any suggestions?
On Sat Feb 26, 2005 at 11:29:20 -0600, Jayesh Salvi wrote:
I am facing problems with getting twiddler to compile. I have binutils-2.15.92.0.2-5. Here is the error. I have header files in place, I think this is linking problem but I have /usr/lib/libbfd.a and /usr/lib/libopcodes.a.
[jayesh@orion twiddler]$ make gcc -W -Wall -g -O2 -DTARGET_X86=1 -lbfd -lopcodes -o twiddler_x86 twiddler.c /tmp/ccKfu4xD.o(.text+0x4a): In function `disasm_section': /home/jayesh/l4/tool/twiddler/twiddler.c:158: undefined reference to `bfd_get_section_contents' /tmp/ccKfu4xD.o(.text+0x180):/home/jayesh/l4/tool/twiddler/twiddler.c:127: undefined reference to `print_insn_i386'
Are the .so fils there as well? Looks like not.
Anyway, something like this should work too, looks like I got that wrong initially:
gcc -W -Wall -g -O2 -DTARGET_X86=1 -o twiddler_x86 twiddler.c -lbfd -lopcodes -liberty
Adam
l4-hackers@os.inf.tu-dresden.de