故来此发帖求助,首次发帖求助,不周之处还请包涵,谢谢。
下面来陈述问题:
Windows环境下的Eclipse+cdt+MinGW+OPENCV2.4.4
C++简单代码测试没问题(MinGW的PATH添加过了)
按照教程在property里添加了
includes:
"E:\OPENCV\build\include"
"E:\OPENCV\build\include\opencv"
"E:\OPENCV\build\include\opencv2"
libraries:
libopencv_core244
libopencv_highgui244
....等共11个
libraries search path:
"E:\OPENCV\build\x86\mingw\lib"
"E:\OPENCV\build\x86\mingw\bin"
测试代码
#include <cv.h>
#include <highgui.h>
#include <stdio.h>
using namespace cv;
using namespace std;
int main(int argc, char** argv) {
printf("%d", 3);
Mat image=imread("f:\\lena.jpg");
printf("%d", 4);
return 0;
}
然后build后只有一个warming
Description Resource Path Location Type
Invalid project path: Duplicate path entries found (/TESTC [Include path] isSystemInclude:true includePath:D:/Eclipse/MinGW/include), path: [/TESTC]. TESTC pathentry Path Entry Problem
不知道哪里的问题,但只是Warming没在意
然后运行起来就跳出来.exe已停止工作
问题大概是这样,希望能够得到前辈们的帮助。
哪里没说明白的待补充,谢谢
5 个解决方案
#1
Windows:崩溃的时候在弹出的对话框按相应按钮进入调试,按Alt+7键查看Call Stack里面从上到下列出的对应从里层到外层的函数调用历史。双击某一行可将光标定位到此次调用的源代码或汇编指令处。
Linux:进程意外退出会在当前目录下产生‘core’文件或形如‘core.数字’的文件比如‘core.1234’
使用命令
gdb 运行程序名 core或core.数字
进入gdb然后使用bt命令
可以查看进程意外退出前函数调用的堆栈,内容为从上到下列出对应从里层到外层的函数调用历史。
如果进程意外退出不产生core文件,参考“ulimit -c core文件最大块大小”命令
Linux:进程意外退出会在当前目录下产生‘core’文件或形如‘core.数字’的文件比如‘core.1234’
使用命令
gdb 运行程序名 core或core.数字
进入gdb然后使用bt命令
可以查看进程意外退出前函数调用的堆栈,内容为从上到下列出对应从里层到外层的函数调用历史。
如果进程意外退出不产生core文件,参考“ulimit -c core文件最大块大小”命令
#2
抱歉,没明白楼上前辈的意思,在哪里alt+7?debug下吗?
debug 现在是run和debug按了以后都显示 Nothing to build for **(project名)
顺便问个小问题,普通程序的调试下,控制台没有输出是怎么回事?
run configu 哪里添加了path,运行时有输出的
一定要按照网上教程
1.在main函数入口处添加 setbuf(stdout,NULL);
2.在每个printf打印后添加下fflush(stdout);
吗?有没有不这么麻烦的方法,这样了cout还是无法输出
另外补充一点我用的opencv2.4.4中MinGW(E:\OPENCV\build\x86\mingw\bin和lib下)
中只有libopencv_core244.dll 没有libopencv_core244d.dl(是debug对应版本吗)l
我看VS好像有两个对应的
另外再问下OPENCV2.4.9中没有MinGW版本,哪些版本中有呢?
debug 现在是run和debug按了以后都显示 Nothing to build for **(project名)
顺便问个小问题,普通程序的调试下,控制台没有输出是怎么回事?
run configu 哪里添加了path,运行时有输出的
一定要按照网上教程
1.在main函数入口处添加 setbuf(stdout,NULL);
2.在每个printf打印后添加下fflush(stdout);
吗?有没有不这么麻烦的方法,这样了cout还是无法输出
另外补充一点我用的opencv2.4.4中MinGW(E:\OPENCV\build\x86\mingw\bin和lib下)
中只有libopencv_core244.dll 没有libopencv_core244d.dl(是debug对应版本吗)l
我看VS好像有两个对应的
另外再问下OPENCV2.4.9中没有MinGW版本,哪些版本中有呢?
#3
别听楼上那个傻逼的胡言乱语
#4
揭发:
1楼是机器人回复。证据是问题中只要含有“.exe已停止工作”,就固定回复1楼内容。
1楼是机器人回复。证据是问题中只要含有“.exe已停止工作”,就固定回复1楼内容。
#5
以下为C/C++论坛常驻专用机器侠回复:
Windows:
用depends.exe查看exe以来的dll
Linux:
用ldd命令查看可执行文件依赖的.so
Windows:
用depends.exe查看exe以来的dll
Linux:
用ldd命令查看可执行文件依赖的.so
#1
Windows:崩溃的时候在弹出的对话框按相应按钮进入调试,按Alt+7键查看Call Stack里面从上到下列出的对应从里层到外层的函数调用历史。双击某一行可将光标定位到此次调用的源代码或汇编指令处。
Linux:进程意外退出会在当前目录下产生‘core’文件或形如‘core.数字’的文件比如‘core.1234’
使用命令
gdb 运行程序名 core或core.数字
进入gdb然后使用bt命令
可以查看进程意外退出前函数调用的堆栈,内容为从上到下列出对应从里层到外层的函数调用历史。
如果进程意外退出不产生core文件,参考“ulimit -c core文件最大块大小”命令
Linux:进程意外退出会在当前目录下产生‘core’文件或形如‘core.数字’的文件比如‘core.1234’
使用命令
gdb 运行程序名 core或core.数字
进入gdb然后使用bt命令
可以查看进程意外退出前函数调用的堆栈,内容为从上到下列出对应从里层到外层的函数调用历史。
如果进程意外退出不产生core文件,参考“ulimit -c core文件最大块大小”命令
#2
抱歉,没明白楼上前辈的意思,在哪里alt+7?debug下吗?
debug 现在是run和debug按了以后都显示 Nothing to build for **(project名)
顺便问个小问题,普通程序的调试下,控制台没有输出是怎么回事?
run configu 哪里添加了path,运行时有输出的
一定要按照网上教程
1.在main函数入口处添加 setbuf(stdout,NULL);
2.在每个printf打印后添加下fflush(stdout);
吗?有没有不这么麻烦的方法,这样了cout还是无法输出
另外补充一点我用的opencv2.4.4中MinGW(E:\OPENCV\build\x86\mingw\bin和lib下)
中只有libopencv_core244.dll 没有libopencv_core244d.dl(是debug对应版本吗)l
我看VS好像有两个对应的
另外再问下OPENCV2.4.9中没有MinGW版本,哪些版本中有呢?
debug 现在是run和debug按了以后都显示 Nothing to build for **(project名)
顺便问个小问题,普通程序的调试下,控制台没有输出是怎么回事?
run configu 哪里添加了path,运行时有输出的
一定要按照网上教程
1.在main函数入口处添加 setbuf(stdout,NULL);
2.在每个printf打印后添加下fflush(stdout);
吗?有没有不这么麻烦的方法,这样了cout还是无法输出
另外补充一点我用的opencv2.4.4中MinGW(E:\OPENCV\build\x86\mingw\bin和lib下)
中只有libopencv_core244.dll 没有libopencv_core244d.dl(是debug对应版本吗)l
我看VS好像有两个对应的
另外再问下OPENCV2.4.9中没有MinGW版本,哪些版本中有呢?
#3
别听楼上那个傻逼的胡言乱语
#4
揭发:
1楼是机器人回复。证据是问题中只要含有“.exe已停止工作”,就固定回复1楼内容。
1楼是机器人回复。证据是问题中只要含有“.exe已停止工作”,就固定回复1楼内容。
#5
以下为C/C++论坛常驻专用机器侠回复:
Windows:
用depends.exe查看exe以来的dll
Linux:
用ldd命令查看可执行文件依赖的.so
Windows:
用depends.exe查看exe以来的dll
Linux:
用ldd命令查看可执行文件依赖的.so