Git Product home page Git Product logo

klee-uclibc's People

Contributors

251 avatar aldot avatar amorosoc avatar andreamattavelli avatar aytey avatar bmwiedemann avatar ccadar avatar davidtr1037 avatar delcypher avatar dschleef avatar erikbandersen avatar jbglaw avatar joakim-tjernlund avatar kren1 avatar landley avatar martinnowack avatar mic92 avatar pmundt avatar ps-m avatar ricardaxel avatar saur2000 avatar sjhill71 avatar solalpirelli avatar solarx avatar vapier avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

klee-uclibc's Issues

cannot generate aarch64 pre-made config files.

I am using an aarch64 machine to make klee-uclibc, and I found no supported pre-made config files in klee-premade-configs,
README said I can run make menuconfig to generate config file, but I cannot find the aarch64 option in architecture.
I wonder if I can install this plugin in aarch64 env?

ubuntu: configure without error, but didn't generate Makefiles.

➜ build git:(klee_0_9_29) ../configure
--make-llvm-lib
--with-llvm-config="../../../llvm-project/build/bin/llvm-config"
--with-cc="../../../llvm-project/build/bin/clang"
--enable-assertions
INFO:Forcing C compiler to be...../../../llvm-project/build/bin/clang
INFO:Absolute path to compiler.../home/alien/git/llvm_all/llvm-project/build/bin/clang
INFO:Enabling assertions
INFO:Configuring for Debug build
INFO:Configuring for LLVM bitcode archive
INFO:Using llvm-config at.../home/alien/git/llvm_all/llvm-project/build/bin/llvm-config
INFO:Using llvm tool dir.../home/alien/git/llvm_all/llvm-project/build/bin
INFO:Found "/home/alien/git/llvm_all/llvm-project/build/bin/llvm-objdump".
INFO:Found "/home/alien/git/llvm_all/llvm-project/build/bin/llvm-link".
INFO:Found "/home/alien/git/llvm_all/llvm-project/build/bin/llvm-ar".
INFO:Found "/home/alien/git/llvm_all/llvm-project/build/bin/llvm-nm".
INFO:Testing LLVM Bitcode compiler.../home/alien/git/llvm_all/llvm-project/build/bin/clang
INFO:Compiler /home/alien/git/llvm_all/llvm-project/build/bin/clang works
INFO:Using LLVM Bitcode Compiler.../home/alien/git/llvm_all/llvm-project/build/bin/clang
INFO:Checking for ncurses...
INFO:Removing template destination "/home/alien/git/llvm_all/klee_all/klee-uclibc/Makefile.klee"
INFO:Writing templated file to "/home/alien/git/llvm_all/klee_all/klee-uclibc/Makefile.klee"
WARNING:Removing existing config file.../home/alien/git/llvm_all/klee_all/klee-uclibc/.config
INFO:Setting up pre-made configure for...x86_64
INFO:Installing .config file
INFO:Looking for kernel include path...
INFO:Found "/usr/include/x86_64-linux-gnu"

➜ build git:(klee_0_9_29) la
total 0

OS X: ./configure -l report Kernel header files not found

Hi, I'm trying to compile klee on macOS 10.12.6 (kernel version Darwin 16.7.0). llvm, stp and minisat are success compiled. Now I'm stuck in compile uclibc.

./configure -l
INFO:Disabling assertions
INFO:Configuring for Debug build
INFO:Configuring for LLVM bitcode archive
INFO:Using llvm-config at.../usr/local/opt/llvm/bin/llvm-config
INFO:Using llvm tool dir.../usr/local/Cellar/llvm/5.0.0/bin
INFO:Found "/usr/local/Cellar/llvm/5.0.0/bin/llvm-objdump".
INFO:Found "/usr/local/Cellar/llvm/5.0.0/bin/llvm-link".
INFO:Found "/usr/local/Cellar/llvm/5.0.0/bin/llvm-ar".
INFO:Found "/usr/local/Cellar/llvm/5.0.0/bin/llvm-nm".
INFO:Searching for LLVM Bitcode compiler...
INFO:Found clang in LLVM Build dir.../usr/local/Cellar/llvm/5.0.0/bin/clang
INFO:Testing LLVM Bitcode compiler.../usr/local/Cellar/llvm/5.0.0/bin/clang
INFO:Compiler /usr/local/Cellar/llvm/5.0.0/bin/clang works
INFO:Using LLVM Bitcode Compiler.../usr/local/Cellar/llvm/5.0.0/bin/clang
INFO:Checking for ncurses...
INFO:Writing templated file to "/Users/apple/Documents/Dev/klee-uclibc/Makefile.klee"
INFO:Setting up pre-made configure for...x86_64
INFO:Installing .config file
INFO:Looking for kernel include path...
ERROR:Kernel header files not found at '/usr/include': '/usr/include/asm/unistd.h' is absent.Export the UCLIBC_KERNEL_HEADERS environment variable to change thedefault path ('/usr/include')

cannot use llvm-ld upper on llvm 3.2

Hi, all

Beacase "llvm-ld" is removed upper on LLVM 3.2, I cannot build "klee-uClibc".

스크린샷 2021-10-22 오전 6 52 11

Please refer to LLVM 3.2 release notes

llvm-ld and llvm-stub have been removed, llvm-ld functionality can be partially replaced by llvm-link | opt | {llc | as, llc -filetype=obj} | ld, or fully replaced by Clang.

Thanks,

wget http://www.uclibc.org fails

The wget http://www.uclibc.org call in extra/locale/Makefile.in fails for me currently. It seems that switching to https is now necessary. Also, I needed to switch from wget to curl, but am not sure if that is only a local issue.

#include_next <limits.h> missing

While compiling on Ubuntu 12.04-03 LTS having gcc 4.6.3, having llvm-2.9 and clang 2.9:

$ clang --version
clang version 2.9 (tags/RELEASE_29/final)
Target: x86_64-unknown-linux-gnu
Thread model: posix

I get the error during make:

*
* uClibc development/debugging options
*
Cross-compiling toolchain prefix (CROSS_COMPILER_PREFIX) [] 
Enter any extra CFLAGS to use to build uClibc (UCLIBC_EXTRA_CFLAGS) [] 
Build uClibc with debugging symbols (DODEBUG) [N/y/?] n
Strip libraries and executables (DOSTRIP) [N/y/?] n
Build uClibc with run-time assertion testing (DOASSERTS) [N/y/?] n
Build malloc with debugging support (UCLIBC_MALLOC_DEBUGGING) [N/y/?] n
Compiler Warnings (WARNINGS) [-Wall] -Wall
Enable extra annoying warnings (EXTRA_WARNINGS) [N/y/?] n
Compile all sources at once into an object (DOMULTI) [N/y/?] n
Manuel's hidden warnings (UCLIBC_MJN3_ONLY) [N/y/?] n
#
# configuration written to .config
#
./extra/scripts/conf-header.sh .config > include/bits/uClibc_config.h
  CC libcrypt/des.os
clang: warning: argument unused during compilation: '-fgnu89-inline'
In file included from libcrypt/des.c:62:
In file included from ./include/sys/param.h:22:
In file included from ./include/limits.h:124:
/usr/include/limits.h:125:16: fatal error: 'limits.h' file not found
# include_next <limits.h>
               ^
1 error generated.
make: *** [libcrypt/des.os] Error 1

I configured as per http://ccadar.github.io/klee/GetStarted.html :

./configure --make-llvm-lib

And guess why I'm getting this error?

Support missing targets with uclibc-ng

Currently, uclibc-ng, which is a descendant of uclibc, supports more variety of targets including aarch64 with active maintenance.

I think that if klee-uclibc is rebuilt on top of uclibc-ng instead of the deprecated uclibc, it will become more useful. Or, some of the uclibc-ng's existing code could be ported here.

Build with locale?

There is an inconsistency between klee_legagcy_i686 and klee_legacy_x86_64.

  • klee_legacy_i686 was configured to build with locale (it included a locale tarball extra/locale/uClibc-locale-030818.tgz)
  • klee_legacy_x86_64 was not configured to build with locale.

Should we build klee_0_9_29 build with locale?

make config error

Hi, I am new to the klee-uclibc. When I run the command "make config", I got this error message:
Rules.mak:52: Makefile.klee: No such file or directory
make: *** No rule to make target 'Makefile.klee'. Stop.
So, can someone please help me to solve it?

Test and then announce new klee-uclibc

I have pushed three new branches

  • klee_legacy_x86_64 : Legacy klee-uclibc for 64-bit, this will not be maintained
  • klee_legacy_i686 : Legacy klee-uclibc for 32-bit, this will not be maintained
  • klee_0_9_29 : This is the new klee-uclibc

klee_0_9_29 : Is the built on top of the 0_9_29 branch (not the same as the 0_9_29 tag). I have selectively applied changes from the original klee-uclibc as several commits and have I tried my best to provide good commit messages. I found this quite challenging and it's lead me to conclude that we really need to rethink how KLEE and uclibc should interact because some of this code is horrible.

Building klee-uclibc on this branch succeeds for

  • llvm-gcc4.2 (llvm2.9) 32-bit and 64-bit
  • clang 3.3 32-bit and 64bit (Thanks to @MartinNowack )

This branch on 64-bit currently passes the KLEE tests when built with llvm-gcc, on 32-bit it doesn't quite pass but I need to look into this further. I don't believe this is related to uclibc because KLEE's test seem to be broken on 32-bit if I use the old klee-uclibc as well.

What I would like to do is (with permission from all contributors @ccadar @MartinNowack )

  • Remove the old klee_monolithic and klee_monolithic_llvm33 branches and just continue development on the klee_0_9_29 branch. I don't want to do this too soon because there are some changes on klee_monolithic_llvm33 from @MartinNowack that are not on the klee_0_9_29 branch. Perhaps we should switch to a push-pull model for the klee_0_9_29 branch?
  • Then make klee_0_9_29 the default branch for this repository.
  • Then announce these changes on the klee-dev mailing list and update the "Getting Started" documentation for KLEE to instruct people to use klee-uclibc from this repository. The klee-uclibc tarballs on the KLEE website are broken (and have been for a while) so I don't see any good reason to delay doing this.

www.uclibc.org not handled by Quad9 secure DNS

Hello, secured service of Quad9 DNS can't resolve www.uclibc.org link used in this makefile.

# secured : Malware Blocking, DNSSEC Validation
>> nslookup www.uclibc.org 9.9.9.9
Server:         9.9.9.9
Address:        9.9.9.9#53

 ** server cant find www.uclibc.org: NXDOMAIN

# Unsecured: No Malware blocking, no DNSSEC validation
>> nslookup www.uclibc.org 9.9.9.10
Server:         9.9.9.10
Address:        9.9.9.10#53

Non-authoritative answer:
Name:   www.uclibc.org
Address: 140.211.167.122

To make sure we download a trusted version of locale data, could you maybe add the uClibc-locale-030818.tgz file to this repo ? Thanks !

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.