nashi2000 发表于 2006-4-5 11:05:45

【求助】关于LD_ASSUME_KERNEL环境变量的设置

在Redhat 9上安装了IDS 9.4,运行都能正常,但是每次都提示

Incorrectly built binary which accesses errno, h_errno or _res directly. Needs to be fixed.

上网查找了一下相关信息好像是说跟LD_ASSUME_KERNEL这个环境变量有关,请教一下大虾米,这个变量的含义以及设置成2.4.19 (或2.2.5) 2.4.1这些都是依据什么,是不是跟内核版本有关?

cnhnln 发表于 2006-4-12 16:44:40

请参阅“Red Hat Linux 9 发行注记”


Red Hat Linux 9 包括 Native POSIX Thread Library (NPTL),它是 Linux 的 POSIX 线程的新实现。该库为 i686 或更高的处理器提供了性能增进和增加了的可缩放性。

该线程库的设计目标是与原有的 LinuxThreads 实现在二进制上兼容;不过,依赖于脱离 POSIX 标准的 LinuxThreads 实现之处的应用程序将需要被修正。值得注意的不同之处包括:

- 信号处理已从每线程信号处理改成 POSIX 进程信号处理。

- getpid() 在所有的线程中返回相同值。

- 如果使用了 vfork(),用 pthread_atfork 注册的线程处理程序就不会运行。

使用 NPTL 时会遇到问题的已知应用程序包括:

- 版本 1.4.1 之前的 Sun JRE

- IBM JRE

如果某应用程序使用 NPTL 无法正确运行,它可以使用原有的 LinuxThreads 实现来运行,方法是设置以下的环境变量:

LD_ASSUME_KERNEL=<kernel-version>

可用的版本如下:

- 2.4.1 — 带有浮动堆栈的 Linuxthreads

- 2.2.5 — 没有浮动堆栈的 Linuxthreads

所有动态链接的程序的 NPTL 支持可以使用以下引导时间选项来禁用:

nosysinfo
页: [1]
查看完整版本: 【求助】关于LD_ASSUME_KERNEL环境变量的设置