我正在尝试在yocto项目中使用CFLAGS和LDFLAGS编译qtbase配方。我在qtbase配方中添加了以下几行。
CFLAGS和CPPFLAGS用于添加代码检测以查找代码覆盖率。
CFLAGS += "-fprofile-arcs -ftest-coverage"
CPPFLAGS += "-fprofile-arcs -ftest-coverage"
LDFLAGS用于链接。
LDFLAGS += "-lgcov --coverage"
请找到指向日志文件的链接:https://drive.google.com/open?id=1tmVd7C2IHgOUZKdId-Xl0zFRfKwjYPut
错误摘要
/scratch/work/sysdk/dksys/build/tmp/work/core2-64-mel-linux/qtbase/5.6.3+gitAUTOINC+e6f8b072d2-r0/recipe-sysroot-native/usr/bin/x86_64-mel-linux/../../libexec/x86_64-mel-linux/gcc/x86_64-mel-linux/7.3.0/ld.gold: internal error in override_version, at ../../gold/resolve.cc:61<br>
collect2: error: ld returned 1 exit status<br>
Makefile.eglfs_device_lib:146: recipe for target '../../../../lib/libQt5EglDeviceIntegration.so.5.6.3' failed<br>
make[5]: [../../../../lib/libQt5EglDeviceIntegration.so.5.6.3] Error 1
make[5]: Leaving directory '/scratch/work/sysdk/dksys/build/tmp/work/core2-64-mel-linux/qtbase/5.6.3+gitAUTOINC+e6f8b072d2-r0/build/src/plugins/platforms/eglfs'
Makefile:42: recipe for target 'sub-eglfs_device_lib-pro-make_first-ordered' failed
make[4]: *** [sub-eglfs_device_lib-pro-make_first-ordered] Error 2
make[4]: Leaving directory '/scratch/work/sysdk/dksys/build/tmp/work/core2-64-mel-linux/qtbase/5.6.3+gitAUTOINC+e6f8b072d2-r0/build/src/plugins/platforms/eglfs'
Makefile:96: recipe for target 'sub-eglfs-make_first' failed
make[3]:[sub-eglfs-make_first] Error 2
make[3]:Waiting for unfinished jobs....
答案 0 :(得分:1)
经过大量研究,我能够找到我问题的答案。我必须在配方中添加以下行以删除黄金链接器。
QT_CONFIG_FLAGS += " -no-use-gold-linker"