linux下软件编译出错

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux下软件编译出错相关的知识,希望对你有一定的参考价值。

平台:virtualbox安装ylmfos5.0beta3
codeblock:
./../../src/include/sdk_common.h:34:23: 致命错误:wx/wxprec.h:没有那个文件或目录
无论什么软件编译都会出错,gcc有点特别,make & make install才报错。
普通的软件:
make[3]: *** [tinywxuni.lo] 错误 1
make[3]: *** 正在等待未完成的任务....
mv -f .deps/tinyxmlparser.Tpo .deps/tinyxmlparser.Plo
make[3]: 离开目录“/var/tmp/ybs/codeblocks/codeblocks-10.05/src/base/tinyxml”
make[2]: *** [all-recursive] 错误 1
make[2]: 离开目录“/var/tmp/ybs/codeblocks/codeblocks-10.05/src/base”
make[1]: *** [all-recursive] 错误 1
make[1]: 离开目录“/var/tmp/ybs/codeblocks/codeblocks-10.05/src”
make: *** [all-recursive] 错误 1
gcc差不多,但是configure过得去,可是到了剩下的步骤就overflow了。
因为防止出现超时,分数追加发放,绝对诚信!

没有安装wx2.4,找不到头文件和库导致。
用包管理器安装wx2.4试一下。
参考技术A 安装开发报没有?

Linux 编译LVGL仿真器出错

Linux 编译LVGL仿真器出错

一、错误现象

我在虚拟机下使用 LVGL 仿真器,编译仿真器源代码时发生报错

cc: error: unrecognized command line option ‘-Wshift-negative-value’
cc: error: unrecognized command line option ‘-Wshift-negative-value’
cc: error: unrecognized command line option ‘-Wshift-negative-value’
Building project file: lvgl/examples/widgets/chart/lv_example_chart_6.c
Makefile:45: recipe for target 'build/obj/lvgl/examples/widgets/list/lv_example_list_1.o' failed
make: *** [build/obj/lvgl/examples/widgets/list/lv_example_list_1.o] Error 1
make: *** 正在等待未完成的任务....
Makefile:45: recipe for target 'build/obj/lvgl/examples/widgets/spinner/lv_example_spinner_1.o' failed
make: *** [build/obj/lvgl/examples/widgets/spinner/lv_example_spinner_1.o] Error 1
Makefile:45: recipe for target 'build/obj/lvgl/examples/widgets/led/lv_example_led_1.o' failed
make: *** [build/obj/lvgl/examples/widgets/led/lv_example_led_1.o] Error 1
cc: error: unrecognized command line option ‘-Wshift-negative-value’
Makefile:45: recipe for target 'build/obj/lvgl/examples/widgets/textarea/lv_example_textarea_3.o' failed
make: *** [build/obj/lvgl/examples/widgets/textarea/lv_example_textarea_3.o] Error 1
cc: error: unrecognized command line option ‘-Wshift-negative-value’
Makefile:45: recipe for target 'build/obj/lvgl/examples/widgets/textarea/lv_example_textarea_2.o' failed
make: *** [build/obj/lvgl/examples/widgets/textarea/lv_example_textarea_2.o] Error 1
cc: error: unrecognized command line option ‘-Wshift-negative-value’
cc: error: unrecognized command line option ‘-Wshift-negative-value’
Makefile:45: recipe for target 'build/obj/lvgl/examples/widgets/textarea/lv_example_textarea_1.o' failed
make: *** [build/obj/lvgl/examples/widgets/textarea/lv_example_textarea_1.o] Error 1
Makefile:45: recipe for target 'build/obj/lvgl/examples/widgets/checkbox/lv_example_checkbox_1.o' failed
make: *** [build/obj/lvgl/examples/widgets/checkbox/lv_example_checkbox_1.o] Error 1
cc: error: unrecognized command line option ‘-Wshift-negative-value’
Makefile:45: recipe for target 'build/obj/lvgl/examples/widgets/chart/lv_example_chart_6.o' failed
make: *** [build/obj/lvgl/examples/widgets/chart/lv_example_chart_6.o] Error 1

编译无法进行

二、错误分析

根据提示分析错误,其中 cc: error 提示报错,翻到 Makefile 一看属于 gcc 编译器

unrecognized command line option ‘-Wshift-negative-value’ 提示无法识别指令,所以分析应该是 GCC 版本的原因,可能我的版本不支持这个指令,解决的方式就是换版本,或者删掉这个指令看能不能正常运行

三、错误解决

这里我先试试删除指令再编译,先用 grep 找到指令在文件的哪一行

grep -n "\\-Wshift\\-negative\\-value" Makefile

编辑文件,删除对应指令

vim make file

保存后程序编译

编译成功,执行 demo,可以正常执行:

以上是关于linux下软件编译出错的主要内容,如果未能解决你的问题,请参考以下文章

linux下程序编译出错解决方法

Linux下g++编译thread出错的的解决方法

Linux 编译LVGL仿真器出错

Linux 编译LVGL仿真器出错

在linux环境下,php语法出错,怎样让php编译后提示编译错误,错误在哪?

CMake编译VTK,ITK总是出错