当前位置:  技术问答>linux和unix

如何用g++编译包含多个文件的源码

    来源: 互联网  发布时间:2017-02-18

    本文导语:  我在学习鸟哥的linux私房菜第22章22.3.1节中的案例时 发现将函数类型改为.cpp的话,main.cpp函数不能编译,用 g++ -c main.cpp haha.cpp sin_value.cpp cos_value.cpp  编译时,显示如下信息: main.cpp:in function 'int main()': main.cpp:13...

我在学习鸟哥的linux私房菜第22章22.3.1节中的案例时 发现将函数类型改为.cpp的话,main.cpp函数不能编译,用
g++ -c main.cpp haha.cpp sin_value.cpp cos_value.cpp 
编译时,显示如下信息:
main.cpp:in function 'int main()':
main.cpp:13:error:'haha'was not declaredin this scope
main.cpp:14:error:'sin_value'was not declaredin this scope
main.cpp:15:error:'cos_value'was not declaredin this scope
请教各位,这是怎么回事呢,把这些文件的后缀全部改为.c,则能成功编译呢,.c++就不行。
各个函数内容如下:
/*main.cpp
#include 
#include 
#define pi 3.14159
char name[15];
float angle;
int main(void)
{
printf ("nnPlease input your name: ");
scanf  ("%s", &name );
printf ("nPlease enter the degree angle (ex> 90): " );
scanf  ("%f", &angle );
haha( name );
sin_value( angle );
cos_value( angle );
}

/*sin_value.cpp
#include 
#include 
#define pi 3.14159
float angle;
void sin_value(void)
{
float value;
value = sin ( angle / 180. * pi );
printf ("nThe Sin is: %5.2fn",value);
}

/*cos_value.cpp
#include 
#include 
#define pi 3.14159
float angle;
void cos_value(void)
{
float value;
value = cos ( angle / 180. * pi );
printf ("The Cos is: %5.2fn",value);
}

/*haha.cpp
#include 
int haha(char name[15])
{
printf ("nnHi, Dear %s, nice to meet you.", name);
}


|
这是C++语法规则上的啦,extern一下你要用到的函数。

    
 
 

您可能感兴趣的文章:

  • linux/centos源码安装nginx编译配置选项参数介绍
  • 如何发布自己的源码包,以及从别人的源码包中获取编译参数
  • ??请问在windows下怎样配置sh的configure文件 许多开放源码项目在编译前都要配置configure才能编译. 可...
  • 我想把Java源码编译本地的exe,因为用jvm太慢了,但是不知用啥编译器?
  • 关于编译源码的疑问
  • 搜索引擎蜘蛛源码,谁能帮我编译一下!!!源码相赠(没办法,我了解Linux!!!)
  • Unbutu中利用Shell自动编译Android源码
  • 系统FC10 我想装tar.gz的源码文件。但在编译是总是出错。求助
  • 在纯Linux下如何编译firefox源码?
  • 书写基于Linux内核的键盘记录器(Writing Linux Kernel Keylogger)中的源码如何编译通过???
  • linux源码包编译有错误
  • 在redhat开发驱动时,需要下载一个linux源码,编译,替掉原有的内核吗?
  • 下载了飞信1.3源码,如何编译安装
  • Linux 源码 list.h的编译问题
  • 请问 下载了tfn2k源码 如何编译啊
  • Linux编译安装源码包软件
  • linux下php编译显示源码
  • 关于dhcp源码编译出错问题!
  • 系统FC10 我想装tar.gz的源码文件。但在编译是总是出错。求助
  • 请问:有谁编译过steven的《unix环境高级编程》的源码吗?
  • 怎么编译源码啊?急!!!!!!
  • 请问:在proc程序中,若里面有模板的类型,能不能通过预编译啊,(编译时老是无法识别类型,我的头文件都已包含了)
  • 菜鸟问题: redhat linux 编译一个最简单的c程序, 其中包含了<studio.h>头文件,但在gcc编译时,提示找不到studio.h文件,请问各位大大
  • 请教:修改Linux内核时,需要调用驱动程序的函数,头文件也包含了,但是编译时候说头文件找不到!
  • 关于gcc编译的问题,如何知道其包含路径
  • 宏定义里面不能再包含条件编译语句吗?见内容
  • 编译提示,找不到coreleft函数,我包含了alloc.h啊
  • 如何编译一个包含用户级代码和内核级代码的程序
  • 已经包含了unistd.h,gcc编译时仍报错未定义pid_t结构体
  • 关于servlet 的编译问题,怎样设置classpth,把那些java servlet类包含到classpath?而且无法调用servlet!谢谢!
  • 从网上载了个C++程序的源代码,包含38个.cpp和.h,还有makefile.in和makefile.am两个文件,但无configure和makefile.请问怎么编译?谢谢!
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • CentOS 6内核升级:下载编译启用新内核版本详细过程
  • 请教:JSP编译器编译成字节码,跟别的编译器编译出来的有什么不同呢?
  • 高速的网络抓包库PF_ring介绍及编译安装
  • 编译GCC时能不能只编译C/C++的编译器?
  • 关于arm交叉编译器4.3.3编译程序报错,但是3.4.5却能编译通过的问题
  • JB下,我的程序编译得好慢!请问用什么方法编译才可以快一点?或编译顺序改变一下?
  • 请问gdb是不是只能调试gcc编译的程序,在unix下用其它编译器编译的程序是不是不一定能用gdb调试的?
  • 用JCreator写了一个小程序,有十几个class,当修改某个文件重新编译,javac并没有编译修改的文件,请问要如何做javac才会重新编译所有的
  • 问:关于gcc编译器和g++编译器
  • 嵌入式linux开发:一段代码在windows平台用VC编译运行正常,在linux平台用gcc编译运行正常,但是用arm-linux-gcc编译在嵌入式板子上运行就不正常.
  • 在cygwin编译驱动程序要不要交叉编译?
  • 关于如何把编译进内核的编译成模块
  • C编译器 c++编译器 wieldylcc
  • Linux下gcc编译时,如何以静态链接的形式编译?
  • PROC开发时 //注释编译不通过 如何设置使用cpp编译。
  • 编译失败后如何再继续编译
  • 编译qt-x11,最后编译生成可执行文件时候,make出错
  • 如何查看已编译安装软件的编译命令行
  • 请问哪里有反编译.class文件的反编译器?
  • 用Jdk编译时出现提示要加 -deprecation 再编译,请教??
  • linux下有没有能编译出16bit代码的C语言编译器?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3