You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

TensorFlow 2.15.0导入失败报错,求execstack安装方式或替代方案

解决TensorFlow 2.15.0导入报错libtensorflow_framework.so.2: cannot enable executable stack as shared object requires: Invalid argument

获取execstack的方法

  • Debian/Ubuntu系统:直接安装独立的execstack包
    sudo apt update && sudo apt install execstack
    
  • RHEL/CentOS/Fedora系统:通过EPEL源安装
    先启用EPEL源(以CentOS 8为例):
    sudo dnf install epel-release
    
    再安装execstack:
    sudo dnf install execstack
    
  • 源码编译获取:通过编译prelink项目提取execstack工具
    git clone https://git.code.sf.net/p/prelink/prelink
    cd prelink
    ./autogen.sh
    ./configure
    make
    sudo cp src/execstack /usr/local/bin/
    

无需execstack的替代修复方法

  • 修改共享库的栈权限
    1. 先定位libtensorflow_framework.so.2的路径,可通过以下命令查找:
      python -c "import tensorflow as tf; print(tf.sysconfig.get_lib())"
      
      找到后路径类似/path/to/tensorflow/libtensorflow_framework.so.2
    2. 使用objcopy修改栈权限:
      objcopy --set-section-flags .note.GNU-stack="readonly,nounexec" /path/to/libtensorflow_framework.so.2
      
  • 切换TensorFlow版本
    尝试降级到2.14.0或升级到2.16.0,该问题可能在其他版本已修复:
    pip uninstall -y tensorflow
    pip install tensorflow==2.14.0
    
  • 临时调整系统安全策略(仅测试用,不建议长期关闭)
    如果是SELinux或AppArmor限制导致,可临时关闭后重试:
    # SELinux临时关闭
    sudo setenforce 0
    # AppArmor临时停止
    sudo systemctl stop apparmor
    

内容的提问来源于stack exchange,提问作者ShannonTown

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 21:23:16