问题标签 [librt]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
makefile - 如何使用 shm_open() 的修改后的 malloc 构建 glibc?
我正在修改库中的malloc.c
andhooks.c
文件glibc
,我的修改使用shm_open()
.
现在要构建glibc
,手册页shm_open()
说我需要与-lrt 链接。
据我所知,我面临的问题是librt
在glibc
. 如何修改生成文件以构建glibc
和链接librt
?
或者有没有其他方法可以实现这一目标?
malloc - LD_PRELOAD malloc 到 shm_open
我正在尝试malloc
使用LD_PRELOAD
. 我想通过更改malloc
为shm_open
后跟将所有内存分配移动到共享内存mmap
。我该怎么做?
LD_PRELOADmalloc
工作正常。我可以拦截每一个malloc
电话。但是,调用shm_open
被拦截malloc
失败,因为shm_open
需要librt
链接到LD_PRELOAD 中需要libdl
的链接。dlsym
有一个递归插入。我想过创建一个包装共享内存分配的静态库。然后从被拦截的地方调用它malloc
。但librt
不能动态链接。
librt - librt.so 是什么?我怎样才能直接使用它?
我发现一些库链接到librt.so
,而另一些则没有。我想知道它在什么情况下是相关的。
我从来没有直接使用过这个库。有没有演示直接使用它的演示?有没有相关的头文件?
gcc - Makefile g++ lrt 问题。找不到lrt
这是我的生成文件。
我无法链接库“lrt”。我广泛使用 POSIX 实时,例如 mq_open()、mq_send()、mq_receive() 等......所以我必须链接它。
我尝试过的一些变体:1. librt 2. lrt 3. rt 4. librt-dev
但是我总是得到这个错误:
我什至尝试手动安装“librt”,但找不到包。apt-get 也没有找到它。
我假设这个库预装了 Ubuntu 普通内核(没有实时补丁)。需要帮助解决此问题。
linux - 为什么我拒绝尝试 shm_open 的权限?
考虑以下 C 程序:
当我在我的 GNU/Linux 系统(Devuan Beowulf,Linux 5.10.0-9,amd64 CPU)上运行它时,我得到:
为什么我被拒绝许可?我很确定我遵循了man shm_open
页面中的所有指南,我请求的权限似乎没问题 - 那么有什么问题?