我建议完全跳过make
,因为它是一种相对古老的技术,使用它可能会面临可移植性问题。相反,学习其他构建系统,比如CMake
http://www.cmake.org/或者SCons
http://www.scons.org/
我自己使用CMake,发现它非常优秀。你只需要编写非常简单的构建脚本(你可以在一两个小时内轻松入门),它就会为你生成makefiles。最大的优点是它可以为几乎任何编译器或构建系统生成makefiles。它可以生成标准的Unix makefiles,Microsoft Visual C++项目,XCode项目,Code::Blocks项目,甚至是KDevelop和Eclipse CDT4项目。
我没有使用过SCons,但我知道它实际上会为你构建程序并运行Python。
在Linux / Unix上入门实际上可以意味着您想要的任何内容。从Visual Studio转换到Eclipse或其他IDE可能就像学习新IDE一样简单,也可能意味着直接进入shell并忘记曾经了解过IDE。我的个人建议是坚持使用IDE-Eclipse作为行业标准,它非常跨平台(只需获取CDT插件)。
关于GCC,如果您正在编写CMake脚本,则可能不会经常自己调用它,因为CMake将生成makefiles。最简单的命令行参数是:
g++ <source-files> -o <output-name> -I <another include directory> -l <library to link to>
例如:
g++ helloworld.cpp -o world.out -I /usr/include -l mylib
要从shell运行可执行文件,请导航到所在目录并键入:
./world.out
请注意,在调用g++时(即
g++ helloworld.cpp
),默认输出文件名为
a.out
。
这就是你真正需要知道的!其余的内容很容易理解。即使您选择使用IDE,我也真诚地建议学习shell,它可以使您的工作更加轻松。
编辑:要将程序移植到Linux和GCC与CMake一起使用,请按照以下步骤操作:
1.获取CMake。
2.在源目录中编写
CMakeLists.txt
文件(这是CMake使用的Makefile格式)。
3.在目录上调用CMake。 CMake会自动解析
CMakeLists.txt
文件并生成您选择的构建脚本。
4.使用您所使用的任何构建系统进行构建。如果您正在使用标准Unix Makefile,则意味着只需导航到构建目录并在shell中键入
make
即可。
5.您的项目将被构建完成!
P.S:我从未学过普通的
make
,尽管它绝对有其用途。CMake在我这里找到了一个热心的用户。
cmake
,它是最接近魔法的东西。 - Kerrek SB