---
title: 动态库替换静态库，找不到相关库文件的解决方法
description: "执行编译Snappy-java时提示以下信息。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengbds/ecosystemEnable/tpdl/kunpengsnappyjava111x_02_0011.html
sourcePath: /source/zh/kunpengbds/ecosystemEnable/tpdl/kunpengsnappyjava111x_02_0011.html
indexId: 81dd24f3eb713e7e97202f02f9f3c7ae09213f62333564d327d8f4fad9cde59b77
---
# 动态库替换静态库，找不到相关库文件的解决方法

#### 问题现象描述

执行编译Snappy-java时提示以下信息。

```
[exec] make: *** [target/commons-crypto-1.0.0-Default/libcommons-crypto.so] Error 1
```


#### 关键过程、根本原因分析

无


#### 结论、解决方案及效果

- 解决方案一：

  1. 进入“commons-crypto-CRYPTO-1.0.0”目录。
    1 cd commons-crypto-CRYPTO-1.0.0

  2. 在Makefile文件中添加G++的编译选项“-Wl,-Bdynamic”，确保使用动态链接方式。
- 解决方案二：
  安装静态库。如果使用动态库导致运行时找不到对应库，可以尝试安装对应的静态库版本，以避免依赖问题。

  通过Yum源安装所需要的glibc、libstdc++-static。 1 2 yum install libstdc++-static.aarch64 -y yum install glibc* -y
