我有一堆使用 signal.h 和其中的 siginfo 结构的开源库。不幸的是,我得到了一个新桌面,我需要将内核更新到 3.8(从 3.7)来解决我的硬件的一些问题(从 ubuntu 12.04 -> 13.04)。
随着新内核的更新,系统上的 signal.h 将其 siginfo 结构更改为 siginfo_t。不幸的是,我不能将库中的结构重命名为 siginfo_t,因为它是来自第 3 方的维护库。
我试图解决这个问题:
typedef 新的 siginfo_t
#ifndef siginfo typedef siginfo_t siginfo; #endif
问题:仍然会出现大量错误。很确定 struct 的更改不向后兼容。
等待图书馆的新更新..虽然没有任何工作
不知道我能做什么。如果我回退到 3.7 内核,我的声卡和显卡驱动程序不会 100% 受支持,这会使我的开发环境难以工作。