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

网站更改目录做301百度网站下拉怎么做

网站更改目录做301,百度网站下拉怎么做,中企动力科技股份有限公司常州分公司,济南手机网站建设报价1 背景 随着实际项目的完善,可维护变的更加重要。在日志中保存项目的版本或是构建信息是一个非常有用的方法。 CMake提供了configure_file()命令,可以帮助开发者在构建项目时,自动生成版本或是构建信息,便于开发者在代码中直接引…

在这里插入图片描述

1 背景

随着实际项目的完善,可维护变的更加重要。在日志中保存项目的版本或是构建信息是一个非常有用的方法。
CMake提供了configure_file()命令,可以帮助开发者在构建项目时,自动生成版本或是构建信息,便于开发者在代码中直接引用。

2 configure_file()命令介绍

2.1 参数说明

configure_file()命令的完整签名如下:

configure_file(<input> <output>[NO_SOURCE_PERMISSIONS | USE_SOURCE_PERMISSIONS |FILE_PERMISSIONS <permissions>...][COPYONLY] [ESCAPE_QUOTES] [@ONLY][NEWLINE_STYLE [UNIX|DOS|WIN32|LF|CRLF]])

复制<input>文件到<output>文件,同时根据命令的参数对复制的文件内容进行替换,同时也可以修改<output>文件的权限。

<input>

输入文件的路径,相对于CMAKE_CURRENT_SOURCE_DIR的路径。输入路径必须是文件,而不是目录。

<output>

输出文件或目录的路径,相对于CMAKE_CURRENT_BINARY_DIR的路径。如果路径包含不存在的目录,则会创建这些目录。如果路径指定一个现有目录,则输出文件将放置在该目录中,文件名与输入文件相同。

NO_SOURCE_PERMISSIONS

不要将输入文件的权限转移到输出文件。复制文件的权限默认为标准的644值 (-rw-r–r–)。

USE_SOURCE_PERMISSIONS

将输入文件的权限转移到输出文件。如果未给出三个与权限相关的关键字(NO_SOURCE_PERMISSIONS、USE_SOURCE_PERMISSIONS或FILE_PERMISSIONS),这就是默认行为。USE_SOURCE_PERMISSIONS关键字主要用于使调用的预期行为更清晰。

FILE_PERMISSIONS <permissions>...

忽略输入文件的权限,并为输出文件使用指定的 <permissions>。

COPYONLY
复制文件,不替换任何变量引用或其他内容。此选项不能与NEWLINE_STYLE一起使用。

ESCAPE_QUOTES
使用反斜杠(C风格)转义任何替换的引号。

@ONLY
将变量替换限制为@VAR@形式的引用。 CMake支持@VAR@${VAR}形式的的替换。推荐使用这个参数,避免与CMake脚本中的 ${VAR}混淆。

NEWLINE_STYLE <style>
指定输出文件的换行符样式。指定UNIX或LF表示\n换行符,或指定DOS、WIN32或CRLF表示\r\n换行符。此选项不能与COPYONLY一起使用。

实际项目中使用不会那么复杂,一般只使用基础签名

configure_file(<input> <output> [@ONLY])

2.2 常见用法

<input>文件理解为模板文件,CMakeLists.txt中的变量替换模板文件中相应的变量,生成一个新的文件。
项目中的常见用法是用构建时的版本号或是git的commit id替换模板文件。调用execute_process()命令查询git的commit id,并将其保存在versin.h头文件中。

cmake_minimum_required(VERSION 3.10)
project(my_app)# 执行git命令获取短哈希值
execute_process(COMMAND git rev-parse --short HEADWORKING_DIRECTORY ${CMAKE_SOURCE_DIR}  # 指定Git仓库根目录OUTPUT_VARIABLE GIT_SHORT_COMMIT_IDOUTPUT_STRIP_TRAILING_WHITESPACE      # 去除末尾空白字符ERROR_VARIABLE GIT_ERRORRESULT_VARIABLE GIT_RESULT
)# 错误处理
if(NOT GIT_RESULT EQUAL 0)message(FATAL_ERROR "Failed to get git commit ID: ${GIT_ERROR}")
endif()configure_file(${CMAKE_CURRENT_SOURCE_DIR}/version.h.in${CMAKE_CURRENT_SOURCE_DIR}/version.h@ONLY
)add_executable(my_app main.cpp)
# 包含头文件路径
target_include_directories(my_app PRIVATE ${CMAKE_CURRENT_SOURCE_DIR})

version.h.in文件内容如下

#include <string>
// 被替换的变量(此处为GIT_SHORT_COMMIT_ID)需要与CMakeLists.txt中定义的变量一致
const std::string git_short_commit_id = "@GIT_SHORT_COMMIT_ID@";

替换后的version.h文件内容如下:

#include <string>
const std::string git_short_commit_id = "5171b09";

main.cpp文件中引用version.h文件中的git_short_commit_id变量。

#include <iostream>
#include "version.h"int main()
{std::cout << "git short commit-id: " << git_short_commit_id << std::endl;return 1;
}

3 参考资料

https://cmake.org/cmake/help/latest/command/configure_file.html

4 最后

分享CMake使用中的小技巧。如果文章对您有帮助,不妨关注、收藏和转发,感谢。


文章转载自:

http://4TudgZui.yjtnc.cn
http://NcinMTCO.yjtnc.cn
http://EIpQZp06.yjtnc.cn
http://hgsf5yuk.yjtnc.cn
http://bffLaWkh.yjtnc.cn
http://Altyl45Q.yjtnc.cn
http://P1I2K1nK.yjtnc.cn
http://ppcJuZMg.yjtnc.cn
http://ZIdxU8YI.yjtnc.cn
http://JLOv4CP0.yjtnc.cn
http://Eo4fhIdq.yjtnc.cn
http://nZLLcVTW.yjtnc.cn
http://umVXrFzB.yjtnc.cn
http://GUSoGmxt.yjtnc.cn
http://Qeb3aIRh.yjtnc.cn
http://SPmVJYkH.yjtnc.cn
http://hpUXmZc8.yjtnc.cn
http://DymuHpp1.yjtnc.cn
http://IiWKYGM2.yjtnc.cn
http://ubFoRRy1.yjtnc.cn
http://qYxjgsM7.yjtnc.cn
http://UHDoCaY0.yjtnc.cn
http://vXs60ZaB.yjtnc.cn
http://5O7OmO2Q.yjtnc.cn
http://M0r9ilY4.yjtnc.cn
http://AZBX7Sfh.yjtnc.cn
http://xWVenfLT.yjtnc.cn
http://abBJO6t3.yjtnc.cn
http://iaGAfBue.yjtnc.cn
http://ixdIWTt0.yjtnc.cn
http://www.dtcms.com/wzjs/693127.html

相关文章:

  • 中国制造网内贸站网站的推广平台
  • 天津注册公司网站自己做网站统计
  • seo整站优化外包服务广告设计公司营业执照
  • 深圳网站建设网牛天下网站数字化建设方案
  • 深圳宝安做网站公司备案要关闭网站吗
  • 做外贸网站怎么设计西安百姓网免费发布信息网
  • 有个做h手游的网站潍坊市城市建设官网站
  • 餐饮营销型网站案例东营市建设信息网官网
  • 苏州公司网站建站wordpress更改固定链接显示404
  • 网站推广营销步骤中国临沂网站优化
  • 网络平台建站响应式做的好的网站有哪些
  • 农用地转建设用地结果查询网站做微新闻怎么发视频网站
  • 建设银行网站登录不上去电商平面设计教程
  • 中冶交通建设集团网站个人主页网站html
  • 云南省文山州网站建设17一起做网店网站潮汕
  • 做网站怎么拿框架的原代码电子商务网站设计步骤
  • 网站正在建设中 英语翻译如何知道别人的网站流量来自于哪里
  • 手机网站排行榜wordpress coshtmlcache
  • 贵州省清镇市建设学校网站聊城网站建设聊城
  • 资深网站免费做网站app
  • 网站管理系统哪个好关注江苏建设厅网站
  • 做企业网站10万起步手机网页浏览器
  • 专业vi设计哪家好余姚seo智能优化
  • 网站主色调简介网站建设金手指排名霸屏
  • 福州设计网站建设厦门市app开发网站建设公司
  • 国内大中型网站建设知名公司成都做网络推广的公司有哪些
  • 苏州正规制作网站公司北京网站开发学习
  • 可以自己做图的网站嘉兴搜索引擎网站推广
  • 做网站上时需要3d预览功能培训方案
  • 网站数据库出问题做电子网站