自己总结的一个有关C++的一些第三方库,包括示例和链接,目前已经托管到Github上面:Cplus_libs_wrapper
首先从Getting Started with Qt页面中可以知道,QT分为在线或者离线安装或自行编译源码包三种:
因为我安装了VS2015,所以一直是默认VS来编译,但是发现当从VS编译切换到mingw时候,OpenCV的windows版本就无法正确的使用了。这个时候要求首先通过mingw来编译OpenCV的源码,重新生成OpenCV库文件与dll文件。本文就详细记录了这个过程。而且最后通过编译好的OpenCV集成配置QT开发环境,实现了一个简单的测试程序。
首先要安装VS2013,官网上说装Express版本就行,我这边装了Professional中文版,除了编译的时候经常出现字符问题,其他没什么影响。
填一个之前的坑啊,本篇的姊妹篇——利用Pytorch的C++前端(libtorch)读取预训练权重并进行预测 这篇文章中已经说明了如何在Ubuntu系统中使用libtorch做预测,当初也有朋友问我如何在Windows之下尝试使用libtorch,当时因为时间关系没有去看,后来就给忘了…现在有时间了当然要尝试一下~
终于实现了在windows下配置Qt和opencv,从刚学opencv尝试,到现在终于配置成功,断断续续经历了一年左右,真实操碎了心。。。走了太多弯路了
yaml-cpp是一个yaml配置文件的C++解析库,其下载地址为:https://github.com/jbeder/yaml-cpp 在Windows10中使用VS2017编译yaml-cpp库前,需要去Github上面下载对应的yaml-cpp源代码
Qt工程管理 个人比较偏爱于使用CMake来管理C++工程,因为只要编写一个CMakeLists.txt文件,就可以在Windows和Mac上生成各自的IDE工程。在Windows上, CMake自然是生成Visual Studio工程文件了(新版Visual Studio貌似能直接倒入CMake工程了);Mac上生成XCode工程即可。开发Qt应用程序的时候,虽然有Qt Creator可以使用,甚至Qt Creator还可以直接导入CMake工程,但是其调试和错误提示功能实在太过寒碜,导致调试过程中各种郁
尽管如此,如果简单Qt的工程都不知道怎么用 cmake 构建,复杂的工程,就更不知道如何使用 cmake 了。还是从简单的学起吧
Java中有很多日志库:java.util.logging、Log4j、Logback、Log4j2、slf4j、common-logging。C++的日志库相对来说就比较少了,比如说glog、log4cpp、spdllog等,目前个人感觉比较好用的C++开源日志库当属于spdlog了,跨平台,支持cmake编译,在维护中。 具体可以参考github上面的示例:https://github.com/gabime/spdlog 另外spdlog支持两种使用方式:一种是将源代码目录下的include头文件直接添加到自己的项目中使用;另一种使用cmake编译构建出lib静态库或者dll动态库之后以静态和动态链接方式使用。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/139829.html原文链接:https://javaforall.cn
通常在程序设计中采用xml、ini、yaml、json等配置文件比较多。在Java的SpringBoot项目中通常采用yaml或者yml文件作为应用的配置项。由于本人在实际项目中采用C++编写控制台程序的过程中使用yaml文件比较多,目前使用比较的多的就是yaml-cpp这个C++ yaml解析库了。之前写过两篇关于在CentOS7下编译yaml-cpp库和Windows10下使用VS2017编译和使用yaml-cpp库的文章。 最近实际项目中换成了最新版的Visual Studio 2019,我使用的Windows系统是Win7和Windows10,所以需要重新编译基于VS2019下的yaml-cpp的Debug和Release版本的Win32的静态lib库,大体步骤和Windows10下使用VS2017编译和使用yaml-cpp库这篇博客描述的一致。
作者:玟清 链接:https://www.zhihu.com/question/27455963/answer/36722992 来源:知乎 著作权归作者所有,转载请联系作者获得授权。
上一篇我们写了一个最基本的Hello Engine,并用Visual Studio的命令行工具,cl.exe进行了编译。
经常使用Qt Coding,无意中接触到CTK,也就因此查到了所谓的OSGi,其中OSGi架构中的“模块化”和“热插拔”看起来很厉害的样子,于是就打算研究一下,以此系列博客作为学习笔记。
xmake 是一个基于 Lua 的轻量级跨平台构建工具,使用 xmake.lua 维护项目构建,相比 makefile/CMakeLists.txt,配置语法更加简洁直观,对新手非常友好,短时间内就能快速入门,能够让用户把更多的精力集中在实际的项目开发上。
7. VS2013-Qt5.5.1-VTK7.0.0-Boost1.6.1-Qhull2015.2-FLANN1.8.4-Eigen3.2.8-OpenNI2.2.0.33-动态编译-PCL1.8.0
本文档旨在收集对C++最佳实践所进行的协作性讨论,是《Effective C++》(Meyers) 和《C++ Coding Standards》(Alexandrescu, Sutter) 等书籍的补充。在讨论如何确保整体代码质量的同时,补充了一些没有讨论到的较低级别的细节,并提供了具体的风格建议。
下载地址:https://download.qt.io/archive/qt/5.14/
XMake是一个基于Lua的轻量级跨平台自动构建工具,支持在各种主流平台上构建项目。
OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉库,它提供了很多函数,这些函数非常高效地实现了计算机视觉算法(最基本的滤波到高级的物体检测皆有涵盖)。
打造顶级软件并非易事。开发者在网上研究这一主题时,常常遇到的问题是如何判断哪些建议是更新的,哪些方法已经被更 fresh、更好的实践所超越。与此同时,大多数资源对这个过程的解释是混乱的,没有适当的背景、上下文和结构。
yml文件和yaml文件是目前比较常用的配置文件,Java中的SpringBoot的application.yml配置使用的就是这种格式,另外诸如nodejs和g欧登语法对于yaml文件都有很好的支持。 yaml-cpp是一个yaml配置文件的C++解析库,其下载地址为:https://github.com/jbeder/yaml-cpp 在Windows10中使用VS2017编译yaml-cpp库前,需要去Github上面下载对应的yaml-cpp源代码。目前的yaml-cpp最新版本是yaml-cpp-0.6.0。如下图所示:
在 《VTK安装配置教程》修改整理而成,原文为VC6的安装指南,详见:http://blog.csdn.net/ralix/article/details/2070051
Qt是一个跨平台的C++应用程序开发框架,被广泛用于开发图形界面和嵌入式系统应用程序。它最初由奥斯陆的一家挪威公司Trolltech(现在被Digia收购)开发,并于1995年首次发布。
CMake是一个主要用于CPP的构建工具。CMake语言是平台无关的中间编译工具。同一个CMake编译规则在不同系统平台构建出不同的可执行构建文件。在Linux产生MakeFile,在Windows平台产生Visual Studio工程等。CMake旨在解决各平台的不同Make工具的产生的差异(比如GNU Make, QT的qmake,微软的nmake, BSD的pmake)。
Ps: 目前本框架在持续开发中,后续将支持GPU版本.也欢迎有志之士一块维护本框架. 欢迎Star.
有时候在Windows10系统中使用VS2017+Qt开发需要打开命令调试窗口, 为了方便调试,查看程序输出,可在程序运行同时打开cmd窗口,具体设置如下: 项目–属性–链接器–系统–子系统–控制台 (/SUBSYSTEM:CONSOLE),如下图所示:
最近在做Windows桌面程序开发,最初考虑到团队的技术构成(没有.NET开发),决定用Electron作为解决方案来开发,但是最后因为需要实现应用向其它未处于激活状态的应用发消息的功能无法通过自带的api实现(需要借助node-ffi调用dll解决),所以就对各个方案做对比做最后的决策(其实还是在纠结用C#.net还是Electron,其它的方案并不考虑)。
最近开发ARM应用,使用Qt 6.2版本交叉编译源码,编译倒是没什么问题,也很快就编译好了。正准备使用Qt库编译写好的程序时,发现使用QMake编译不过了,报Qml缺少连接,最后询问了维护人员,是一个内部的问题,还没有修改好,建议使用CMake编译,无奈将项目pro工程修改为CMake工程,如无意外就编译通过了。
从开始学习C++聊起吧,大学的专业是电子信息工程,从大一开始接触C++,最开始的时候,照着书敲,都会有一大堆错误,也就是熟悉的 烫烫烫烫,再后来接触嵌入式,然后到正式工作,也就正式开始C++的开始旅程。开发的IDE从Vs Studio到Qt,到notpad++,再到 vs code,也一直在边工作边看书,慢慢的经验在累积也学到的越来越多了。工作到现在大概也有7年了,也应证了那句话,了解的越多也越觉得自己浅薄。也趁着这次的活动记得机会,简单的说一下自己对C++的理解以及使用。
Cocos2d-x 是一套成熟的开源跨平台游戏开发框架。引擎提供了图形渲染、GUI、音频、网络、物理、用户输入等丰富的功能, 被广泛应用于游戏开发及交互式应用的构建。其核心采用 C++ 编写,支持使用 C++、Lua 或 JavaScript 进行开发。
CXX-Qt 是一组 Rust 包,用于创建与 Qt 的双向 Rust ⇄ C++ 绑定。它可用于使用 CMake 将 Rust 集成到 C++ 应用程序中,或使用 Cargo 构建 Rust 应用程序。 CXX-Qt 提供了用于在 Rust 中实现 QObject 子类的工具,可在 C++、QML 和 JavaScript 中使用。
链接:pcworld.com/article/3394680/how-windows-and-chrome-quietly-made-2019-the-year-of-linux-on-the-desktop.html
本来是想接着第二章学习的,但是感觉理论性有点强,了解基本概念后还是从Opencv来,遇到问题再切换。 关于opencv的下载与配置参考: http://opencv.org/downloads.html http://wiki.opencv.org.cn/index.php/Codeblocks_MinGW_openCV codeblocks下配置的过程真是困难重重,许多教程就是睁着眼睛说瞎话,我配置的主要流程如下: 1
Windows 10 和 Chrome OS 都采用 Linux 内核及其上运行的软件。
也可以自己编译打包一份来用,或者对某部分进行定制化的修改(windows下的redis不是很稳,存在一些问题)。为了更好的使用redis,分析Redis 源码是很有必要。特别是对数据结构和算法的学习,这是很好的例子,比lecode刷题有趣。
Qt是一个跨平台的C++图形用户界面库,我们平时所说所使用的Qt,准确的来说是它的GUI编程部分。Qt提供给应用程序开发者建立图形用户界面所需要的功能,并且Qt很容易扩展。基本上,Qt和X Window上的Motif、Openwin、GTK等图形界面库和Windows平台上的MFC、OWL、VCl以及ATl是相同类型的东西。
之前写过一篇关于环保 HJ212协议解析的博文,有不少做环保行业的人咨询我关于HJ212-2017协议怎么解析,由于我主要是做C++开发的,之前采用C++ Boost asio库编写了一个TCP接收服务端,并解析HJ212-2017协议数据,上传到我的GitHub上面,仓库地址为:https://github.com/ccf19881030/HJ212Receiver,已经在Windows10系统下使用VS2017进行测试过,并且在CentOS8系统下使用Cmake进行编译测试。有需要的话可以自行下载:
在进行C/C++相关开发时候,经常会遇到段错误,这个时候比较无语的一点就是Linux Shell终端下几乎不会输出太多有用的信息,大多数情况下打印信息如下:Segmentation fault (core dumped),错误如下图所示:
距离笔者的《使用CEF》系列的第一篇文章居然已经过去两年了,在这么长一段时间里,笔者也写了很多其它的文章,再回看《使用CEF(一)— 起步》编写的内容,文笔稚嫩,内容单薄是显而易见的(主要是教大家按部就班的编译libcef_dll_wrapper库文件)。笔者一直以来的个性就是希望自己学习到的知识,研究出的内容,踩过的坑能够及时的写出来,介绍给更多的小伙伴。
windows10 下使用visual studio2015 编译MySQL5.7.22
PlotJuggler是一款值得好好享受的时间序列可视化工具,https://www.plotjuggler.io
https://zetaoyang.github.io/post/2016/11/05/linux-shared-object.html
lsarelayx 是系统范围的 NTLM 中继工具,旨在将传入的基于 NTLM 的身份验证中继到运行它的主机。lsarelayx 将中继任何传入的身份验证请求,其中包括 SMB。由于 lsarelayx 挂钩到现有的应用程序身份验证流,该工具还将在中继完成后尝试为原始身份验证请求提供服务。这将防止目标应用程序/协议显示错误,并为最终用户针对 lsarelayx 主机进行身份验证正常工作。
项目最近有需求在windows下面运行,我花了几周时间将linux的服务器移植到windows下面,目前已经能够正常运行服务器,目前又有了新需求,两边的代码结构和组织是分开的,因此为了两边能够同步维护,需要一个能够跨平台的项目编译解决方案,经过调研之后,选择了使用cmake这个工具,本文主要讲述,使用cmake的生产项目的一些基础知识。
Qt是1991年由HaavardNord和EirikChambe-Eng开发的跨平台C++图形用户界面应用程序开发框架。发展至今,它既可以开发GUI程序,也可以开发非GUI程序,比如控制台工具和服务器。Qt是一个跨平台的C++应用程序框架,支持Windows、Linux、MacOSX、Android、嵌入式系统等。也就是说,Qt可以同时支持桌面应用程序开发、嵌入式开发和移动开发,覆盖了现有的所有主流平台。开发者只需要编写一次代码,而后在发布到不同平台之前重新编译即可。
领取专属 10元无门槛券
手把手带您无忧上云