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

局域网视频网站搭建百度网站的优点

局域网视频网站搭建,百度网站的优点,建设有限公司,网站建设公司的政策风险目录 一、问题背景 二、问题分析 三、问题解决 一、问题背景 VS2022中能够跨平台的工程类型就是CMake项目#xff0c;一套代码能跨windows/Linux/Mac多种操作系统。而实际使用时#xff0c;发现相关资料比较少#xff0c;需要摸索一下。 碰到的问题简述#xff1a; 1、C…目录 一、问题背景 二、问题分析 三、问题解决 一、问题背景 VS2022中能够跨平台的工程类型就是CMake项目一套代码能跨windows/Linux/Mac多种操作系统。而实际使用时发现相关资料比较少需要摸索一下。 碰到的问题简述 1、C Intellisense信息可能过时生成要刷新的CMake缓存。 2、多次定义了变量 CMAKE_INSTALL_PREFIX 3、CMake Error: CMake was unable to find a build program corresponding to Ninja.  CMAKE_MAKE_PROGRAM is not set.  You probably need to select a different build tool.  4、CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage     5、CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage          二、问题分析 CMake工程中最重要的文件就是CMakeLists文件其包含工程所有需要的元素例如下面这个demo。直接用CMakeLists会觉得难用但用了makefile再用这个就觉得CMakeLists十分友好了。 # CMakeList.txt: CMakeProject1 的 CMake 项目在此处包括源代码并定义 # 项目特定的逻辑。 # cmake_minimum_required (VERSION 3.8)# 如果支持请为 MSVC 编译器启用热重载。 if (POLICY CMP0141)cmake_policy(SET CMP0141 NEW)set(CMAKE_MSVC_DEBUG_INFORMATION_FORMAT $IF:$AND:$C_COMPILER_ID:MSVC,$CXX_COMPILER_ID:MSVC,$$CONFIG:Debug,RelWithDebInfo:EditAndContinue,$$CONFIG:Debug,RelWithDebInfo:ProgramDatabase) endif()project (CMakeProject1)# 将源代码添加到此项目的可执行文件。 add_executable (CMakeProject1 CMakeProject1.cpp CMakeProject1.h)if (CMAKE_VERSION VERSION_GREATER 3.12)set_property(TARGET CMakeProject1 PROPERTY CXX_STANDARD 20) endif()# TODO: 如有需要请添加测试并安装目标。如果上面的demo看不懂建议先恶补一下不然下面的内容会比较吃力。 VS创建CMake工程时默认会创建一个CMakePresets.json文件。 例如本地计算机的x64-Debug工程属性由下面的json片段来描述。这个片段把CMake要用的c/c编译器进行了定义cl.exe。 {name: windows-base,hidden: true,generator: Ninja,binaryDir: ${sourceDir}/out/build/${presetName},installDir: ${sourceDir}/out/install/${presetName},cacheVariables: {CMAKE_C_COMPILER: cl.exe,CMAKE_CXX_COMPILER: cl.exe},condition: {type: equals,lhs: ${hostSystemName},rhs: Windows}},{name: x64-debug,displayName: x64 Debug,inherits: windows-base,architecture: {value: x64,strategy: external},cacheVariables: {CMAKE_BUILD_TYPE: Debug}} 然而这个json文件对于linux和mac的描述则不完整以下为linux-debug工程属性其中对c/c编译器没有定义。 {name: linux-debug,displayName: Linux Debug,generator: Ninja,binaryDir: ${sourceDir}/out/build/${presetName},installDir: ${sourceDir}/out/install/${presetName},cacheVariables: {CMAKE_BUILD_TYPE: Debug},condition: {type: equals,lhs: ${hostSystemName},rhs: Linux},vendor: {microsoft.com/VisualStudioRemoteSettings/CMake/1.0: {sourceDir: $env{HOME}/.vs/$ms{projectDirName}}} } 这就是把本地计算机工程改为远程Linux工程时vs报错的原因了。猜想vs的开发工程师在做这个功能时只针对本地window环境编写了完整的CMakePresets.json而针对其他平台只写了一段参考其实现并不完整需要用户手动配置缺失部分。例如配置Linux系统中CMake用到的c/c编译器Ninjia路径等。可以参考一下官方的文档 使用 CMake 预设进行配置和生成 | Microsoft Learn 三、问题解决 有了第二部分的分析解决问题的思路就有了把相关的配置补充完整。 首先补充c/c编译器linux机器上已经装了gcc/g直接填好就可以了。 如果没有安装需要在linux安装一下 apt install gcc g {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: gcc,CMAKE_CXX_COMPILER: g} 改了以后这两个报错没有了。 4、CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage     5、CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage   上面的错误显示查询ninja版本号时失败了。装一个ninja sudo apt install ninja-build 安装完成后回到vs中按ctrlS保存工程时会自动再次构建工程发现构建成功。 最后虽然构建成功了实际上有个错误最后还是没有解决即使它不影响工程的构建结果。 多次定义了变量 CMAKE_INSTALL_PREFIX 从构建日志看出CMAKE_INSTALL_PREFIX确实定义了两次。感觉这就是vs的一个bug有博友知道如何解决请评论告知十分感谢。 /usr/bin/cmake -G Ninja   -DCMAKE_BUILD_TYPE:STRINGDebug -DCMAKE_C_COMPILER:STRINGgcc -DCMAKE_CXX_COMPILER:STRINGg -DCMAKE_INSTALL_PREFIX:PATH/root/.vs/CMakeProject1/out/install/linux-debug   -DCMAKE_INSTALL_PREFIX:PATH/root/.vs/CMakeProject1/out/install/linux-debug  /root/.vs/CMakeProject1/CMakeLists.txt
http://www.w-s-a.com/news/222321/

相关文章:

  • 网站开发外包计入什么科目怎样申请网站空间
  • 西安建设局网站小孩把巴塘网站建设
  • 做网站 客户一直要求改郑州做优惠券网站的公司
  • 专门做特卖的网站是什么东北石油大学秦皇岛吧
  • 网站建设需要云主机吗wordpress 下载数据表插件
  • 集团网站建设哪个好石龙镇仿做网站
  • 网站建设费税率是多少项目备案信息查询
  • 网站开发php有哪些权威发布型舆情回应
  • 凡科建站有哪些弊端百度手机怎么刷排名多少钱
  • 南山网站公司在招聘网站做销售工资高吗
  • 百度联盟怎么加入赚钱合肥seo按天收费
  • 网站建设与用户需求分析加盟店排行榜加盟项目排行榜
  • 柳州市诚信体系建设网站wordpress建手机网站吗
  • 网站策划书是什么水产公司网站源码
  • 温州做网站多少钱网站服务器机房
  • 网站公司设计 网站首页什么网站专门做图片
  • 书店网站怎么做网站点击快速排名
  • 太阳镜商城网站建设公司做网站
  • 如何制作个人作品网站宣传片拍摄合同
  • 关于微网站策划ppt怎么做做插画的网站
  • 做设计网上揽活哪个网站最好中企动力算大厂吗
  • 电子商务网站开发常用工具牡丹江吧
  • 四川成都网站制作公司wordpress 获取某个分类的文章
  • wordpress 编辑器推动门户网站建设不断优化升级
  • 做游戏网站的前景温江区建设局网站
  • 济南做微网站推广做网站seo优化总结
  • 巢湖网站建设电话长沙大型互联网公司
  • wordpress站群主机海南人
  • 云南网站建设维护商业网站建设教程
  • 云南省滇中引水工程建设管理局网站jsp个人网站设计