2018/1/21 ~ 23
记录
1.装VS和Qt插件、halcon插件,较为顺利,一些错误在网上很快得到答案
2.刚开始拿到代码的时候,编译过不去,显示缺失一些文件,从网上找了一些文件塞进去可以编译过去,但是感觉不靠谱。
3.经孟提醒,从楼下的电脑里找对比,在一个文件夹(SiliconSoftware)里发现缺失文件!
4.再次重新添加到代码里,到各种群各种问(! ! !),无果。。。 此处花去许多将近一天!
5.下午去用电脑上的VS,大致上解决问题
残留:
1.QMutex
3.新生成的exe必须放在 D:Program FilesChampion obominton - 副本 才能运行
GenICam Explorer
microDisplay
silicon software GmbH
学到
0.VS使用文档
https://docs.microsoft.com/zh-cn/visualstudio/ide/getting-started-with-cpp-in-visual-studio
1.相对路径的设置
相对路径就是相当于以工程文件(XXXX.vcproj)为起点零计算出的能找到包含所需头文件(也就是找包含所需头文件的include目录)的路径。
例如:
robominton.vcxproj是在 F:BadmitonRobotBadmitonCode obominton obominton.vcxproj
则
F:BadmitonRobotBadmitonCode obomintonsrcCLSeriallibx64
等价于
.. obomintonsrcCLSeriallibx64
也就找到了clallserial.lib
2.VS配置里的各种目录
在VS工程中,添加c/c++工程中外部头文件及库的基本步骤:
1、添加工程的头文件目录:工程---属性---配置属性---c/c++---常规---附加包含目录:头文件存放目录 #include
如果有XXX.h找不到,设置这个目录可以解决。
2、添加文件引用的lib静态库路径:工程---属性---配置属性---链接器---常规---附加库目录:lib文件存放目录。
然后添加工程引用的lib文件名:工程---属性---配置属性---链接器---输入---附加依赖项:lib文件名。
C++的库会把函数、类的声明放在*.h中,实现放在*.cpp或*.cc中。编译之后,*.cpp,*.cc,*.c会被打包成一个.lib文件,这样可以保护源代码。
所以,要使用一个库,除了要include他的头文件以外,还要在链接过程中把lib加进去。这个就是在附加链接库中设置。
其实,一般的库会用#pragma comment(lib,"xxx.lib") 来设置
这个过程出错会出现link error,大概是“未定义的函数XXX”。
3、添加工程引用的dll动态库:把引用的dll放到工程的exe可执行文件所在的目录下。
VC++ Directories是一个Windows环境变量,C/C++是命令行参数,这是本质区别;
但是相同的项,也就是VC++ Directories中的include directories 对应到C/C++中的addition include directories 是一样的效果,也就是说效果一样。
同样是命令行参数的还有Link设置,Link设置中的 addition library directories对应到VC++ Directories 中的library directories,也就是说,效果是相同的。
3. windows环境变量
分为系统变量和用户变量
一个是给操作系统用的
一个是给本机用户用的~~
用户变量只对当前用户有效
系统变量对本机所有用户有效
环境变量的值既可以设置固定的值,也可以设置路径
打开控制面板的环境变量,配置
变量名:HALCONROOT
路径: D:CodeHALCON12
使用: 用win+R再输入%HALCONROOT%就直接打开了这个目录
在VS里,$(HALCONROOT)include $(HALCONROOT)includeHalconCpp 可以直接链接到这个目录里
4. VS的环境变量 $(QTDIR)
这个环境变量不是windows的,而是在给VS装QT插件的时候,$(QTDIR)就等价于路径名Name所代表的路径Path
5.Visual Studio 软件是否区分32位和64位?
答:没有64位的专业版,只有32位版:
1、visual studio没有专门的64位版。但32位版可以在64位系统上面正常使用。
2、安装VS2010的时候,在安装选项里面,选择了 X64 Compilers and Tools就可以编译x64版本的程序;
3.VS上可以运行32位 或 64位的程序,但要关联好相关与该程序对应的32位或者64位dll 和 lib
6.resource.h无法打开
在属性/ 资源 / 附加目录。
可能rc里头的include默认搜寻就是从这里头找的,添加好路径,编译通过。
7.快捷键设置
https://jingyan.baidu.com/album/9158e0006e10d8a254122826.html?picindex=6
F5 F6 F7 F8 Ctrl+Q
8.PATH=$(QTDIR)in%3b"$(QTDIR)in%3b$(PATH)
%3b 对应的是 ;
所以
PATH=$(QTDIR)in;"$(QTDIR)in;$(PATH)
9.depends
http://blog.csdn.net/swort_177/article/details/5426848
http://www.siliconsoftware.de/download/live_docu/RT5/en/documents/CameraLink.html