2009-07-01 105 views
1

我有一个用于eclipse的C++ Makefileproject,如果我构建它,二进制文件位于项目根目录中。我如何将生成目录更改为{ROOT}/bin?Eclipse C++ makefile项目输出

我尝试过的项目propertys-> c/C++构建 - >构建位置(构建目录:我的路径) 但它根本无法编译。

回答

4

您使用了一个Makefile项目。所有必须完成的事情,包括放置可执行文件的位置,都必须由您编码到Makefile中! Eclipse只是通过调用make来启动构建。

一个简单的例子:

CXXFLAGS= -g -O0 
CXX=g++ 


all: bin bin/test 

bin/test: bin/test.o 
    $(CXX) -o bin/test bin/test.o 

bin/test.o: test.cpp 
    $(CXX) $(CXXFLAGS) -o bin/test.o -c test.cpp 

bin: 
    mkdir bin 

clean: 
    rm bin/test.o 
    rm bin/test 

这是我学会了如何从写一个Makefile来源:http://www.eng.hawaii.edu/Tutor/Make

平原Makefile文件时很方便,用少量文件的项目。一旦因缺少重新编译程序而导致段错误(忘记在.o:依赖项中列出头文件),您应该转向完整的构建系统,如cmake。 cmake为你生成Makefiles,但它理解Makfiles的基本原理来解释错误信息很重要。