我正在研究基于klee工具的符号执行。我正在通过docker运行klee。我创建了一个目录并将c程序文件保存在该目录中。但是从klee退出后,如果我再次尝试进入klee,它显示没有这样的目录,并且我保存的程序丢失了。请帮助我解决这个问题。希望你能帮助我。提前感谢!!
szqfcxe21#
我已经发现了问题。问题是我在保存文件后删除了容器。我以前使用过以下命令。
$ docker run --rm -ti --ulimit='stack=-1:-1' klee/klee
这包括rm,它删除了容器。这就是为什么在删除容器时,目录和保存的文件被删除了。为了解决这个问题,我们必须创建一个容器并将文件保存在该容器中。不要删除容器。以下是我遵循的步骤:1.创建一个docker容器。给予你想要创建的容器的名称。我的容器的名称是my_first_klee_container。
rm
my_first_klee_container
$ docker run -ti --name=my_first_klee_container --ulimit='stack=-1:-1' klee/klee
1.现在你可以创建一个目录,输入一个c程序并保存它。1.使用llvm编译器编译并使用klee运行它。1.现在通过键入exit命令退出klee。1.尝试通过以下命令重新启动容器:
$ docker start -ai my_first_klee_container
1.输入命令ls。现在,您可以查看和访问您创建的文件。有关详细信息,请访问https://klee.github.io/docker/
ls
1条答案
按热度按时间szqfcxe21#
我已经发现了问题。问题是我在保存文件后删除了容器。我以前使用过以下命令。
这包括
rm
,它删除了容器。这就是为什么在删除容器时,目录和保存的文件被删除了。为了解决这个问题,我们必须创建一个容器并将文件保存在该容器中。不要删除容器。以下是我遵循的步骤:1.创建一个docker容器。给予你想要创建的容器的名称。我的容器的名称是
my_first_klee_container
。1.现在你可以创建一个目录,输入一个c程序并保存它。
1.使用llvm编译器编译并使用klee运行它。
1.现在通过键入exit命令退出klee。
1.尝试通过以下命令重新启动容器:
1.输入命令
ls
。现在,您可以查看和访问您创建的文件。有关详细信息,请访问https://klee.github.io/docker/