精华内容
下载资源
问答
  • ubuntu18.04安装的boost有点陈旧,因此自行下载最新版本,执行安装即可:https://www.boost.org/ 具体步骤直接参考readme 安装gtest: wget ...

    安装步骤

    安装boost
    ubuntu18.04安装的boost有点陈旧,因此自行下载最新版本,执行安装即可:https://www.boost.org/
    具体步骤直接参考readme

    安装gtest

    wget https://github.com/google/googletest/archive/release-1.8.0.tar.gz && \
    tar zxf release-1.8.0.tar.gz && \
    rm -f release-1.8.0.tar.gz && \
    cd googletest-release-1.8.0 && \
    cmake . && \
    make && \
    make install
    

    安装一些必要的组件:

    sudo apt-get install \
        g++ \
        cmake \
        libevent-dev \
        libdouble-conversion-dev \
        libgoogle-glog-dev \
        libgflags-dev \
        libiberty-dev \
        liblz4-dev \
        liblzma-dev \
        libsnappy-dev \
        make \
        zlib1g-dev \
        binutils-dev \
        libjemalloc-dev \
        libssl-dev \
        pkg-config \
        libunwind-dev
    

    注意,如果之前通过apt方式安装过其他的glog,请提前卸载,否则可能出现冲突。

    安装fmt库:

    git clone https://github.com/fmtlib/fmt.git && cd fmt
    
    mkdir _build && cd _build
    cmake ..
    
    make -j$(nproc)
    sudo make install
    

    安装一些高级功能调试用的库,非必须:

    sudo apt-get install \
        libunwind8-dev \
        libelf-dev \
        libdwarf-dev
    

    安装folly:

    git clone git@github.com:facebook/folly.git
    cd folly
    
    mkdir _build && cd _build
    cmake ..
    make -j $(nproc)
    sudo make install # 可以自定义安装目录,默认是/usr/local/下
    

    编译执行

    因为folly本身依赖项比较多,这里以一个简单的Future为例子,说明具体的使用方式。

    首先给出代码1.cc

    #include <folly/futures/Future.h>
    #include <folly/executors/ThreadedExecutor.h>
    #include <iostream>
    using namespace folly;
    using namespace std;
    
    void foo(int x) {
        // do something with x
        cout << "foo(" << x << ")" << endl;
    }
    
    int main() {
        // ...
        folly::ThreadedExecutor executor;
        cout << "making Promise" << endl;
        Promise<int> p;
        Future<int> f = p.getSemiFuture().via(&executor);
        auto f2 = move(f).thenValue(foo);
        cout << "Future chain made" << endl;
    
        // ... now perhaps in another event callback
    
        cout << "fulfilling Promise" << endl;
        p.setValue(42);
        move(f2).get();
        cout << "Promise fulfilled" << endl;
        return 0;
    }
    

    给出编译的CMake文件,具体的CMake的用法,可以参考博客:

    • https://blog.csdn.net/qq_35976351/article/details/104453888
    • https://blog.csdn.net/qq_35976351/article/details/106866808
    • http://www.yeolar.com/note/2014/12/16/cmake-how-to-find-libraries/
    • https://zhenshenglee.github.io/2016/10/05/161005-CMakeFind%E6%A8%A1%E5%9D%97/
    cmake_minimum_required(VERSION 3.7)
    
    find_package(folly REQUIRED)
    find_package(Threads REQUIRED)
    find_package(gflags REQUIRED)
    
    set(CMAKE_CXX_STANDARD 14)
    
    set_and_check(FOLLY_INCLUDE_DIR /usr/local/include/folly)
    set_and_check(FOLLY_CMAKE_DIR /usr/local/lib/cmake/folly)
    if (NOT TARGET Folly::folly)
        include("${FOLLY_CMAKE_DIR}/folly-targets.cmake")
    endif()
    
    set(FOLLY_LIBRARIES Folly::folly)
    
    if (NOT folly_FIND_QUIETLY)
        message(STATUS "Found folly: ${PACKAGE_PREFIX_DIR}")
    endif()
    
    add_executable(main 1.cc)
    target_link_libraries(main ${FOLLY_LIBRARIES})
    
    展开全文
  • 新版的模板类sophus需要安装fmt依赖,对于fmt-8.0.1,需要在sophus/common.hpp中添加#define FMT_HEADER_ONLY,否则在使用sophus时会报fmt相关的undefined错误。 #define FMT_HEADER_ONLY #include <fmt/core.h&...

    sophus

    新版的模板类sophus需要安装fmt依赖,对于fmt-8.0.1,需要在sophus/common.hpp中添加#define FMT_HEADER_ONLY,否则在使用sophus时会报fmt相关的undefined错误。

    #define FMT_HEADER_ONLY
    #include <fmt/core.h>
    #include <fmt/format.h>
    #include <fmt/ostream.h>
    
    展开全文
  • /code/fmt/build$ make [ 1%] Building CXX object CMakeFiles/fmt.dir/src/format.cc.o In file included from /home/weimeng/code/fmt/include/fmt/format-inl.h:29:0, from /home/weimeng/code/fmt/src/format.cc...
  • Ubuntu安装Sophus模板库(SLAM学习) 由于Sophus模板库是依赖于fmt库的,因此得先安装fmt库; git clone https://github.com/fmtlib/fmt.git cd fmt mkdir build cd build cmake .. make sudo make install 安装...

    Ubuntu下安装Sophus模板库(SLAM学习)


    由于Sophus模板库是依赖于fmt库的,因此得先安装fmt库;

    git clone  https://github.com/fmtlib/fmt.git
    cd fmt
    mkdir build
    cd build
    cmake ..
    make
    sudo make install
    

    安装好fmt库后再安装Sophus模板库(下载后千万不要进行下面的操作,该操作会切换到非模板类)
    git checkout a621ff
    直接按下面步骤操作就好了

    git clone https://github.com/strasdat/Sophus.git
    cd Sophus
    mkdir build
    cd build
    cmake ..
    make
    sudo make install
    

    使用Sophus模板库
    在编写代码时要在初始时加入下面声明,不然会报有关fmt的错误

    define FMT_HEADER_ONLY
    

    如果出现什么问题欢迎在评论区下方与本人讨论哦!

    展开全文
  • Fmt安装与使用,最主要是吐槽。

    千次阅读 2020-08-21 18:02:41
    安装 本文的编译平台的是VS2015 与Cmake. 1、打开Cmake,在1处选择下载的源码, 2、在2处选择生成文件所放在的位置。需要自己在目录下新建build文件夹。 3、点击3处生成配置。注意第一次点击的时候会出现一个对话框...

    安装

    本文的编译平台的是VS2015 与Cmake.

    在这里插入图片描述

    1、打开Cmake,在1处选择下载的源码,
    2、在2处选择生成文件所放在的位置。需要自己在目录下新建build文件夹。
    3、点击3处生成配置。注意第一次点击的时候会出现一个对话框,让你选择编译平台。我选的是VS2015 X64平台。默认不选的话会是x86的。
    4、第一次点击3处按钮可能会出现红色的,如图所示。再点击一次3处按钮。
    5、点击4处按钮,在build文件夹生成项目文件。
    在这里插入图片描述
    6、点击下面的fmt项目,右键重新生成,生成库文件,注意是release还是debug模式,根据需要自己选择。
    在这里插入图片描述

    在这里插入图片描述

    7、至此,库文件生成成功,将头文件与库文件连接好在别的项目就可以使用。

    使用

    部分使用情况

    #include <iostream>
    #include <vector>
    #include <string>
    
    
    #include "fmt/ranges.h"
    #include "fmt/core.h"
    #include "fmt/color.h"
    #include "fmt/chrono.h"
    #include "fmt/os.h"
    #include "fmt/printf.h"
    #include "fmt/compile.h"
    #include "fmt/locale.h"
    //#include "fmt/posix.h"
    
    // 使用 memory_buffer 包含的头文件
    #include "fmt/format.h"
    /*
    静态库必须这么写
    */
    #ifndef _WIN64
    	#ifdef _DEBUG
    		#pragma comment(lib, "../lib32/debug/fmtd.lib")
    	#else
    		#pragma comment(lib, "../lib32/release/fmt.lib")
    	#endif
    #else
    	#ifdef _DEBUG
    		#pragma comment(lib, "../lib64/debug/fmtd.lib")
    	#else
    		#pragma comment(lib, "../lib64/release/fmt.lib")
    	#endif
    #endif
    
    
    // _a前缀必须引用的命名空间
    using namespace fmt::literals;
    /*
    参考文档
    https://www.cnblogs.com/pandamohist/p/13362139.html
    */
    int main()
    {
    	
    	
    	//fmt::print("Hello, world!\n");
    
    	/*std::vector<int> v = { 1, 2, 3 };
    	fmt::print("{}\n", v);*/
    	
    
    
    
    
    	/*using namespace std::literals::chrono_literals;
    	fmt::print("Default format: {} {}\n", 42s, 100ms);
    	fmt::print("strftime-like format: {:%H:%M:%S}\n", 3h + 15min + 30s);*/
    
    
    	//std::string s = fmt::format("The answer is {}.", 42);
    
    
    	//std::string s = fmt::format("I'd rather be {1} than {0}.", "right", "happy");
    
    	
    	//fmt::print(fg(fmt::color::crimson) | fmt::emphasis::bold,"Hello, {}!\n", "world");
    
    	/*fmt::print(fg(fmt::color::floral_white) | bg(fmt::color::slate_gray) |
    		fmt::emphasis::underline, "Hello, {}!\n", "мир");*/
    	//fmt::print(fg(fmt::rgb(255,20,30)),"Hello, {}!\n", "世界");
    
    	//fmt::ostream::output_file();
    	/*auto out = fmt::output_file("guide.txt");
    	out.print("Don't {}", "Panic");*/
    
    
    
    
    	// 1、fmt::format 返回一个字符串
    	/*auto str = fmt::format("1、{0} = {1}\n\n", "1+1", 2);
    	std::cout << str << std::endl;*/
    
    
    	// 2、使用 fmt::memory_buffer 可以避免构造使用string
    	/*
    	// 使用 memory_buffer 包含的头文件
    	#include "3rd_part/fmt/format.h"
    	*/
    	//fmt::memory_buffer out;
    	//format_to(out, "2、For a moment, {} happened.\n\n", "nothing");
    	 这里输出的也是一个char字符串
    	//fmt::print(out.data());
    
    
    
    	//auto err_no = 1;
    	//fmt::print(stderr, "3、System error code = {}\n\n", err_no);
    	//fmt::print("3、Don't {}\n\n", "panic");
    
    
    
    
    	//fmt::print("4、I'd rather be {1} than {0}.\n\n", "right", "happy");
    
    
    	//fmt::print("5、Hello, {name}! The answer is {number}. Goodbye, {name}.\n\n",
    	//	fmt::arg("name", "World"),
    	//	fmt::arg("number", 99));
    
    	///*
    	//若编译器支持c++ 11用户自定义的文本, 后缀 _a提供了一种可以选。
    	//*/
    	//fmt::print("6、Hello, {name}! The answer is {number}. Goodbye, {name}.\n\n",
    	//	"name"_a = "World",
    	//	"number"_a = 42);
    
    
    	// fmt::print(fmt::format(L"Cyrillic letter {}", L'\x42e'));
    	
    
    
    	fmt::print(bg(fmt::terminal_color::cyan), "tcyan");
    		
    	//fmt::print(fg(fmt::rgb(10, 50, 63)), "hello {}\n", "world");
    
    	//fmt::print(fg(fmt::color::floral_white) | bg(fmt::color::slate_gray) |
    		//fmt::emphasis::underline, "Hello, {}!\n", "мир");
    	//fmt::print(fg(fmt::rgb(255, 20, 30)), "Hello, {}!\n", "世界");
    	system("pause");
    	return 0;
    
    }
    
    

    吐槽

    在我的测试项目里面,打印带颜色的字符会出错,向文件写字符也会出错。我在测试项目里面注释掉了,各位可以打开注释自己试一下。不知道是不是我是Window平台下不能使用。有知道的大佬可以在评论留言教我一下。烦的一批啊。

    展开全文
  • 有时你会发现需要格式化某个文本文件中的内容。比如,该文本文件每行一个单词,而任务是把所有的单词都放在同一行。当然,你可以手工来做,但没人喜欢手工做这么耗时的工作。...文中所有的命令和指令都在 Ubuntu 16.04
  • 提取码:6666 这几天在学习高翔博士的视觉SLAM十四讲时,在ch4中...然后换了一台电脑安装依旧是这个错误,我一直用下面这条指令安装,网上好多教程都是用这条指令,但是在Ubuntu20.04电脑上一直报错: git clone h
  • ubuntu16.04安装go

    千次阅读 2019-02-22 17:29:39
    1.官方现在安装包 2.解压到/usr/local下,使用命令sudo tar zxvf go1.10.linux-amd64.tar.gz -C /usr/local ...GOROOT:go的安装路径,默认情况下,系统已经自动配置了GOROOT export GOROOT=/...
  • 提取码:2jil 将文件下载后,把文件放在Downloads文件夹...安装成功后,在usr/local/include/sophus里面会有相应的.hpp文件!!! 然后执行高翔视觉SLAM十四讲ch4的代码就没有问题了,执行过程就不写了,下面配张..
  • ubuntu 安装并配置golang

    万次阅读 2019-02-20 11:13:48
    如何在 ubuntu 安装并配置Go? 虽然安装和配置go很简单,但是很多初学者在第一次安装go环境时会遇到各种坑。 这篇博客完整演示一次如何在ubuntu安装和配置golang 第一步,查看系统版本: 在终端输入:lsb-...
  • 1、安装依赖 folly 要求 gcc 5.1+ 版本,以及c++14 编译支持的boost版本 . folly 的测试代码需要googletest 库,可以用以下命令下载安装: wget ...
  • ubuntu18.04安装go环境

    千次阅读 2021-05-22 09:52:59
    文章目录ubuntu安装Go环境1.下载Go语言安装包方法1:直接在官网下载方法2:直接获取安装包(适用于服务器上安装go)2. 配置全局变量3.验证是否配置成功4.出现warning 配置PATH 全局变量修改5.验证 ubuntu安装Go环境 1....
  • Ubuntu安装golang

    千次阅读 2019-06-11 15:08:32
    将软件解压安装在目录/usr/local下 $ sudo tar -C /usr/local -xzf go1.8beta1.linux-amd64.tar.gz 此时已经有了go文件夹 建立go的工作空间 在home目录下创建三个文件夹src,pkg,bin 也可以用命令mkdir创建 配置...
  • 执行命令: git clone https://github.com/strasdat/Sophus.git cd Sophus git checkout a621ff mkdir build cd build cmake .. make
  • c++ fmt安装和使用示例

    千次阅读 2018-06-30 06:37:00
    安装:1 git clonehttps://github.com/fmtlib/fmt.git2. cmake .3. make && make install#include "fmt/format.h"#include <iostream>int main(){ std::string s = fmt::format("{0}is{1}", "a...
  • Ubuntu16.04常用库的安装方式

    千次阅读 2020-07-01 16:07:15
    Ubuntu16.04常用库的安装方式 Eigen安装方式 参考方式Eigen的安装方式 Eigen官网链接在官网下载需要安装的版本数据包到本地。 将下载的数据包解压到你想要安装的位置。 在解压后的文件中你会发现有一个INSTALL的...
  • Ubuntu安装Go语言环境

    万次阅读 2016-12-03 21:23:17
    Go语言是谷歌公司开发的编程语言。...本文是在Ubuntu15.10麒麟版中安装过程的实录。 1.软件下载 Go语言环境可以从Golang中国网站下载,网址为:Golang中国 Golang下载。如图所示: 从中选择适当的版本下载。选择
  • ubuntu安装golang开发环境

    万次阅读 2018-07-08 16:46:40
    转自:https://www.cnblogs.com/tinywan/p/6928300.html通过两种方式安装一、通过apt-get安装1、安装sudo apt-get install golang2、设置GOPATH变量GOPATH是扩展库的目录,Go先搜索标准库目录,然后搜索GOPATH库目录...
  • Ubuntu16.04上安装GO语言环境

    千次阅读 2019-01-24 15:28:46
    文章目录前期准备安装过程安装结果测试 前期准备 这里不建议使用apt install golang-go进行安装。 使用的是从官网上下载的二进制进行安装。 使用firefox,进入网址Go语言安装包下载 安装过程 我这里默认下载到...
  • 安装go 先去到安装目录/usr/local/src。 从go官网下载go tar包。 sudo wget https://golang.org/dl/go1.16.3.linux-amd64.tar.gz 然后解压 sudo tar -zxvf go1.16.3.linux-amd64.tar.gz 接下来需要配置环境变量。...
  • Ubuntu18.04下安装1.15.2版本go语言 (1)解压缩包: 进入管理员权限su后,执行下面三条语句(#后面的) (2)设置权限(elihsuu是用户名,换成自己的) (3)输入 vim ~/.bashrc更改环境变量,按i进入编辑状态,...
  • ubuntu ffplay安装

    千次阅读 2019-08-08 11:49:52
    安装步骤文档来自于朱启明学长,在此感谢学长的帮助。 1.下载 ffmpeg-*.tar.gz 在 Ffmpeg 官网 https://ffmpeg.org/download.html 挑选版本进行下载,比如作者下载的是 ffmpeg-4.0.tar.gz。 如果你需要用到ffplay, ...
  • 网页截图: ... 手动安装 Go2. 设置 Go 开发环境2.1 创建工作空间2.2 配置环境变量 3. 测试 Go 源码实例4. 卸载 Go5. 升级 Go 版本 1. 手动安装 Go 由于大家使用的 Linux 版本不尽相同,也不见得是最新
  • ubuntu18.04安装Go语言

    万次阅读 多人点赞 2019-03-18 22:21:19
    Go是由Google创建的现代开源编程语言。 Go中编写了许多流行的应用程序,包括Kubernetes,Docker和Grafana。 1. 下载go并解压缩 到Go官网下载Go安包,下载地址 ...如何在Ubuntu 18.04上安装Go
  • ubuntu安装mysql

    2018-01-29 22:44:43
    fmT7yh0CM 11 赋予权限 chown -R mysql /opt/tc/mysql/mysql-5.7.11-linux-glibc2.5-x86_64 chown -R mysql /opt/tc/mysql/mysql-5.7.11-linux-glibc2.5-x86_64/data 12 切换到mysql用户启动服务器 su mysql 进入bin...
  • Ubuntu18安装jenkins

    2020-10-09 09:52:47
    下载安装jenkins前需要安装配置JAVA,可以到官网下载JDK,下载文件为tar.gz 使用 tar xzf b.tar.gz -C btar 命令解压安装安装完成需要配置变量: export JAVA_HOME=/usr/local/appach/java export JRE_HOME=/usr...
  • 文章目录环境说明Golang基础环境下载Golang安装Golang设置系统环境变量赋予权限修改代理检查Go语言是否安装成功检查版本hello worldIDE环境(此处用VSCode)下载VSCode解压到指定文件夹(`/usr/local`)进入到目的文件夹...
  • Ubuntu20.04安装过程

    2021-05-07 15:51:06
    如下选择“Install Ubuntu(safe graphics)”带图形方式安装 加载中 加载完毕之后出现如下界面,直接选择“Continue” 进入键盘布局设置,直接选择“Continue” 进入软件安装更新设置,此处选择...
  • Ubuntu安装VMAF及使用

    2021-08-26 16:14:18
    前言 VMAF(Video Multi-Method Assessment ...安装步骤 下载安装VMAF git clone https://github.com/Netflix/vmaf.git cd vmaf/libvmaf/ sudo apt install meson sudo apt install nasm meson build --buildtype rele
  • Ubuntu20.04安装geth

    2021-03-17 11:44:05
    1. 安装 git $ sudo add-apt-repository ppa:git-core/ppa $ sudo apt-get update $ sudo apt-get install git 通过以下命令查看git的版本,顺便验证git安装是否成功。 $ git --version 2. 安装node.js 官网:...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 5,854
精华内容 2,341
关键字:

ubuntu安装fmt