我是靠谱客的博主 喜悦蜡烛,最近开发中收集的这篇文章主要介绍# -lstdc++ #命令行编译C、C++@FDDLC,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

环境:Windows 10 、Code::Blocks

 

命令示例:gcc main.cpp -lstdc++ -o main

 

说明一:

转载内容(应为Linux?):gcc可以编译c++文件,也可以编译c文件,但默认是编译c文件的,加-lstdc++表示编译c++文件,即链接c++库,加-lc表示链接c库,默认情况下就是链接c库,所以如果编译c文件可以不加-lc。

本人测试结论(win10):gcc可以编译c++文件,也可以编译c文件,但默认编译c文件。加-lstdc++表示编译c++文件,即链接c++库,加-lgcc表示链接c库,默认情况下就是链接c库,所以如果编译c文件可以不加-lgcc。

 

说明二:

转载内容(应为Linux?):-l 后面加的是动态库libstdc++。-l加的时候,把"lib"三个字符省略,例如链接libtest.so你就需要加 -ltest ,一般这个库在usr/lib下可以找到

本人测试结论(win10):-lstdc++ 表示链接的是libstdc++库。-l加的时候,把 前缀lib 和 后缀拓展名 省略,例如链接 libgcc.a你就需要加 -lgcc 。请自行研究下图(CodeBlocks文件夹及其子文件夹下并无 .so 文件):


命令实测

前提:把 {parent_dir}MinGWbin(比如D:AnZhuangLuJingCodeBlocksMinGWbin)添加到PATH变量!

 

1、使用 gcc 命令:

1.1 编译 .c 文件:

        (未指定要链接的库,gcc就会默认使用c库)

或者:

        (显示指定链接c库,与上面效果一样)

或者:

        (链接的是c++库,但c.c也能编译成功)

 

1.2 编译 .cpp 文件:

        (用gcc编译 .cpp 必须指定库,而且必须为c++库!)

使用 gcc cpp.cpp -o cpp 会报错(和下面是一样的):

使用 gcc cpp.cpp -lgcc -o cpp 会报错:

 

2、使用g++命令:

2.1 编译 .c 文件:

2.2 编译 .cpp 文件:

总结:只记报错的情况:gcc cpp.cpp [-lgcc](可有可无,该项为gcc的缺省值)。其他情况都是OK的。


说明1:我的 .c 和 .cpp 文件放在桌面,因此在命令行中我要把当前路径切换为:

即:文件在哪,命令行的当前路径就应在哪。

说明2:-o main(可以无空格: -omain ,诸如 -x 这样的都有此性质)含义:用于指定输出的可执行文件(.exe)的名字,若省略 -o main ,则默认在当前路径下生成 a.exe 。 

-o output-file-name

最后

以上就是喜悦蜡烛为你收集整理的# -lstdc++ #命令行编译C、C++@FDDLC的全部内容,希望文章能够帮你解决# -lstdc++ #命令行编译C、C++@FDDLC所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(49)

评论列表共有 0 条评论

立即
投稿
返回
顶部