在 linux 中使用自己的头文件编译和 运行 c++ 程序
compile and run c++ program with own header files in linux
这是我第一次制作自己的头文件。我正在尝试在 Ubuntu 上用 C++ 编写一个简单的 Hello World 程序。制作了3个文件如下:
//hello.h 文件
#ifndef HELLO_H
#define HELLO_H
//my own code
void hello();
#endif
//hello.cpp 文件
#include <iostream>
#include "hello.h"
using namespace std;
void hello()
{
cout << "This line is printed from header.";
}
//main.cpp 文件
#include <iostream>
#include "hello.h"
using namespace std;
int main()
{
cout << "in main" << endl << endl;
hello();
return 0;
}
我试过了
g++ -I /home/Desktop/hello/ -c hello.cpp -o hello.o
编译头文件,此命令有效。
然后,一边做
g++ -o main main.cpp
我最终遇到以下错误:
/tmp/ccb0DwHP.o: In function `main':
main.cpp:(.text+0x2e): undefined reference to `hello()'
collect2: error: ld returned 1 exit status
请建议是否需要在终端中的任何文件或命令中进行更改?
谢谢
你不要在下面的命令中 link 到 hello.o:
g++ -o main main.cpp
试试这个:
g++ -o main main.cpp hello.o
或者对于这样简单的程序,只需发出以下命令:
g++ -o main main.cpp hello.cpp
为了方便使用,创建一个makefile,然后运行 make:
make
一个简单的 makefile:
helloprogram: hello.h hello.cpp main.cpp
g++ -o helloprogram main.cpp hello.cpp
clean:
rm helloprogram
将hello.h放入Path2Hello;
g++ -o main -I Path2Hello main.cpp hello.cpp
ps: -I 选项指定备用包含目录(用于头文件)。
要编译和运行 C 语言程序,您需要一个C 编译器。要在 Computer/laptop 中设置 C 语言编译器,有两种方法:
下载一个完整的 IDE,例如 Turbo C 或 Microsoft Visual C++,它带有 C 语言编译器。
或者,您使用任何文本编辑器编辑程序文件并单独下载 C 编译器。
这是我第一次制作自己的头文件。我正在尝试在 Ubuntu 上用 C++ 编写一个简单的 Hello World 程序。制作了3个文件如下:
//hello.h 文件
#ifndef HELLO_H
#define HELLO_H
//my own code
void hello();
#endif
//hello.cpp 文件
#include <iostream>
#include "hello.h"
using namespace std;
void hello()
{
cout << "This line is printed from header.";
}
//main.cpp 文件
#include <iostream>
#include "hello.h"
using namespace std;
int main()
{
cout << "in main" << endl << endl;
hello();
return 0;
}
我试过了
g++ -I /home/Desktop/hello/ -c hello.cpp -o hello.o
编译头文件,此命令有效。
然后,一边做
g++ -o main main.cpp
我最终遇到以下错误:
/tmp/ccb0DwHP.o: In function `main':
main.cpp:(.text+0x2e): undefined reference to `hello()'
collect2: error: ld returned 1 exit status
请建议是否需要在终端中的任何文件或命令中进行更改?
谢谢
你不要在下面的命令中 link 到 hello.o:
g++ -o main main.cpp
试试这个:
g++ -o main main.cpp hello.o
或者对于这样简单的程序,只需发出以下命令:
g++ -o main main.cpp hello.cpp
为了方便使用,创建一个makefile,然后运行 make:
make
一个简单的 makefile:
helloprogram: hello.h hello.cpp main.cpp
g++ -o helloprogram main.cpp hello.cpp
clean:
rm helloprogram
将hello.h放入Path2Hello;
g++ -o main -I Path2Hello main.cpp hello.cpp
ps: -I 选项指定备用包含目录(用于头文件)。
要编译和运行 C 语言程序,您需要一个C 编译器。要在 Computer/laptop 中设置 C 语言编译器,有两种方法:
下载一个完整的 IDE,例如 Turbo C 或 Microsoft Visual C++,它带有 C 语言编译器。 或者,您使用任何文本编辑器编辑程序文件并单独下载 C 编译器。