gcc命令

记boost在gcc的一个库链接问题generic_category()

假如想象 提交于 2019-12-01 12:49:52
报错大致如下: main.cpp:(.text+0x49): undefined reference to `boost::system::generic_category()' main.cpp:(.text+0x53): undefined reference to `boost::system::generic_category()' main.cpp:(.text+0x5d): undefined reference to `boost::system::system_category()' 当时搞了很久,各种库各种一通链接,始终没解决问题 解决方案: "boost/filesystem.hpp" 这个文件依赖于boost_system,编译的时候,需要 -lboost_system选项,但是你的编译选项里头已经指定该选项,为什么还会出现链接错误呢。我也纳闷了半天,后来发现,原来是-l选项的顺序问题。在g++的man帮助信息里面,我发现了下面的话: 读完这段话,应该就明白出错原因了。所以,解决方案就是用下面的命令来编译: 引用 g++ main.cpp -lboost_system -lboost_filesystem ———————————————— 版权声明:本文为CSDN博主「葭五」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。

Linux 新手入门教程

China☆狼群 提交于 2019-12-01 02:34:55
目录 Linux 新手入门教程 简介 桌面环境 Linux 的安装 文件系统和分区 运行级别 强大的终端 Linux 文件系统权限 软件包管理 编辑器之神:VIM 使用 Linux 溜起 C/C++ Linux 新手入门教程 1991年10月5日, Linus Torvalds 在互联网上发布消息,宣布他自己开发的内核系统诞生了。他将内核源代码保存在芬兰最大的 FTP 网站上,命名为 Linux ,取义 Linus's Minix ,并向全世界所有人公布。这也使得10月5日成为一个特殊的日子,以致之后的许多 Linux 版本都选择在这个日子发布。当然,如今的 Linux 一词被递归定义为 Linux is not Unix 。 简介 Linux 是一套免费使用和自由传播的类 Unix 操作系统,严格来说, Linux 一词仅指其操作系统内核,不包括任何附加软件。但如今 Linux 拥有数不胜数的发行版本,广义上它们都可以叫做 Linux ,典型代表如 Debian 系列、 RedHat 系列、 Arch 系列和 SUSE 系列等,它们也都有着各自的侧重和坚持。 桌面环境 尽管我们使用 Windows 或 OS X 操作系统的时候可能不会很在意 桌面环境 ,但在 Linux 下我们将需要考虑选择一个中意的桌面环境——也许是多个——或者在某些情况下,完全不必安装桌面环境

嵌入式Qt开发环境搭建

假装没事ソ 提交于 2019-11-29 06:36:39
嵌入式Qt开发环境搭建 系统基础环境 系统更新 sudo apt update sudo apt upgrade sudo apt autoremove 安装常用软件 # 安装vim sudo apt install vim -y # 安装net-tools ,想用ifconfig等命令,就要安装,当然好多linux系统自带了,就不用装了 sudo apt install net-tools # 安装git gitk sudo apt install git gitk # 安装 32bit 库, 这个是必须安装的 sudo apt install lib32ncurses5 lib32z1 # 安装ssh-server,方便ssh登录 sudo apt install openssh-server # 安装g++ gcc (7.4) sudo apt install g++ gcc # 安装make sudo apt install make 安装markdown编辑工具,我使用的是typora,在这里就推荐这个了,这个是个人习惯,想用啥就安装啥了,建议尽量文档用markdown书写 # or run: # sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys BA300B7755AFCFAE wget -qO

Android编译环境折腾记

六月ゝ 毕业季﹏ 提交于 2019-11-29 03:59:33
一、Ubuntu编译Android4.4.4 1.平台:realtek RTD2984(Android4.4.4)   第一次安装了ubuntu14.04.5,官网下载的iso,官网下的jar,编译android4.x需要安装jdk6,更高的版本会有问题,baidu到很多搭建环境的步骤,这个不多说,在win7下使用EasyBCD引导安装的ubuntu,1TB硬盘果断装了双系统,事实证明没删掉win7是个多么明智的决定,在jdk方面,android4.4比4.0要多配置一个javap,其他都一样 1 update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk1.6.0_43/bin/java" 1 2 update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk1.6.0_43/bin/javac" 1 3 update-alternatives --install "/usr/bin/javadoc" "javadoc" "/usr/lib/jvm/jdk1.6.0_43/bin/javadoc" 1 4 update-alternatives --install "/usr/lib/mozilla/plugins

【C/C++】复合类型(自定义类型)

杀马特。学长 韩版系。学妹 提交于 2019-11-29 00:50:57
gcc编译器 gcc(GNU Compiler Collection,GNU 编译器套件),是由 GNU 开发的编程语言编译器。gcc原本作为GNU操作系统的官方编译器,现已被大多数类Unix操作系统(如Linux、BSD、Mac OS X等)采纳为标准的编译器,gcc同样适用于微软的Windows。 gcc最初用于编译C语言,随着项目的发展gcc已经成为了能够编译C、C++、Java、Ada、fortran、Object C、Object C++、Go语言的编译器大家族。 编译命令格式: gcc [-option1] ... <filename> g++ [-option1] ... <filename> 1 2 命令、选项和源文件之间使用空格分隔 一行命令中可以有零个、一个或多个选项 文件名可以包含文件的绝对路径,也可以使用相对路径 如果命令中不包含输出可执行文件的文件名,可执行文件的文件名会自动生成一个默认名,Linux平台为a.out,Windows平台为a.exe gcc、g++编译常用选项说明: 选项 含义 -o file 指定生成的输出文件名为file -E 只进行预处理 -S(大写) 只进行预处理和编译 -c(小写) 只进行预处理、编译和汇编 C语言是不跨平台的,用Java用习惯的我突然回到C,有点不适应,用SpringBoot完成的Java项目,打成jar包

Visual Studio Code 如何编写运行 C、C++ 程序?

独自空忆成欢 提交于 2019-11-28 18:45:36
0. 前言 本文面向初学者,但是 不适合还在学写Hello World级别的初学者 。阅读本文能在一定程度上了解程序编译的知识,以及使用VS Code的知识。 本文大部分内容都可从VS Code官方文档: C++ programming with Visual Studio Code 以及各个扩展的文档中获得,并且他们还会进行更新(本文也进行过几次重大更新)。如果你想更深入了解,可以去看。其实本文基本上是由不断地尝试得出来的,如果有错误可以指出。 我的环境:64位Windows 10。32位Win在某些地方需要修改,不过本文没有提;Linux下也有许多不同,仅供参考。 最终效果: 实时显示编译阶段的错误 、格式化代码、进行单文件的编译与调试。 1. 环境的准备 VSC的官网、下载、安装,我就不多说了。VSC只是一个 编辑器 (editor),不是IDE(集成开发环境),不含 编译器 (compiler)和许多其它功能,所以编译器要自己装好。 其实MinGW和MinGW-w64只是名字像,它们是两个不同的项目。为了方便,本文中的MinGW指的其实都是MinGW-w64。MinGW本身已经很久没有更新了,故 不推荐 。下载以下两个程序(都要): LLVM Download Page 在此页面下载Clang。选 Pre-Built Binaries 中的 Windows (64-bit)

从头开始

馋奶兔 提交于 2019-11-26 21:14:14
---恢复内容开始--- 以前安装的都是带桌面的Linux,今天看了一集c的视频,想要从头来,从精简模式开始。。 OK,安装虚拟机Oracle VM VirtualBox,以前一直用的vmware。看视频用的box.ok ,大体看了一下,比较轻量级,而且功能都大差不差,好吧 从官网下载,不知道官网?360软件,搜一下,然后会蹦出一个链接,我用的是腾讯那个下的,你们也可以。。。。 安装,一路默认安装,没啥可说的。 创建。。。。也很简单,选择影像,然后精简安装。我貌似就安装了一个开发者工具。。。其他啥都没装。。。 进入系统,想看一下目前的网卡设置,Ifconfig ,竟然 command not found....去sbin下一看,确实没有ifconfig。。。。好吧,这个命令也没有。。。yum肯定有。。。安装gcc yum -y install gcc gcc-c++ kernel-devel 然后抽根烟,等他安装完毕。。。OK。 写一个c程序试试呗 经典起始程序hello world登场 vi test.c 编译一下 。hello world顺利出现。OK。至此OK 来源: https://www.cnblogs.com/Lonelychampion/p/11333594.html

libtool的作用及应用【转载】

若如初见. 提交于 2019-11-26 18:34:57
转自: http://blog.chinaunix.net/space.php?uid=11585335&do=blog&id=2867003 libtool常见于autoconf/automake,单独用的例子很少,所以我想仔细研究一下,为将来兄弟们看起来方便。 一。libtool的作用 offer a standard procedure for creating shared libraries on different platforms libtool 是一个通用库支持脚本,将使用动态库的复杂性隐藏在统一、可移植的接口中,也就是说,你可以通过如下所示的标准方法,在不同平台上创建并调用动态库,我们可以认为libtool是gcc的一个抽象,也就是说,它包装了gcc或者其他的任何编译器,用户无需知道细节,只要告诉libtool说我需要要编译哪些库即可,并且,它只与libtool文件打交道,例如lo、la为后缀的文件。 二。libtool的使用 1.Creating object files # libtool --mode=compile gcc -g -O - c foo.c gcc -g -O -c foo.c -fPIC -DPIC -o .libs/ foo.o gcc -g -O -c foo.c -o foo.o >/dev/ null 2 >& 1 #

IntelliJ IDEA 2019.2 LUA环境搭建说明

天大地大妈咪最大 提交于 2019-11-26 16:58:54
1、搭建GCC 添加系统环境变量PATH 为C:\MinGW\bin目录 测试命令进入CMD gcc -v 2、编译LUA cd到lua/src目录 mingw32-make mingw 编译后就有lua.exe等文件 3、intellij IDEA的设置注意 在运行调试的时候要在运行/调试 设置LUE.EXE的路径 来源: https://www.cnblogs.com/delphixe/p/11327794.html