y****e 发帖数: 23939 | 1 我在WinXP下用MinGW加CMake来port 我的Project,原来是
Linux下开发的。
用Cmake一开头就出了问题,我选用Unix Makefiles, 但是
MinGW的C compiler总被抱怨:
The C compiler "gcc.exe" is not able to compile a simple test program.
It fails with the following output:
0[main] make 2924 fhandler_base::dup(some disk file) failed, handle 0,
Win32 error 6
Building object file testCCompiler.o...
Access violation
请有经验的大虾出手指教,先谢过了。 |
|
m******1 发帖数: 418 | 2 你的水平已经很高了。有本书 或者是网站 cmake.org 不知道是否
能在里面找到答案。
subdirect
progr
输入 |
|
i******t 发帖数: 22541 | 3 写了个cmake
//这个test_bst.cpp 有个main函数
SET(APP_BST_SRC test_bst.cpp)
ADD_EXECUTABLE(test_bst ${APP_BST_SRC})
SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/../bin)
//这个test_max_heap.cpp 有个main函数
SET(APP_MAX_HEAP_SRC test_max_heap.cpp)
ADD_EXECUTABLE(test_max_heap ${APP_MAX_HEAP_SRC})
SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/../bin)
其他设置都可以 在vs环境下 正常编译, 并且生成两个exe。
但是在codeblock里面 却只能生成第一个exe 编译时成功的
求解 谢谢
不应该是cmake写的不对吧
我在命令行 直接用 mingw32-make 是可以生成两个exe的
只是在codeblock里进行build 只能得到第一个exe |
|
m******1 发帖数: 418 | 4 在 netbeans 和 Codeblocks 上用过 cmake
qtcreator上也可以用cmake
11. |
|
o*****l 发帖数: 539 | 5 How to include a library using cmake?
======================================
For example, I want to use glib2,
Install:
$ sudo yum install glib2-devel
Then in cpp file,
#include
compile:
g++ `pkg-config --cflags --libs glib-2.0` test.cpp
======================================================
How to do it using cmake?
Thanks! |
|
r*g 发帖数: 186 | 6 问个CMake的问题, project结构如下:
proj
|
+-------proj_1
| |
| +-------main.cpp
| +-------txxd.cpp
| +-------abc.ft
| +-------def.ft
|
+-------proj_2
| |
| +-------main.cpp
| +-------xxx.cpp
| +-------ghi.ft
| +-------klm.ft
+-------proj_3
|
+-------main.cpp
+-------xxx.cpp
+-------opq.ft
+-------rst.ft
每个proj_x将生成不同的可执行文件. 然后对于xxxxxx.ft, 将会调用外部命令生成
xxxxx.hpp和xxxxx.cpp, 然后分别被对应... 阅读全帖 |
|
m******t 发帖数: 1171 | 7 嵌套结构:
ADD_SUBDIRECTORY
外部编译:
在你要外部编译文件夹下invoke cmake 就行。
XXXX.ft -> XXXX.h XXXX.cpp:
cmake支持这种预执行命令,你查一下。我一下子忘了。 |
|
s***s 发帖数: 104 | 8 【 以下文字转载自 Programming 讨论区 】
发信人: sshfs (blue hat), 信区: Programming
标 题: cmake 的问题
发信站: BBS 未名空间站 (Mon Mar 8 23:03:26 2010, 美东)
windows下,生成的dll依赖mscvcr80.dll。请问在cmake中怎么弄,才能static link,
而不是dynamic link。
谢谢 |
|
w***g 发帖数: 5958 | 9 刚刚开始学cmake,发现文档极其缺乏。请教一下下面几个问题:
1. add_subdirectory会不会把当前CMakeLists.txt中的内容继承到subdirectory中?
2. 怎么样把各个subdirectory中生成的library输出到一个lib目录,把各个subdirect
ory中生成的程序输出到bin目录?
3. 怎么让所有subdirectory中的程序都链接一些公共的library, 比如libboost_progr
aom_option.a?
4. 程序A/demo/hello.cpp需要链接到A/lib/hello.cpp产生的lib,有没有办法避免输入
libhello的路径?
多谢! |
|
s***s 发帖数: 104 | 10 windows下,生成的dll依赖mscvcr80.dll。请问在cmake中怎么弄,才能static link,
而不是dynamic link。
谢谢 |
|
e*****r 发帖数: 379 | 11 求支持:在把C++编的cmake转成C#。。
不知道需要多久,主要靠业余时间。。。 |
|
e*****r 发帖数: 379 | 12 有编过lexer/parser generator 的大牛没有?帮忙看看cmake的lexer.没看懂。脸红中
。 跟java/C#比起来,C++/C 真是稀奇古怪的恐龙级别的语言。 |
|
m********5 发帖数: 17667 | 13 eclipse CDT基本搞不定啊,太难用了只能手工cmake产生makefile project. 那个啥
CDT4 generator很难用。而且对Clang支持一点不好。
要求:是IDE, code completion 要smart, 能分析大量template. 静态分析支持c++11.
可以快捷键从declaration里面生成implementation code block. 有一些refactor
code功能。支持clang和gcc
速读别太慢就行。
qtcreator感觉对Qt本身支持不错,但其他的就马马虎虎了
Kdevelop 4谁用过么?功能稳定么?
CLion要按年收费,而且刚出来1.0,不知道怎么样?
netbeans呢? |
|
d*******r 发帖数: 3299 | 14 我看 Clion 官网上写的 "deep integration with CMake build system"
Clion 是 JetBrains 的, 靠谱
码工在买电脑和Editor/IDE上省那一点点钱, 就是跟自己过不去呀
11. |
|
k****5 发帖数: 546 | 15 复杂模版用的多的必定是大项目,编译速度很慢,速度快,code completion也快的IDE
还不存在。在没出来之前建议cmake+ninja+sublimetext。sublime的全局搜索(其实就
是grep)基本可以代替code completion. |
|
S*A 发帖数: 7142 | 16 对,CMake 是最接近可以解决这个问题的。
例如 llvm 也用 CMake。
但是很多 project 不是用 CMake 的。
你看看有多少开发 iphone, VS 的程序员用 CMake 来生成
proj 文件?
CMake 有自己的限制,基本上出了 CMake 自己的预先支持的
框架,东西就变很 messy 了。在 CMake 预先支持的框架里
还比较干净。
eclipse |
|
|
a******u 发帖数: 239 | 18 需要用到ITK/VTK,可能以后还会用到OpenCV
用3D可视化的多
想用CMAKE
发现的问题:
1.预先建立的MFC项目,吧代码拿出来后,用CMAKE编译的MFC,出现运行期错误
2.用QT和CMAKE,没办法编译成QT的project,出现的是visual studio的solution,这
样做UI没那么方便了
以前用过MFC比较长的时间,几年没用过了,现在看QT做界面很简单,只是CMAKE和QT好
像衔接的不太好
学艺不精,看大家有什么建议,欢迎给链接我来学习学习
谢谢 |
|
S*A 发帖数: 7142 | 19 Nope. cmake is just a project make file generator.
Cmake does not actually build stuff. It call GNU make
to build it.
In the Linux kernel case, cmake can only hurt, instead
of helping incremental build faster. |
|
N*******t 发帖数: 66 | 20 我刚试了,cmake可以的,你用cmake时,它打印的是
什么信息?
如果你目录下已有Makefile,它会要你做out-of-source
编译。我做的就是:
rm -f CMakeCache.txt
mkdir build
cd build
cmake .. |
|
S*A 发帖数: 7142 | 21 珍惜生命,远离 automake.
如果小项目,不用 windows, mac 的 cross platform compile.
直接用 GNU make 就可以了,一般小的项目是很快的。
cmake 主要是给 cross platform 用的,最后 cmake 也生成
make, Linux 下面跑的还是 make. |
|
y****e 发帖数: 23939 | 22 试试用先用cmake帮你在linux下产生Makefile,然后用cmake直接产生windows (VC)
下的solution |
|
e*****r 发帖数: 379 | 23 看了cmake的几个online tutorials,好像正是我要的!!!可是信息不全啊!
有谁有英文书:mastering cmake???? 或者相关的书籍?
谢过!!
|
|
d**o 发帖数: 864 | 24 这样模块化,每个目录都编译一个library。
现在有各种工具让你不用手写每一个makefile,比如说autocmake 和cmake
我用cmake |
|
d********g 发帖数: 10550 | 25 这个安装做得有点奇怪。看到CMakeLists.txt习惯性地cmake .但是不行,看README是
要裸make Makefile.daomake,又没有提供configure,要改prefix还得人工确认一下
Makefile里的参数。希望能直接搞成cmake的 |
|
N******K 发帖数: 10202 | 26 CMake 可以自动生成 VS 的 .sln 等等 还可以生成其他IDE的proj文件 比如 eclipse
cdt
我先写好了CMake的东西 再用VS |
|
w***g 发帖数: 5958 | 27 实在无聊试着玩,直接从git导入一个我一直用vi和cmake写的项目,无痛苦顺利编译。
界面看着也挺漂亮。很神奇的是我的cmake产出一大堆binary,它竟然自动选出了最重
要那个(难道是按文件大小选的?)没有发现NaturalOK说的那个数组下标按字典排序
的问题。
感觉挺不错的。没有正经拿它写程序,还不好说是不是稳定。 |
|
c****x 发帖数: 6601 | 28 用过valgrind,gdb和cmake么?
:你读个野鸡试试,根本用不着。
: |
|
|
d********g 发帖数: 10550 | 30 CoffeScript作为一个JavaScript的生成工具是没什么太大前途的,除非以后浏览器直
接就支持它成为原生语言。CS和JS的关系就好比cmake和make |
|
a***a 发帖数: 34 | 31 【 以下文字转载自 CS 讨论区 】
发信人: algra (algra), 信区: CS
标 题: Research Software Engineer Opportunity
发信站: BBS 未名空间站 (Tue Sep 30 17:10:29 2014, 美东)
The company I work for is looking for a research software engineer with
strong C++, graphics and/or GUI development experience.
Contact me if you are interested.
Some requirements are listed here:
● BS degree or higher in computer/biomedical science or engineering, or
a related field.
● Proficient in object-oriented software development using C/C++
● G... 阅读全帖 |
|
a******r 发帖数: 192 | 32 湾区硅谷初创公司,目前只有五六个人。需要一名Firmware工程师领导负责Firmware开
发。目前都还是在家工作。Funding没有问题。今年会有大的成长。以下是工作描述,
不一定要完全match, 欢迎站内信箱联系!如果你周围有认识的人,帮忙推荐下啊,推
荐成功会有bonus哦!
Senior Software Engineer in Embedded Systems/Router firmware
Proficient in C/C++ coding and shell script
Proficient in Embedded linux, particularly OpenWRT/DDWRT
Familiar with ARM chipset tools and cross compilers
Proficient with Make or CMake.
Experience working with chip suppliers and ODMs
Proficient in tools and shell scripts for rapid development, co... 阅读全帖 |
|
a***y 发帖数: 852 | 33 晕 你说的这些不是是个ide就能干吗
如果代码是cmake的话推荐cLion |
|
m*******e 发帖数: 14 | 34 大家好,
我在ubuntu11.10上安装opencv2.3.1a,使用make命令后,出现错误如下:
*****************
/usr/OpenCV-2.3.1/OpenCV-2.3.1/modules/highgui/src/cap_ffmpeg_impl.hpp:921:
10: error: ‘AVERROR_NOFMT’ was not declared in this scope
/usr/OpenCV-2.3.1/OpenCV-2.3.1/modules/highgui/src/cap_ffmpeg_impl.hpp:923:
10: error: ‘AVERROR_IO’ was not declared in this scope
/usr/OpenCV-2.3.1/OpenCV-2.3.1/modules/highgui/src/cap_ffmpeg_impl.hpp:925:
10: error: ‘AVERROR_NOMEM’ was not declared in this scope
*****************
好像是ffmpeg的问题,... 阅读全帖 |
|
m*******e 发帖数: 14 | 35 大家好,
我在ubuntu11.10上安装opencv2.3.1a,使用make命令后,出现错误如下:
*****************
/usr/OpenCV-2.3.1/OpenCV-2.3.1/modules/highgui/src/cap_ffmpeg_impl.hpp:921:
10: error: ‘AVERROR_NOFMT’ was not declared in this scope
/usr/OpenCV-2.3.1/OpenCV-2.3.1/modules/highgui/src/cap_ffmpeg_impl.hpp:923:
10: error: ‘AVERROR_IO’ was not declared in this scope
/usr/OpenCV-2.3.1/OpenCV-2.3.1/modules/highgui/src/cap_ffmpeg_impl.hpp:925:
10: error: ‘AVERROR_NOMEM’ was not declared in this scope
*****************
好像是ffmpeg的问题,... 阅读全帖 |
|
m*******e 发帖数: 14 | 36 大家好,
我在ubuntu11.10上安装opencv2.3.1a,使用make命令后,出现错误如下:
*****************
/usr/OpenCV-2.3.1/OpenCV-2.3.1/modules/highgui/src/cap_ffmpeg_impl.hpp:921:
10: error: ‘AVERROR_NOFMT’ was not declared in this scope
/usr/OpenCV-2.3.1/OpenCV-2.3.1/modules/highgui/src/cap_ffmpeg_impl.hpp:923:
10: error: ‘AVERROR_IO’ was not declared in this scope
/usr/OpenCV-2.3.1/OpenCV-2.3.1/modules/highgui/src/cap_ffmpeg_impl.hpp:925:
10: error: ‘AVERROR_NOMEM’ was not declared in this scope
*****************
好像是ffmpeg的问题,... 阅读全帖 |
|
a***a 发帖数: 34 | 37 The company I work for is looking for a research software engineer with
strong C++, graphics and/or GUI development experience.
Contact me if you are interested.
Some requirements are listed here:
● BS degree or higher in computer/biomedical science or engineering, or
a related field.
● Proficient in object-oriented software development using C/C++
● Good knowledge on building cross-platform code (e.g. using CMAKE,
Visual Studio)
● Understanding and prior experience with OpenGL or 3D... 阅读全帖 |
|
a***a 发帖数: 34 | 38 The company I work for is looking for a research software engineer with
strong C++, graphics and/or GUI development experience.
Contact me if you are interested.
Some requirements are listed here:
● BS degree or higher in computer/biomedical science or engineering, or
a related field.
● Proficient in object-oriented software development using C/C++
● Good knowledge on building cross-platform code (e.g. using CMAKE,
Visual Studio)
● Understanding and prior experience with OpenGL or 3D... 阅读全帖 |
|
|
|
|
d********g 发帖数: 10550 | 42 我工作天天用Gentoo,不给root,用不了emerge
装软件全部手工放~/opt下,make/cmake玩得贼熟,就是不知道没有emerge的Gentoo有
啥好处
自己虚拟机上几个发行版都玩,主要用Kubuntu。Gentoo别说升级就是装个小软件头发
都等白了所以不爽。Arch玩得不熟经常出问题不爽,当然这个是自己的原因了 |
|
z*******6 发帖数: 133 | 43 试试用 automake,cmake等, 先把 project/solution 搞出来。
然后参考刚才上上贴对header file 的处理。一步步来,有些头文件对应的列表,可以
在网络上搜搜,比如 unistd.h, sys/*.h, dirent.h; 第三方的库也要准备好。
几个问题如果系统中没有用的话,还是可以很快完成的。
1. GUI,如果有motif xwin 等的界面,试试用 QT
2. 如果有opengl, 需要用 glew, regular expression 也需要单独的库
3. 如果有遇到share memory/semaphore 的部分,需要重新做
4. 如果有文件io 的低级操作的部分,要重来
5. 如果有遇到 signal 的处理的部分,估计要重来。
6. 。。。 |
|
I**********e 发帖数: 62 | 44 make\autotools
cmake
waf
其他的?
我最近试了试tup,好像不错。不知道有没有其他人用? |
|
y***q 发帖数: 100 | 45 sounds like you want to use cmake... |
|
d**o 发帖数: 864 | 46 之前一直自己改makefile..
现在想换一个了。据说auto-tools是auto-hell
cmake不错
各位谈谈自己的经验吧? |
|
m*******e 发帖数: 14 | 47 大家好,
我在ubuntu11.10上安装opencv2.3.1a,使用make命令后,出现错误如下:
*****************
/usr/OpenCV-2.3.1/OpenCV-2.3.1/modules/highgui/src/cap_ffmpeg_impl.hpp:921:
10: error: ‘AVERROR_NOFMT’ was not declared in this scope
/usr/OpenCV-2.3.1/OpenCV-2.3.1/modules/highgui/src/cap_ffmpeg_impl.hpp:923:
10: error: ‘AVERROR_IO’ was not declared in this scope
/usr/OpenCV-2.3.1/OpenCV-2.3.1/modules/highgui/src/cap_ffmpeg_impl.hpp:925:
10: error: ‘AVERROR_NOMEM’ was not declared in this scope
*****************
好像是ffmpeg的问题,... 阅读全帖 |
|
J********a 发帖数: 5208 | 48 我怎么觉得不是互斥的……我搞C++都是
用Cmake管理项目,Visual Studio上写,Windows console compile/deploy,Linux上
集成,当然在Linux上用vi.. |
|
m********5 发帖数: 17667 | 49 除非用arch, gentoo之类明显linux下更麻烦啊
debian之类新包迟迟不出,大部分Lib还是只能手动装
最后和系统的各种设置打架,死的很惨
而且即使用arch, gentoo要搞多版本共存仍然要费点功夫,而且常常还是会出各种意想
不到的问题。
windows下就没这些问题,side-by-side要健全太多了,多版本共存完全不是问题,开
发自由度大得多。
唯一的就是想轻松用别人的库很可能得折腾minGW, 因为很多东西要想用VS来编译得自
己折腾各种参数,编译设置,重写不少东西,很可能弄一周都搞不定。
所以如果你用的库对VS有很好的支持,建议就别用Linux了,没意义的。Perl我就不熟
悉了,Python的话,绝大部分包原生支持VS编译,即使不支持的,之需要改动一两个参
数就可以搞定,因此win下用没啥问题。
Qt4在>VS2008下用起来也没啥问题; 而且cmake现在也很好用 |
|