ubuntu qt opencv 安装 解决Cannot connect creator comm socket 和 Circular all <- first dependency dropped.

来源:互联网 发布:中国与欧盟贸易数据图 编辑:程序博客网 时间:2024/06/07 12:17

这下必须记录一下了。

这东西实在太烦了,搞了好久。

两个错误很烦  Cannot connect creator comm socket 和 Circular all <- first dependency dropped.


尝试过很多方法,一下方法可行。别的也许可行,本人没搞定。。


1. opencv 安装

参考http://www.samontab.com/web/2012/06/installing-opencv-2-4-1-ubuntu-12-04-lts/

非常完整,应该没有失败的可能。


2. qt 安装

参考:http://blog.csdn.net/berryreload/article/details/7259372 缩略如下:

step 1: 参考Ubuntu下安装Qt环境及Qt Creator开发工具
在Terminal中输入:sudo apt-get install qt4-dev-tools qt4-doc qt4-qtconfig qt4-demos qt4-designer
◆qt4-dev-tools 中包括了Qt Assistant,Qt Linguist,Qt Creator(貌似在Ubuntu 11版本中没有自动安装)
◆qt4-doc 这个是帮助文档
◆qt4-qtconfig Qt的配置工具,这个装好默认好
◆qt4-demos 官方的一些Demo
◆qt4-designer 可视化窗体设置工具
以上内容136MB,不大嘛,但是网络安装需要1个多小时~~~
step2: 
按照上文,安装后,没有安装Qt Creator嘛
在Ubuntu 图形桌面上点击左侧的Ubuntu Software Center,搜索Qt ,选择Qt Creator,22.8MB,很快就安装上去了。
(如果没有step1,直接使用Ubuntu Software Center安装Qt Creator,会提示需要先安装C++编译器)
现在,
可以在terminal命令行执行命令 qtcreator启动Qt Creator了

3. opencv 测试程序: 

建立一个控制台程序,千万不要取名为first,否则会产生循环依赖问题,貌似qt自己的程序有一个first,你再建一个first就粗事了,报错 -1: error: Circular all <- first dependency dropped. 

在.pro里面增加

INCLUDEPATH += /usr/local/include \                /usr/local/include/opencv \                /usr/local/include/opencv2LIBS += /usr/local/lib/libopencv_highgui.so \        /usr/local/lib/libopencv_core.so    \        /usr/local/lib/libopencv_imgproc.so


主函数:

#include <QCoreApplication>#include <opencv2/core/core.hpp>#include <opencv2/highgui/highgui.hpp>#include <opencv2/imgproc/imgproc.hpp>#include <stdio.h>using namespace cv;int main(int argc, char *argv[]){//    QCoreApplication a(argc, argv);    namedWindow( "src", WINDOW_AUTOSIZE );    Mat src1 = imread( "lena.jpg" );    while(1)    {        printf("hi");        imshow( "src", src1 );        char c =  waitKey(30);        if( 27==c )            return 0;    }//    return a.exec();}

将lena.jpg 放到生成的文件目录中。


前面都很顺利。这里可能出现问题:表示形式各不相同。

Cannot connect creator comm socket /tmp/qt_temp /stub-socke

也有之出现终端却没有输出的。

搞了很久。最后不小心成功了。

直接上正确答案: tools(找不到别着急,看下文)- options - general - terminal 里面 换成 /usr/bin/xterm -e  

用ubuntu的可能找不到 tools。 ubuntu 用的是全局工具栏。也就是说,你把焦点放到你的qt creator 。然后鼠标放到屏幕最上方,这时候出现的工具栏就是属于qt creator 的!!!

万一还出错,考虑是否没有安装xterm。我的已经安装,故没有出现


配置这东西,说穿了不值一提,但是各种错误的时候真是纠结。