-qt-freetype 和 -system-freetype 这两个参数是冲突的。
-qt-freetype参数表示在构建Qt时使用Qt自带的FreeType库。
而 -system-freetype参数表示使用系统自带的FreeType库。
这两个参数分别指定使用不同的FreeType库:
- -qt-freetype:使用Qt自带的FreeType库
- -system-freetype:使用系统自带的FreeType库
所以这两个参数是不兼容的,在同时指定时会报错。
具体来说,会有以下冲突:1. 链接时指定的FreeType库不同。-qt-freetype时指定Qt内部的FreeType库,而-system-freetype时指定系统自带的FreeType库。2. 使用的FreeType头文件不同。Qt内建的FreeType头文件位于Qt安装目录下,而系统的FreeType头文件位于/usr/include下。3. FreeType库的版本可能不同。Qt自带的FreeType库版本可能与系统自带的FreeType库版本不同。总的来说,-qt-freetype和-system-freetype两个参数是互相排斥的,不能同时使用。对应的解决方法是:1. 选择性使用一个参数。根据需要选择使用Qt自带库还是系统库。2. 创建不同的Qt安装。分别构建使用Qt FreeType库和系统FreeType库的Qt版本。3. 将FreeType库包含到Qt安装目录。相当于将系统FreeType库与Qt自带库合二为一。所以,处理这两个参数冲突的关键是只选择使用一个FreeType库。