Skip to content

Latest commit

 

History

History
33 lines (28 loc) · 1.82 KB

Progress.md

File metadata and controls

33 lines (28 loc) · 1.82 KB

Progress

  • Make changes to implement cout for klee
  • Find all function prototypes that need to be hidden in uclibc++. Do this by comparing klee-uclibc with uclibc.
  • Change libc to klee-uclibc in Uclibc++. Debug with this. {Still Working on this (Issue: Not linking to libc library)}.
  • Debugging libc using BuildRoot installation
  • Making Uclibc++ work (fix the library issue)
  • Track changes between commonly named files in UClibc++ and klee-uclibc (such as 'write')
  • Do simple C++ programs without stdin or stdout work out-of-the-box with KLEE? Try get-sign.
  • Figuring out the stage at which cout makes the call to C functions (and which C function)
  • Figuring out the call heirarchy for cout by debugging uClibc++ (Log Generated)
  • Figuring out changes between uclibc and klee-uclibc for puts()

###Current Task

  • Change libc to klee-uclibc in Uclibc++. Debug with this. (Library is linking but there are some other errors. We are using a simple program with puts)

Command:

gcc -g -static -nostdinc -nodefaultlibs -nostdlib -I/usr/x86_64-linux-uclibc/usr/include -L/usr/x86_64-linux-uclibc/usr/lib test.c -Xlinker --verbose -lc

Output:

/usr/bin/ld: warning: cannot find entry symbol _start; defaulting to 0000000000400144
/usr/x86_64-linux-uclibc/usr/lib/libc.a(tcgetattr.os): In function `tcgetattr':
/home/nasir/debug/klee-uclibc/libc/termios/tcgetattr.c:43: undefined reference to `ioctl'
/usr/x86_64-linux-uclibc/usr/lib/libc.a(_WRITE.os): In function `__stdio_WRITE':
/home/nasir/debug/klee-uclibc/libc/stdio/_WRITE.c:52: undefined reference to `write'
/usr/x86_64-linux-uclibc/usr/lib/libc.a(_cs_funcs.os): In function `__stdio_seek':
/home/nasir/debug/klee-uclibc/libc/stdio/_cs_funcs.c:66: undefined reference to `lseek64'
collect2: error: ld returned 1 exit status