我有一个用于 Eclipse 的 C++ Makefile 项目,如果我构建它,二进制文件位于项目根目录中。如何将构建目录更改为 {ROOT}/bin?
我尝试了项目属性 -> c/c++ Build -> Build location (Build directory: MY PATH) 但它根本无法编译。
最佳答案
您使用 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
Plain Makefiles 对于包含少量文件的项目来说很方便。一旦你因为缺少重新编译而出现段错误(忘记在 .o: 依赖项中列出头文件),你应该转向一个完整的构建系统,比如 cmake。 cmake 为您生成 Makefile,但了解 Makfile 的基本原理以解释错误消息很重要。
关于c++ - Eclipse c++ makefile 项目输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1070666/