Make 工作正常,但结果无法运行。现在该怎么办?

Make 工作正常,但结果无法运行。现在该怎么办?

我正在努力奔跑https://github.com/seanpringle/simpleswitcher在我的 ubuntu 12.04 上

我下载并编译了它。但是当我运行时,我得到了

*** glibc detected *** ./simpleswitcher: free(): invalid next size (fast): 0x08bff5a8 ***
======= Backtrace: =========
/lib/i386-linux-gnu/libc.so.6(+0x75ee2)[0x185ee2]
./simpleswitcher[0x8049a97]
/lib/i386-linux-gnu/libc.so.6(__libc_start_main+0xf3)[0x1294d3]
./simpleswitcher[0x8049d1d]
======= Memory map: ========
00110000-002b3000 r-xp 00000000 08:04 424359     /lib/i386-linux-gnu/libc-2.15.so
(memory map goes on and on)

我如何才能弄清楚发生了什么?我应该考虑哪些假设?我该如何开始弄清楚?

我是一名程序员——可以说,我可以编写简单的 C 和 Python——但坦率地说,我不知道发生了什么

答案1

在查看“问题”或“拉取请求”时,其中一个标记为“小更新”的拉取请求有一条提交,内容如下:

Martijn Koedam        Fix building ubuntu          6d0f4a9 

但在该 pull 的评论部分,看起来作者决定只“挑选”部分提交,排除一些特定于发行版的更改,说道:

一些 simpleswitcher 用户运行当前粗略的 Makefile 支持的有限版本的 make(例如,bmake)。

这使我相信它可能在 Ubuntu 上通过这个提交运行(提交大约是 4 个月前)。

因此尝试用这个分支进行构建,因为它看起来正在针对一些特定于分布的问题:https://github.com/DaveDavenport/simpleswitcher

相关内容