CMakeLists编译出错,如何使用?

cmake_minimum_required(VERSION 2.8 FATAL_ERROR)

project(kinect_capture)

set(FREENECT_DIR "c:/code/libfreenect")
set(FREENECT_BUILD_DIR "c:/code/libfreenect_build")
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${FREENECT_DIR}/cmake_modules/")

#Boost
set(BOOST_ROOT "c:/code/boost_1_47_0")
set(BOOST_LIBRARYDIR "C:/code/boost_1_47_0/stage/lib")
set(Boost_USE_STATIC_LIBS ON)
set(Boost_USE_MULTITHREADED ON)
set(Boost_USE_STATIC_RUNTIME OFF)
find_package(Boost COMPONENTS date_time)
include_directories(${Boost_INCLUDE_DIRS})
link_directories(${BOOST_LIBRARYDIR})

#VTK
#find_package(VTK)
#if(VTK_FOUND)

INCLUDE(${VTK_USE_FILE})

#endif() f

#PCL
#find_package(PCL 1.1 COMPONENTS common visualization)
#include_directories(${PCL_INCLUDE_DIRS})
#link_directories(${PCL_LIBRARY_DIRS})
#add_definitions(${PCL_DEFINITIONS})

#OpenCV
set(OpenCV_DIR "C:/code/OpenCV2.2/build")
find_package(OpenCV COMPONENTS filesystem)
include_directories(${OpenCV_INCLUDE_DIRS})
link_directories(${OpenCV_LIB_DIR})

#OpenGL
find_package(OpenGL REQUIRED)
find_package(GLUT REQUIRED)
include_directories(${OPENGL_INCLUDE_DIRS} ${GLUT_INCLUDE_DIRS} ${USB_INCLUDE_DIRS})
#include_directories("C:/code/glew-1.7.0/include")
#include_directories("C:/code/glew-1.7.0/lib")

#Glui
include_directories("C:/code/glui-2.35/src/include")
link_directories("c:/code/glui-2.35/src/msvc/lib")

#PTHREAD
set(THREADS_PTHREADS_INCLUDE_DIR "c:/code/pthreads-2-8-0/include")
set(THREADS_PTHREADS_WIN32_LIBRARY "c:/code/pthreads-2-8-0/lib/pthreadVC2.lib")
set(THREADS_USE_PTHREADS_WIN32 true)
find_package(Threads REQUIRED)
include_directories(${THREADS_PTHREADS_INCLUDE_DIR})

#USB
set(LIBUSB_1_INCLUDE_DIR "C:/code/libusb-1.2.5.0/include")
set(LIBUSB_1_LIBRARY "C:/code/libusb-1.2.5.0/lib/msvc/libusb.lib")
find_package(libusb-1.0 REQUIRED)
include_directories(${LIBUSB_1_INCLUDE_DIRS})
include_directories("${FREENECT_DIR}/platform/windows")
include_directories("${FREENECT_DIR}/platform/windows/libusb10emu")

#Freenect
include_directories("${FREENECT_DIR}/include")
#set(FREENECT_LIBRARY_DIR optimized "${FREENECT_BUILD_DIR}/lib/Release/" debug "${FREENECT_BUILD_DIR}/lib/Debug/")
set(FREENECT_LIBRARY_DIR "${FREENECT_BUILD_DIR}/lib/")
link_directories(${FREENECT_LIBRARY_DIR})
set(FREENECT_LIBRARIES "freenect.lib")

#Files
file(GLOB_RECURSE INCS "*.h")
set(SRCS
kinect_capture.cpp
kinect_capture_app.cpp
kinect_calibration.cpp
freenect_module.cpp
)

#Build
add_executable (kinect_capture ${SRCS} ${INCS})
target_link_libraries (kinect_capture ${FREENECT_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${OPENGL_LIBRARIES} ${GLUT_LIBRARY} ${LIBUSB_1_LIBRARIES} ${OpenCV_LIBS} ${Boost_LIBRARIES})
#${PCL_LIBRARIES} ${VTK_LIBRARIES}

这是cmakelist的全部内容,#Boost,#VTK,#PCL,#OpenCV,#OpenGL,#Glui,#PTHREAD,#Freenect这些在电脑里都要有吗??

1个回答

这些都是定义的符号,在你的build文件定义

mashuang0413
mashuang0413 build是什么是linux系统下的东西吗?
3 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
CMakeLists
NULL 博文链接:https://tanleihexinxin.iteye.com/blog/553879
CMakeLists学习笔记
CMakeLists简介 工程项目文件管理工具,在make的基础上进一步封装,避免了程序员手动编写makefile的过程,由其辅助产生 例子1 新建main.cpp #include <stdio.h> #include <time.h> #include <stdlib.h> #include <unistd.h> int main(...
CMakeLists Editor一个CMakeLists的简易生成器
cmake用于ITK-VTK编程。这个是自己实现的一个cmakelists编辑工具
CMakeLists中常用命令解释
1,if ( IS_ABSOLUTE name )如果给定的name是一个绝对路径2, file(RELATIVE_PATH, variable, dir, file) 确定从dir参数到指定文件file的相对路径。3,get_filename_component 得到一个完整文件名中的特定部分。 get_filename_component(<VAR> FileName ...
CMakeLists入门学习笔记
因为在使用OPENCV以及caffe的过程中都接触到了许多关于CMake的使用,于是就想了解一下CMake究竟是怎样一个东西,有什么作用。顺便做一个学习笔记。 本文参考《CMake Practice》这篇文章完成,旨在指导用户快速使用CMake,如果需要更详细的内容,请通读《CMake Practice》这篇文章。下载路径:http://sewm.pku.edu.cn/src/paradi
CMakeLists常用写法
基本结构 cmake_minimum_required(VERSION 3.0) project(DEMO) add_executable(run main.cpp) 添加头文件目录 目录结构: +root +build +lib +heads -func.hpp +src -func.cpp -main.cpp -CMakeLists.txt 下文所有的cma...
有没有会写CMakeLists的的
用CMake构建项目,怎么写CMakeLists使项目生成的时候有附加包含目录。rnrn平台是VS,然后用CMake构建项目,在CMakeLists中怎么写命令让项目在生成的时候附加包含目录中有Qt的头文件库?rnQt的系统环境变量是 QTDIR: C:\Qt5.5.1\5.5\msvc2013\binrninclude目录是bin目录的同级目录
CMakeLists添加目录
cocos2dx 3.17 CMakeLists添加目录下文件 添加目录下文件 file(GLOB_RECURSE USER_CPP RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} Classes/*.cpp) file(GLOB_RECURSE USER_CPP_H RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} Classes/*.h) l...
CmakeLists实践(4)
多个文件多个目录,调用其他库文件结构如下: —bin —lib —include ——Multiply.h —src ——Multiply. cpp ——main.cpp —CMakeLists.txt—include ——Multiply.h的文件代码如下:#ifndef _Multiply_H_ #define _Multiply_H_class Multiply { publ
cmakelists使用小记(codelite转VS)
近期需要将原来使用codelite编译环境的项目转到VS上,因此考虑直接用codelite自动生成的cmakelists来生成VS的项目设置。但是其中很多设置需要修改,记录如下: cmake的版本要求 codelite自动生成的cmakelists中要求最小为2.8.11,因为后面可能用到3.5版本加入的多文件拷贝,因此需改为最小3.6 cmake_minimum_required...
使用qt和cmakelists进行debug调试
首先使用qt 打开的cmakelists的工程,如果需要进行debug调试的话,需要在CMakeLists.txt里加上一句 SET(CMAKE_BUILD_TYPE DEBUG) 即可。 然后运行qt,使用调试运行的按钮,就可以单步调试运行程序了。
在CMakeLists中使用指定版本的opencv
CMakeList如下: find_package(OpenCV 4.0 REQUIRED PATHS "/path/2/opencv/install/path") include_directories(${OpenCV_INCLUDE_DIRS}) add_executable(main main.cpp) target_link_libraries(main ${OpenCV_LIBRAR...
关于mciSendCommand的使用,编译出错:(
#include "mmsystem.h"rn............rnrnvoid CClosecdcomDlg::OnButton1() rnrn // TODO: Add your control notification handler code herern mciSendCommand(NULL,MCI_SET,MCI_SET_DOOR_OPEN,NULL);rnrnrn错误:rnclosecdcomDlg.obj : error LNK2001: unresolved external symbol __imp__mciSendCommandA@16rnDebug/closecdcom.exe : fatal error LNK1120: 1 unresolved externalsrnError executing link.exe.rnrn这是怎么回事?怎么解决呢?请大家帮帮我
使用fstream编译出错
现在我在完善别人代码,使用C语言实现,用到文件流时,声明头文件#include,然后在main函数中定义ofstream outfile;编译出错:rnH:\...\...\StreamingProxy\proxy.c(200) : error C2065: 'ofstream' : undeclared identifierrnH:\...\...\StreamingProxy\proxy.c(200) : error C2146: syntax error : missing ';' before identifier 'out'rn还有,本来可以通过编译,可以执行,但是在定义了ofstream outfile后出现了30多个编译错误!rn另外说明:原代码在Linux下,现在我在Windows平台上VC++下进行改进;rn这是已经包含的头文件:rn#include rn#include rn#include rn#include "proxy_unix.c"rn#include rn#include rn#include rn#include rn#include rn#include rn#include rn#include rn#include rn#include rnrn#include rn
基于CMakelists的程序调试--QT
很多开源程序,都是使用CMakelists写的。出现问题时,使用gdb进行调试比较麻烦,gdb调试时要求程序是Debug编译的。 一种办法是把程序修改成基于Qt的程序,但是修改的过程中,肯行也会遇到很多问题。 其实,CMakelists也有Debug模式,只是一般开源的程序,都默认的是release发行的。 使用QT作为编译环境 方法: 加载项目的CMakelists,然后在Argu
CMakeLists入门学习
因为需要编译,所以必须要掌握cmakelist语法,以我所用到的rplidar的cmakelist.txt举例 以下是一个简单的启动rplidar的rplidarNode的cmakelist文件 cmake_minimum_required(VERSION 2.8.3) project(rplidar_ros) 这里会生成 ${rplidar_ros_BINARY_DIR} :就是cmak...
CmakeLists实践(1)
## 只有1个源文件 ## 只有main.cpp,代码如下: #include<iostream> using namespace std; int main() { int base,exponent; cin>>base>>exponent; cout<<base*exponent<<endl; return 0; }CmakeLists.txt的编写,代码如
CMakeLists配置跨平台项目
关于C++基础的书籍与视频已经汗牛充栋,精通知识的目的全在于应用,本套课程全方位使用C++11与Boost库相关组件,本套课程以跨平台游戏引擎SDL为兴趣切入点,循序渐进步入BoostAsio网络通信基础模型,介绍ZeroMq与跨平台构建工具CMake的使用
使用模板的时候编译出错
[code=C/C++]template rnclass CThreernrnpublic:rn CThree(T t1,T t2,T t3);rn T Min();rn T Max();rnprivate:rn T a,b,c;rnrnrntemplate rnT CThree::Min()rnrn T minab=arnT CThree::Max()rnrn T maxab=arnCThree::CThree(T t1,T t2,T t3):rna(t1),b(t2),c(t3)rnrn return;rn[/code]rn这是一个头文件rn编译的时候报错:error C2143: 语法错误 : 缺少“;”(在“template”的前面)rnrn该怎样改啊?rn我用的是vs2008建立win32控制台程序
使用第三方控件LsFileExplorer28,编译出错!
安装并使用第LsFileExplorer28控件(delphi写的),但编译找不到LsFileExplorer28.hpp文件。望哪为仁兄解答啊!谢谢!
CMakeLists写法总结
个人最近学习了一些关于常见的CMakeLists的一些写法格式,分享给大家。     CMAKE_MINIMUM_REQUIRED(VERSION xxx) 该项表示要求CMAKE的最低版本号.     PROJECT(aim1) 此项表示所建立的工程名称 aim1;     FIND_PACKAGE(xxx)该命令首先会在模块路径中寻找 Find&amp;lt;name&amp;gt;.cmake,这是查...
CMakeLists文本文件的配置
CMakeLists文本文件的配置 引入第三方c语言库文件和生成c语言库文件的配置 下面是add_library的语法结构 add_library(&lt;name&gt; [STATIC | SHARED | MODULE] [EXCLUDE_FROM_ALL] [source1] [source2] [...]) 其中STATIC | SHAR...
CmakeLists实践(3)
多个文件不同目录文件结构如下: —bin —lib —include ——Multiply.h —src ——Multiply.cpp ——main.cpp ——CMakeLists.txt —CMakeLists.txt—include ——Multiply.h的文件的代码如下:#ifndef _Multiply_H_ #define _Multiply_H_class Mul
跨平台CMakeLists语法进阶
关于C++基础的书籍与视频已经汗牛充栋,精通知识的目的全在于应用,本套课程全方位使用C++11与Boost库相关组件,本套课程以跨平台游戏引擎SDL为兴趣切入点,循序渐进步入BoostAsio网络通信基础模型,介绍ZeroMq与跨平台构建工具CMake的使用
CMakeLists用法总结
分一下几个方面来描述: 1. 每一个LIB要编译成静态库或动态库如何描述,每一个TOOL要编译成可执行文件如何描述? 2. LIB和TOOL可能会依赖于其他LIB,该如何描述? 3. 每个LIB和TOOL都会include很多头文件,相同的头文件如何处理,私有的头文件如何处理? 4. CMake中的一些用法 5. LLVM中用到的技巧 先举一个简单的例子: // ...
CMakeLists用法笔记
做一个学习笔记,仅仅是笔记而已。 1、设置编译选项: 这里可以利用CMAKE_C_FLAGS(增加C编译选项)和CMAKE_CXX_FLAGS(增加C++编译选项),可以设置的编译选项有: 1) -fPIC fPIC的全称是 Position Independent Code, 用于生成位置无关代码。不加fPIC编译的so必须要在加载到用户程序的地址空间时重定向所有表目,它里面不能...
使用caffe时编译出错
使用caffe时编译出错 使用自己机器编译的include和lib (caffe/build/lib, caffe/include) caffe.pb.h丢失问题: /home/wuliwei/caffe/include/caffe/blob.hpp:9:34: fatal error: caffe/proto/caffe.pb.h: No such file or directory #incl
CooCox使用printf编译出错
使用CooCox,从respitory添加了printf.c文件,在编译时报错 [cc] ..\obj\printf.o:(.data+0x428): first defined here [cc] collect2.exe: error: ld returned 1 exit status 解决办法:在View-->Configuration -->Link中使能“Don't use sta
使用Irrlicht编译出错
我是刚使用Irrlicht,在看了一些资料后,现在开始编译第一个程序rn程序如下面所示,且已经在Project->Setting->Link下选择了Irrlicht.librn所在的路径。rn又在Tool->Options->Directorier->include files选择include文件rn同时在Tool->Options->Directorier->include files选择include文件rndll文件也在工程的根目录下。可是为什么编译的时候还会出现下面的链接出错?rnrn是不是我下的Irrlicht包有BUGrn我现在下的是1.4.2,直接在Irrlicht网上下的。rn各位,帮帮忙。rn如果不行,那位可以把一个可以运行的工程,还有对应的Irrlicht开发包上传。rn在此不盛感激!rnrnCompiling...rnmain.cpprnLinking...rnmain.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) class irr::IrrlichtDevice * __cdecl irr::createDevice(enum irr::video::E_DRIVER_TYPE,class irr::core::dimension2d<__int32> const &,unsigned __int32,bool,bool,bool,class irr:rn:IEventReceiver *,char const *)" (__imp_?createDevice@irr@@YAPAVIrrlichtDevice@1@W4E_DRIVER_TYPE@video@1@ABV?$dimension2d@_H@core@1@_I_N33PAVIEventReceiver@1@PBD@Z)rnDebug/HelloWord.exe : fatal error LNK1120: 1 unresolved externalsrnError executing link.exe.rnCreating browse info file...rnrnHelloWord.exe - 2 error(s), 0 warning(s)rnrnrn#include rn#include rnrn#ifdef _IRR_WINDOWS_rn#pragma comment(lib, "Irrlicht.lib")rn#endifrnrnusing namespace irr;rnusing namespace core;rnusing namespace scene;rnusing namespace video;rnusing namespace io;rnusing namespace gui;rnrn//extern createDevice();rnrnint main(void)rnrn video::E_DRIVER_TYPE driverType = video::EDT_OPENGL;rn IrrlichtDevice *device = createDevice(driverType, dimension2d(640, 480), 16,false, false, false, 0);rn printf("Hello!");rn return 0;rn
WinXP+SP2下使用ADO编译出错
环境:WinXp+SP2,VC6rn在StdAfx.h中加入rn#import "c:\program files\common files\system\ado\msado15.dll"no_namespace rename("EOF", "adoEOF")rn后,编译,报错:rn--------------------Configuration: ExADO - Win32 Debug--------------------rnCompiling...rnStdAfx.cpprnc:\program files\microsoft visual studio\vc98\include\comdef.h(377) : error C2778: improperly formed GUID in __declspec(uuid())rnc:\program files\microsoft visual studio\vc98\include\comdef.h(877) : error C2787: 'IHTMLTextAreaElement' : no GUID has been associated with this objectrnError executing cl.exe.rnrnExADO.exe - 2 error(s), 0 warning(s)rnrn但在Win2000下好使,为何呀?rn
aix pthread.h 使用编译出错
各位大侠:rn 我在aix5.2上编译一个服务程序, 需要多线程服务,rn 刚加入pthread.h , 编译过程便出错。rnrn#include rn.rn.rn编译代码rnrm *.ornrm *.lisrnrm *.crnproc pub.pcrnproc server.pcrnrncc -O3 -q32 -c -lpthread pub.c rncc -O3 -q32 -c -lpthread server.c rnrncc -q64 -o recv_msg4000 -I$usr/include -lpthread pub.o server.o -L/oracle/app/oracle/product/9.2.0/lib32/ -lclntsh -lld -lm `cat /oracle/app/oracle/product/9.2.0/lib32/sysliblist` -lm -lc_r -L/usr/opt/libiconv/lib/ -liconv rnrn编译错误如下:rnrnrnro*C/C++: Release 9.2.0.4.0 - Production on Thu Dec 20 21:19:23 2007rnrnCopyright (c) 1982, 2002, Oracle Corporation. All rights reserved.rnrnSystem default option values taken from: /oracle/app/oracle/product/9.2.0/precomp/admin/pcscfg.cfgrnrnParser error at line 579, column 32, file /usr/include/sys/thread.h:rnError at line 579, column 32 in file /usr/include/sys/thread.hrn sigset_t sigmask;rn...............................1rnPCC-F-02209, Macro invocation has incorrect number of argumentsrnSyntax error at line 579, column 25, file /usr/include/sys/thread.h:rnError at line 579, column 25 in file /usr/include/sys/thread.hrn sigset_t sigmask;rn........................1rnPCC-S-02201, Encountered the symbol "1" when expecting one of the following:rnrn ( * an identifier,rnrnSyntax error at line 579, column 25, file /usr/include/sys/thread.h:rnError at line 579, column 25 in file /usr/include/sys/thread.hrn sigset_t sigmask;rn........................1rnPCC-S-02201, Encountered the symbol ")" when expecting one of the following:rnrn ; , ( [ * ? | & < > + - / % . ^ | & == != <= >= << >> ++ --rn ->rnThe symbol "(" was substituted for ")" to continue.rnrnSyntax error at line 489, column 1, file /usr/include/math.h:rnError at line 489, column 1 in file /usr/include/math.hrnrn1rnPCC-S-02201, Encountered the symbol "" when expecting one of the following:rnrn ; , = ( [rnThe symbol ";" was substituted for "" to continue.rnrnSyntax error at line 494, column 1, file /usr/include/math.h:rnError at line 494, column 1 in file /usr/include/math.hrnrn1rnPCC-S-02201, Encountered the symbol "" when expecting one of the following:rnrn ; , = ( [rnThe symbol ";" was substituted for "" to continue.rnrnSyntax error at line 500, column 1, file /usr/include/math.h:rnError at line 500, column 1 in file /usr/include/math.hrnrn1rnPCC-S-02201, Encountered the symbol "" when expecting one of the following:rnrn ; , = ( [rnThe symbol ";" was substituted for "" to continue.rnrnSyntax error at line 183, column 2, file /usr/include/sys/msg.h:rnError at line 183, column 2 in file /usr/include/sys/msg.hrn msgqnum_t msg_qnum; /* # of messages on q */rnrn。。。。。。rnrn 找了很多资料,都不能解决。 请高手帮忙看看。, 多谢。rnrn
CUBLAS使用编译出错的原因
在使用CUBLAS的时候,加了#include "cublas.h",在编译的时候会出现如下的错误,不知道什么原因,请求帮助rn[code=C/C++]rn1>sample.obj : error LNK2001: 无法解析的外部符号 _cublasGetVector@24rn1>sample.obj : error LNK2001: 无法解析的外部符号 _cublasSgemm@52rn1>sample.obj : error LNK2001: 无法解析的外部符号 _cublasSetVector@24rn1>sample.obj : error LNK2001: 无法解析的外部符号 _cublasAlloc@12rn1>sample.obj : error LNK2001: 无法解析的外部符号 _cublasInit@0rn[/code]
vs2013使用多字节字符,编译出错
提示如上图 解决方法: 下载该网址对应的exe进行安装 官网地址 https://www.microsoft.com/zh-cn/download/details.aspx?id=40770 扫码关注我们:跟着数理化走天下 获得更多的信息哦,一起交流,一起成长哦:微信号:跟着数理化走天下,纯属个人的交流,无盈利目的
请问如何复制文件,使用SHFileOperation编译出错
复制文件,如果文件存在可设置覆盖或者不覆盖,目前使用SHFileOperation,编译出错,提示:rnrnerror LNK2019: unresolved external symbol SHFileOperationW referenced in function "public: __cdecl CLoadguxingApp::CLoadguxingApp(void)" (??0CLoadguxingApp@@QAA@XZ)rnARMV4Rel/loadguxing.exe : fatal error LNK1120: 1 unresolved externalsrnrn为什么我的系统中找不到shellapi.lib?rn谁能传一份给我:dch001@126.comrn谢谢.rnrn另外,文件存在,设置覆盖,用FOF_NOCONFIRMATION,是不是不加此参数就会跳过?
cmake实践(CMakelists写法)
cmake实践(CMakelists写法)
简单CMakeLists的编写
我建了一个简单的工程来学习一下CMakeLists.txt 是如何编写的 目录结构如下 CMakeLists.txt src/CMakeLists.txt helloworld.c test1.c test.c test.h TutorialConfig.h.in include其中CMakeLists.txt中为 1 cmake_minimum_required (VERSIO
CmakeLists实践(2)
多个源文件在同一级目录有main.cpp、multiply.h和multiply.cpp3个文件 main.cpp的代码如下:
CMakeLists编辑简明教程
备注:明确说明简明教程,背景就是新建一个工程文件夹且称之为test里面include文件夹放所有头文件,src放所有源文件,CMakeLists.txt直接放在test文件夹下,不引入任何其他库,例如OpenCV的一些动态链接库,就是形式较简单的纯C/C++工程,由于网上关于CMakeList编写的资料繁杂容易让小白迷失方向,本教程的目的正在于尽可能简化起到入门作用,熟悉了一阵子之后建议还是看官方...
CMakeLists文件编写
指定c++11编译:add_definitions(-std=c++11) 编译opencv文件 CMakeLists.txt(txt文件名大小写不能变)内容如下: cmake_minimum_required(version 2.8) #指定cmake最低版本 project (project_name) #project_name是你要创建的工程名 find_package(OpenCV...
编译出错,如何修改
error C2440: “static_cast” : 无法从“void (__thiscall CColourPopup::* )(BOOL,HTASK)”转换为“void (__thiscall CWnd::* )(BOOL,DWORD)”rnrnerror C2664: “CWnd::OnActivateApp” : 不能将参数 2 从“HTASK”转换为“DWORD”rn 该转换要求 reinterpret_cast、C 样式转换或函数类型转换
相关热词 c# 线程结束时执行 c# kb mb 图片 c# 替换第几位字符 c#项目决定成败 c# 与matlab c# xml缩进 c#传感器基础 c#操作wps c# md5使用方法 c# 引用父窗口的组件