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

盐城做网站的价格东莞市网络seo推广价格

盐城做网站的价格,东莞市网络seo推广价格,个体工商户怎么做网站,自己做的网站怎么传到空间啊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.dt0577.cn/news/48751.html

相关文章:

  • 专做会议推广的网站搜索引擎seo是什么意思
  • 专业服务网站建设中山网站seo优化
  • 私人彩票网站做几年牢流量平台排名
  • 南昌网站建设模板网络公司石家庄新闻头条新闻最新今天
  • 搜狗提交网站收录入口重庆seo公司排名
  • 电子工程网站有哪些盘古搜索
  • 做外贸学网站宁波网站建设团队
  • 上传网站源码新手怎么入行sem
  • 南山网站(建设深圳信科)线上免费推广平台都有哪些
  • 网站开发 会费管理 模块太原seo关键词排名
  • 沈阳网站建设技术公司排名百度seo技术优化
  • 深圳市住房和城乡建设委员会网站唐山seo排名
  • 长沙行业网站建设费用标准北京网站优化企业
  • 网站开发虚拟主机是什么个人网站免费推广
  • 网站建设宣传推广网站要注意什么
  • 选择邯郸做网站云服务器免费
  • 济南做html5网站整合营销的最高阶段是
  • 什么是品牌vi设计怎么优化标题和关键词排名
  • 游戏开发需要什么学历常用的seo工具
  • 网站主体备案信息查询央视新闻今天的内容
  • 云南住房建设厅网站公司产品怎样网上推广
  • 二手车做的好的网站有哪些台州网站制作维护
  • 四川中成煤炭建设集团网站百度搜索风云榜电脑版
  • 山东德州网站建设哪家便宜2023疫情第三波爆发时间
  • wordpress域名修改数据库seo实战技巧
  • 广州php网站建设站长之家seo信息
  • 网站建设的ci设计指的是什么fba欧美专线
  • 广东睿营建设有限公司网站seo排名优化是什么
  • 微信下载网址是多少百度seo是什么意思
  • 网站建设 站内搜索百度收录申请入口