写了一个c++的程序,有四个文件, 1.cpp, 2.h, 3.cpp, 4.txt;
main函数放在1.cpp中, 2.h是头文件. 3.cpp定义了main中用到的类和函数, 4.txt是infile中要用到的文件,就是简单的读一行字符串.
在vc2005(windows xp)下能正常的编译执行.
我把他们都copy到ubuntu系统下面
g++ -o blank 1.cpp
提示: undefined reference to ' .... '
看上去应该是在2.h和3.cpp定义的东西没有进来.
我又尝试了
g++ -o blank 1.cpp 2.h 3.cpp
编译成功,有一个warning: no newline at end of file. (文件结尾应该空一行?)
想问的是, 如果编译时候要用到多个文件都要写在参数上啊? 有什么规则吗? 呵呵,多谢啦.
无论是linux还是c++,我都还是个新手,所以大家别见笑哈
问个很基础的问题
-
- 帖子: 3182
- 注册时间: 2006-03-10 15:10
- 来自: xi'an China
- 联系:
Re: 问个很基础的问题
1.应该空一行newfolder 写了:
编译成功,有一个warning: no newline at end of file. (文件结尾应该空一行?)
想问的是, 如果编译时候要用到多个文件都要写在参数上啊? 有什么规则吗? 呵呵,多谢啦.
论是linux还是c++,我都还是个新手,所以大家别见笑哈
2.编译的时候不需要都写上,比如
代码: 全选
g++ -c 1.cpp
g++ -c 3.cpp
3.多个文件的时候,win下都是建的工程,lin最好用make
-
- 帖子: 30
- 注册时间: 2007-03-11 12:29