---
title: 选项 -finline-force=
description: "该选项为链接时选项，与-flto结合使用，用于在LTO链接时，指示对传入的目标静态库或目标文件尝试进行内联，该选项将对目标文件中的函数进行内联增强，具体包括以下内联扩展："
url: https://www.hikunpeng.com/document/detail/zh/kunpengdevkithistory/hgcc/hist-hgcc/topic_0000002384506209.html
sourcePath: /source/zh/kunpengdevkithistory/hgcc/hist-hgcc/topic_0000002384506209.html
indexId: eb1f8ebdab2e2e17e93d9ea076b40f3449d698aceef66cd518cd826c8b4cd51174
---
# 选项 -finline-force=

#### 说明

该选项为链接时选项，与-flto结合使用，用于在LTO链接时，指示对传入的目标静态库或目标文件尝试进行内联，该选项将对目标文件中的函数进行内联增强，具体包括以下内联扩展：

- 架构选项的兼容，当调用函数和被调用函数使用的march/mcpu等信息不同时，尽可能将被调用函数的架构选项与调用函数的架构选项切换一致，并进行内联编译。
- inline关键字，类似于被调用函数增加了inline关键字，指示在编译过程中能找到函数实体，就尽可能内联。
- always_inline属性，类似于被调用函数增加了__attribute__((always_inline))属性。


#### 使用方法

在选项中加入，如传入多个文件名通过逗号隔开：

```
-flto -finline-force=liba.a,libb.a
```

注：-finline-force，不加目标文件名形式，仅用于全局内联调试分析，不直接使用。

举例：

```
gcc -O2 -fPIC -flto -c fa.c -o fa.o
gcc-ar rcs liba.a fa.o

gcc -O2 -fPIC -flto -finline-force=liba.a main.c liba.a -o exe
```
