首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

window上使用cmake

本文由腾讯云+社区自动同步,原文地址 https://stackoverflow.club/using-msys-make-in-windows/ github上看了很多程序,发现都是用cmake来自动生成...不得不说,cmake的功能很强大,不仅可以生成make的配置文件,还可以生成VS、eclipse的工程文件。但是我使用时总是碰到很多错误,首先就是cl找不到,用图形化工具时也是找不到。...如果正确地使用cmake?...首先使用MinGW下载MSYS的make工具,然后添加进系统路径,确保命令行下make可以正常运行 下载cmake,这个可以网络搜索下载,注意添加进系统路径 工程的根目录下新建 build文件夹,进入这个文件夹...执行 cmake -G (options for generator..) ../ 注意cmake的命令格式,最后的..

1.3K10
您找到你想要的搜索结果了吗?
是的
没有找到

Linux CMake 快速使用(一)

缘起:之前给别人提供的SDK都是Linux下使用Qt搭建的,但是最近有客户不使用Qt,而是需要在Linux下使用cmake进行进行文件组织。于是我就进行谷歌,现在将可用的程序记录下来。...平时直接使用IDE开发,所以对整个编译的过程了解的不深入,借此机会,接下来的文章中可能会涉及到程序如何从文本文件到屏幕上的字节流输出。...编译步骤: cd source(CMakeLists.txt所在目录) cmake . make ①文件及所在目录 image.png ②终端改变目录,执行cmake . ?...小结 刚安装的ubuntu 16.04没有cmake, 使用sudo apt install cmake命令可完成安装。...build文件夹中进行编译 过程: 进入build文件夹 cmake .. make 注意是 cmake .. 中间文件build文件下 ? 可执行文件所在目录 ?

1.6K60

cmake:Makefile中运行ant脚本

https://blog.csdn.net/10km/article/details/51832822 Apache Ant,是一个将软件编译、测试、部署等步骤联系在一起加以自动化的一个工具,Java...他能够输出各种各样的makefile或者project文件,能测试编译器所支持的C++特性,类似UNIX下的automake,c/c++跨平台开发中应用非常广泛 。...项目初始阶段,java和c/c++代码可以分别用ant和cmake写脚本进行编译,但当项目越来越成形,越来越复杂的时候,再分别手工编译就非常容易出错。...反过来,cmake也可以生成可以执行ant脚本的Makefile,以用cmake统一编译项目代码的需求。...下面这段代码是cmake脚本中的片段,用于cmake脚本中执行ant脚本编译java代码。

1.6K20

搭建VS2017 Linux CMake开发环境

CMake 3.12 建议直接使用CMake3.12, 这个版本实测通过, 过低版本没有Server Mode的支持, 过高版本可能存在兼容性问题, 直接在官网下载源码编译安装即可, 远程服务器上通过...一份服务器代码 本文使用的服务器代码是公司内部研项目的服务器代码, 通过对原来的CMake配置做一些调整更新, 最后得到一份可以VS模式下良好工作的代码. (具体调整过程略去) 6....点击Explore按钮可以查看从远端下载的头文件, 正确下载头文件后, VS中, VA可以正确提示Linux相关的函数与结构体, 方便我们编写和查看相关代码。...首先, 我们先把CMake工程的目标平台按如下图所示的方式调整到Linux: 选择select后, 会自动创建一个”CMakeSettings.json”, 基本VS对CMake工程相关的配置都存储该文件中...工程视图的切换: 点击此处, 我们会发现我们可以工作两种工程视图下, 一种是文件夹模式,另外一种是CMake本身配置的Target模式.区别可以看下图来对比: (文件夹模式) (Cmake Target

3.2K10

cmake:各级子项目(目录)之间共享变量

项目目录结构如下图,facedetect和facefeature都要用到opencl中的include文件,1.2,2.0,2.1是不同的opencl版本的头文件,希望cmake创建Makefile时...└─CL └─2.1 └─CL 方法一 set: 一般用set命令定义的变量能从父目录传递到子目录,但opencl与facedetect和facefeature同级目录...下的CMakeLists.txt中读取这个一个变量 MESSAGE(STATUS "ICD_LIBRARY :${ICD_LIBRARY}") 每次运行cmake都会更新这个变量,你会在CMakeCache.txt...当用set_property定义的property时,第一个指定作用域(scope)的参数设为GLOBAL,这个propertycmake运行期间作用域就是全局的。..._1_2 的global property set_property(GLOBAL PROPERTY INCLUDE_OPENCL_1_2 "${CMAKE_CURRENT_LIST_DIR}/include

1.7K40

Cmakewindows支持预编译头文件(stdafx.h)

最近一直研究cmake构建项目,之前接触cmake的时候就感觉不太喜欢cmake,觉得它太乱了,产生了太多的中间文件,产生的项目文件也不是特别友好,windows下,生成的项目文件经常需要修改...,而在linux和常规的makefile风格也打不一致,文件太多,不方便学习研究。      ...不够经过这段时间系统的研究,觉得cmake还是非常强大的,吃透之后它的确非常方便,比手工写makefile要简单的多,因此linux使用cmake我觉得是非常合适的,不过windows则相对要差一些...为了复用预编译这个功能,我们把预编译相关的cmake功能编写成一个文件,比如叫msvcpch.cmake。...add_executable(Proxy ${proxy_src} ${STDAFX_PCH_C}) # 添加链接库 target_link_libraries(Proxy Comm) # 此处是关键,添加我们msvcpch.cmake

1.7K31

FLTK基于cmake编译以及使用(Windows、macOS以及Linux

cmake配置前置条件 Windows 无 macOS 无 Linux Linux下,使用cmake进行项目生成前,务必确保一些基础库的安装: # 安装gcc/g++等核心开发构建工具和库(必备) sudo...调用对应平台工具链完成FLTK编译 cmake进行项目构建完成后,我们当前的build目录中,对于macOS/Linux类操作系统,CMake会为我们生成了对应的makefile文件,所以我们直接使用...# build目录下,默认就是release版 make Windows操作系统,请直接使用vs打开build中的解决方案FLTK.sln,打开后对项目ALL_BUILD进行Release模式编译。...macOS/Linux中是lib前缀,.a结尾: # macOS/Linux(Release模式) build/lib ├── libfltk.a └── ... ......LINK_DIRECTORIES("${CMAKE_CURRENT_SOURCE_DIR}/fltk-dist-1.3.8/lib/Linux-release") ADD_EXECUTABLE(

55330

Cmakewindows支持预编译头文件(stdafx.h)

最近一直研究cmake构建项目,之前接触cmake的时候就感觉不太喜欢cmake,觉得它太乱了,产生了太多的中间文件,产生的项目文件也不是特别友好,windows下,生成的项目文件经常需要修改...,而在linux和常规的makefile风格也打不一致,文件太多,不方便学习研究。      ...不够经过这段时间系统的研究,觉得cmake还是非常强大的,吃透之后它的确非常方便,比手工写makefile要简单的多,因此linux使用cmake我觉得是非常合适的,不过windows则相对要差一些...为了复用预编译这个功能,我们把预编译相关的cmake功能编写成一个文件,比如叫msvcpch.cmake。...add_executable(Proxy ${proxy_src} ${STDAFX_PCH_C}) # 添加链接库 target_link_libraries(Proxy Comm) # 此处是关键,添加我们msvcpch.cmake

2.6K50

Redis源码windows下的成功编译(附cmake工程配置)

msvs目录里有vstudio的工程配置,能够直接一键编译,习惯vstudio的可以略过。构建目标是redis-server.exe,其他的如redis-cli.exe则需单独构建。...修改一,由于官方的redis是运行在linux上的,那么windows上的redis肯定是经过适配的。...(比如linux下的fork进程(备份机制fork进程执行),windows下是使用win32的api进行模拟) 因此cmake的源码包含路径里,需把几个linux下才能用到的文件排除掉。...体系下,off_t被定义成64位,而在windows下被sys\types.h文件定义成32位,所以windows团队就在工程属性里定义了_OFF_T_DEFINED ,使32位的不生效,用自己定义文件的...本不想轻易动源码的,无奈,removeMatchFromList函数前加个static 这一关通过了。

1.9K30
领券