Intel I225/I226 igc驱动在Synology设备上的编译与安装指南
一、项目目录结构及介绍
该项目位于 GitHub 上,其主要结构是为了便于开发者编译和加载Intel的igc网络驱动程序,专门为运行Kernel 4.4.180的Synology DiskStation Manager (DSM)设计。以下是大致的目录结构说明:
- synology-igc/
├── igc # 主要源代码目录
│ ├── ...
├── releases # 预编译模块的存放位置
│ └── igc*.tgz # 编译好的驱动模块文件
├── Dockerfile # Docker构建文件,用于环境隔离编译
├── README.md # 项目说明文件,包含了快速指引和重要信息
└── ... # 可能还包含其他文档或脚本
- igc: 包含了驱动的源码,是开发与编译的核心部分。
- releases: 存放预编译或者自己编译完成后的驱动模块。
- Dockerfile: 用于基于Docker的编译环境设置,确保编译的一致性。
- README.md: 关键的文档,指导如何编译和加载驱动。
二、项目的启动文件介绍
这个开源项目并没有传统意义上的“启动文件”,因为其不是一个可执行应用,而是驱动程序。然而,关键的操作在于编译和加载驱动模块。其中,编译过程涉及的主要命令执行可以视为“启动”驱动编译流程的关键步骤:
-
使用Docker环境编译(适合任何平台):
PLATFORM=geminilake docker run -u 1000 --rm -t -v "$PWD":/input -v "$PWD/output":/output fbelavenuto/syno-compiler compile-module $PLATFORM
-
或者,在Synology开发环境中手动编译:
- 设置好开发环境后,进入源码目录执行:
cd /usr/src/synology-igc/ make -C /usr/local/x86_64-pc-linux-gnu/x86_64-pc-linux-gnu/sys-root/usr/lib/modules/DSM-7.1/build M=$PWD modules
- 设置好开发环境后,进入源码目录执行:
三、项目的配置文件介绍
该项目并未明确提及外部配置文件,它的配置主要是通过环境变量(如PLATFORM
)和编译时的参数来控制。在编译阶段,选择不同的平台(例如geminilake
)就是一种“配置”。若需定制化行为,可能需要直接修改源码中的宏定义或Makefile来实现特定的编译选项调整。
在实际应用中,驱动的“配置”更多体现在加载时使用的参数,比如加载驱动时可能通过insmod igc.ko debug=16
来启用调试日志,这是一种动态的配置方式,而非静态配置文件的形式存在。
请注意,上述指南基于提供的GitHub仓库信息综合整理,具体操作时应参考仓库内的最新README.md
文件以获取最准确的指令和细节。