---
title: 编译源码
description: "1. 下载flink-release-1.9.1源码并解压。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengbds/ecosystemEnable/Flink/kunpengflink191_02_0008.html
sourcePath: /source/zh/kunpengbds/ecosystemEnable/Flink/kunpengflink191_02_0008.html
indexId: 58fa49a48533d78c5fd8333e940179221487a2f8a6be688a292a6cd9b162c68a72
---
# 编译源码

1. 下载flink-release-1.9.1源码并解压。
  1 2 wget https://github.com/apache/flink/archive/release-1.9.1.tar.gz tar -zxf release-1.9.1.tar.gz

2. 进入解压后的目录。
  1 cd flink-release-1.9.1

3. 在“flink-release-1.9.1/pom.xml”文件中添加鲲鹏仓的引用。

  a. 打开文件。
    1 vi pom.xml

  b. 按“i”进入编辑模式，在<repositories>标签的第一位添加鲲鹏Maven仓库源。
    1 2 3 4 5 <repository> <id>kunpengmaven</id> <name>kunpeng maven</name> <url>https://mirrors.huaweicloud.com/kunpeng/maven</url> </repository>

  c. 按“Esc”键，输入:wq!，按“Enter”保存并退出编辑。
4. 在“flink-release-1.9.1/flink-dist/pom.xml”添加鲲鹏仓的引用。

  a. 打开文件。
    1 vi flink-dist/pom.xml

  b. 按“i”进入编辑模式，在<repositories>标签的第一位添加鲲鹏Maven仓库源。
    1 2 3 4 5 6 7 <repositories> <repository> <id>kunpengmaven</id> <name>kunpeng maven</name> <url>https://mirrors.huaweicloud.com/kunpeng/maven</url> </repository> </repositories>

  c. 按“Esc”键，输入:wq!，按“Enter”保存并退出编辑。
5. 在“flink-release-1.9.1/flink-state-backends/flink-statebackend-rocksdb/pom.xml”添加鲲鹏仓的引用。

  a. 打开文件。
    1 vi flink-state-backends/flink-statebackend-rocksdb/pom.xml

  b. 按“i”进入编辑模式，在<repositories>标签的第一位添加鲲鹏Maven仓库源。
    1 2 3 4 5 6 7 <repositories> <repository> <id>kunpengmaven</id> <name>kunpeng maven</name> <url>https://mirrors.huaweicloud.com/kunpeng/maven</url> </repository> </repositories>

  c. 按“Esc”键，输入:wq!，按“Enter”保存并退出编辑。
6. 在“flink-runtime/pom.xml”添加鲲鹏仓的引用。

  a. 打开文件。
    1 vi flink-runtime/pom.xml

  b. 按“i”进入编辑模式，在<repositories>标签的第一位添加鲲鹏Maven仓库源。
    1 2 3 4 5 6 7 <repositories> <repository> <id>kunpengmaven</id> <name>kunpeng maven</name> <url>https://mirrors.huaweicloud.com/kunpeng/maven</url> </repository> </repositories>

  c. 按“Esc”键，输入:wq!，按“Enter”保存并退出编辑。
7. 在“flink-release-1.9.1”目录下执行编译。
  1 mvn install -DskipTests -Dtar -Dhadoop.version=2.8.3

  编译成功后的截图如下：

  编译完成后在“flink-release-1.9.1/flink-dist/target/flink-1.9.1-bin/”生成目标目录“flink-1.9.1”。

8. 使用鲲鹏应用迁移工具扫描编译生成的tar包，确保没有包含有x86的so和JAR包。
  编译好的Flink包一定要使用鲲鹏应用迁移工具扫描，确保没有包含x86的so和JAR包。若不进行扫描，可能会存在x86的so和JAR包未被发现并未及时处理的情况，从而对组件的后续功能使用产生负面影响。 关于如何使用鲲鹏应用迁移工具进行扫描的详细信息，请参见《使用鲲鹏应用迁移工具案例(https://www.hikunpeng.com/document/detail/zh/kunpengbds/ecosystemEnable/porting-tuning-devkit/kunpengprtguseda_01_0004.html)》。
