【问题标题】:Warning when using 32-bit library to build on 64 bit VM使用 32 位库在 64 位 VM 上构建时出现警告
【发布时间】:2014-06-19 14:36:19
【问题描述】:

我正在尝试使用使用此 C 库“libhadoop.so”的应用程序构建文件。这样做时,会出现以下警告消息:

OpenJDK 64-Bit Server VM warning: You have loaded library /home/user/hadoop-
2.2.0/lib/native/libhadoop.so which might have disabled stack guard. The VM will
 try to fix the stack guard now.
It's highly recommended that you fix the library with 'execstack -c <libfile>', 
or link it with '-z noexecstack'.

有什么办法可以防止警告出现?

【问题讨论】:

  • 您尝试过它给您的建议吗?
  • 是的,我试过了,但同样的问题也出现了。

标签: c


【解决方案1】:

也许Stack guard might have disabled? 提供的解决方案也会对您有所帮助。

检查包“execstack”与:execstack --version 如果没有找到,安装它:

sudo apt-get install execstack

执行消息内推荐的命令:

sudo execstack -c /home/user/hadoop-2.2.0/lib/native/libhadoop.so

【讨论】:

    猜你喜欢
    • 2013-11-14
    • 2016-12-02
    • 1970-01-01
    • 1970-01-01
    • 2014-12-21
    • 2012-05-01
    • 2010-12-01
    • 2014-04-10
    • 1970-01-01
    相关资源
    最近更新 更多