当前位置: 首页 > news >正文

盐城做网站的价格搜狐新闻手机网

盐城做网站的价格,搜狐新闻手机网,做的网站没流量吗,html网站登陆注册怎么做ubuntu系统上的软件相比CentOS更新还是比较快的,但是还是难免有一些软件更新得不那么快,比如LLVM Clang编译器,目前ubuntu 22.04版本最高还只能安装LLVM 15,而LLVM 18 rc版本都出来了。参见https://github.com/llvm/llvm-project/…

ubuntu系统上的软件相比CentOS更新还是比较快的,但是还是难免有一些软件更新得不那么快,比如LLVM Clang编译器,目前ubuntu 22.04版本最高还只能安装LLVM 15,而LLVM 18 rc版本都出来了。参见https://github.com/llvm/llvm-project/releases。

这里笔者就以最新稳定版本clang+llvm-17.0.6-x86_64-linux-gnu-ubuntu-22.04.tar.xz来说明如何使用LLVM官方发布的tar.xz文件来安装Clang编译器。

首先从前面的链接中下载安装包,ubuntu安装llvm的默认路径是在/usr/lib/,比如llvm-15就是安装在/usr/lib/llvm-15下的,然后通过符号链接将必要文件链接到/usr/bin//usr/lib/以及其它目录下的。我们也遵循这样的规则。

sudo tar xvf clang+llvm-17.0.6-x86_64-linux-gnu-ubuntu-22.04.tar.xz 
sudo mv clang+llvm-17.0.6-x86_64-linux-gnu-ubuntu-22.04 /usr/lib/llvm-17
sudo ln -s /usr/lib/llvm-17/bin/clang /usr/bin/clang -f
sudo ln -s /usr/lib/llvm-17/bin/clang++ /usr/bin/clang++ -f

即可。

这里笔者以前文C++ 20 Module中的示例来使用clang 17编译,并且使用libc++库,而不是stdlibc++

这里使用CMakePresets.json来配置CMake:

{"version": 3,"configurePresets": [{"name": "linux-debug","displayName": "Linux Debug","generator": "Ninja","binaryDir": "${sourceDir}/out/build/${presetName}","installDir": "${sourceDir}/out/install/${presetName}","cacheVariables": {"CMAKE_BUILD_TYPE": "Debug","CMAKE_C_COMPILER": "clang","CMAKE_CXX_COMPILER": "clang++"},"condition": {"type": "equals","lhs": "${hostSystemName}","rhs": "Linux"},"vendor": {"microsoft.com/VisualStudioRemoteSettings/CMake/1.0": {"sourceDir": "$env{HOME}/.vs/$ms{projectDirName}"}}}],"buildPresets": [{"name": "linux-debug","displayName": "linux-debug","description": "自定义生成预设说明","configurePreset": "linux-debug","verbose": true,"jobs": 8}]
}

此时会报错:

/usr/bin/../include/c++/v1/stddef.h:17:15: fatal error: 'stddef.h' file not found

是找不到头文件,可以使用下面的命令来看clang的头文件搜索路径:

echo | clang -x c++ -v -E -

在这里插入图片描述
如果使用了libc++库,则需要添加上,使用:

echo | clang -x c++ -v -E - -stdlib=libc++

在这里插入图片描述
顺便说一下,如果是GCC,则为:

echo | gcc -x c++ -v -E -

在这里插入图片描述

从前面clang带libc++库的输出可以看出,并没有/usr/lib/gcc/x86_64-linux-gnu/11/include,因为libc++库有使用libstdc++库的一些头文件。由于使用了libc++库,还需要添加/usr/lib/llvm-17/include/c++/v1,并且要在/usr/lib/gcc/x86_64-linux-gnu/11/include前面。

可能还会有找不到__config_site文件的情况,该文件在/usr/lib/llvm-17/include/x86_64-unknown-linux-gnu/c++/v1

可以在CMakePresets.json中使用环境变量来设置:

 "environment": {"CPLUS_INCLUDE_PATH": "/usr/lib/llvm-17/include/c++/v1:/usr/lib/gcc/x86_64-linux-gnu/11/include:/usr/lib/llvm-17/include/x86_64-unknown-linux-gnu/c++/v1"}

这样就可以正常使用新版本的clang编译器了,如果还有找不到的文件,也可以通过这样的方式添加路径。

编译器搜索路径有几个环境变量:C_INCLUDE_PATHCPLUS_INCLUDE_PATH以及CPATH。它们常被用于在编译C/C++时的搜索头文件的路径,其中C_INCLUDE_PATH仅对预处理C有效,CPLUS_INCLUDE_PATH仅对预处理C++有效,而CPATH对C和C++语言均有效。

http://www.zhongyajixie.com/news/66252.html

相关文章:

  • 怎么用自己的网站做网页关键词是什么意思
  • 代做毕业设计网站多少钱手机百度seo快速排名
  • 代刷网站只做软件杭州网站优化方案
  • 恩施网站开发网站建设开发公司
  • 广东专业网站建设公司西点培训班一般要多少学费
  • phpwind做的网站江苏建站
  • 南京市建委网站下载中心建设工程招标html友情链接代码
  • 网站家建设培训学校网站如何做优化排名
  • 类做秋霞的网站线上推广是什么工作
  • 数据分析网页重庆排名seo公司
  • 360建筑如何做谷歌优化
  • 国外的一些网站东莞营销网站建设推广
  • 网站 运营工作如何做谷歌推广效果怎么样
  • 公司网站开发 建设搜狗搜索引擎推广
  • 抽奖网站开发郑州网站建设用户
  • 网站开发和软件开发含义百度提交
  • 传播公司可以做门户网站吗seo关键词排名怎么优化
  • 网站套模板教程重庆百度关键词优化软件
  • 做一个app需要什么技术seo外链推广工具下载
  • 做区位图的网站微信加精准客源软件
  • 做视频背景音乐专用网站微信营销号
  • 自己做的网站源码如何安装百度推广客户端
  • 个人主题网站百度基木鱼建站
  • 南京网站制作招聘今日最新足球推荐
  • 网站导航这么做广州seo网站
  • 情侣做记录网站源码江阴网站制作公司
  • 织梦网站被攻击制作网站大概多少钱
  • 重庆网站推广工具网店推广有哪些方法
  • 什么公司做网站会提供源代码seo推广知识
  • 金蝶官网首页长沙seo优化排名