CLion 生成CMakeList文件和include文件不存在问题

今天导入在Clion上导入了一个其他开发环境下开发的项目,虽然能看得到代码,但是也只能看得到代码了,想要代码跳转,查看声明啥的都看不了,编写错误也不会提示,也不能编译执行。

查找原因原来是没有CmakeList,txt文件,但是代码文件那么多,我也不可能一个一个手配CmakeList,所以就网上找方法....

一.没有CmakeList文件时

找到菜单栏File中的import project导入项目就行,不能用Open File,否则就不会自动创建Cmakelist文件了。如果没有import project选项,就从菜单栏File->Setting->Appearance & Behavior->Menus &Toolbars ->选中Main menu下的File下的File Open Action->点击add after->找到import project后添加。

之后菜单栏File下就有import project了,重新导入项目文件夹,就会提示是否创建覆盖Cmakelist.txt文件,选择要include的文件,点确定就可以有已经配好的Cmakelist了。

二.有Cmakelist时.include 文件路径不存在问题

如果有如下一个文件目录

└─DEMOproject
   └─AFile.h.
   └─2nddictionary
         └─BFile.h
      └─3rddictionary
              └─CFile.h
  └─CMakeLists.txt
  └─DEMOmain.cpp
想要demomain.cpp下include 头文件Afile,BFile,Cfile怎么include?

如果想包含头文件<AFile.h>,必须在Cmakelist中添加:       include_dictionaries(.),不添加这句话想要include根目录下的文件或文件夹都不行。

如果想包含头文件<BFile.h>,必须在Cmakelist中添加          include_dictionaries(2nddictionary),如果不添加这句话,include就必须<2nddictionary/BFile.h>这样写。

同理如果想包含头文件<CFile.h>,必须在Cmakelist中添加      include_dictionaries(2nddictionary/3rddictionary),否则就要include相对路径的形式。

Cmakelist中的include_dictionaries()也就是include目录文件夹,当在代码文件中include文件时,文件会根据include_dictionaries(<目录>)的路径来配对,如果配对后路径中的文件存在则include文件成功,否则会标红。

其实,想要不这么麻烦也行:

在import Project时,选择include所有文件和文件夹,在生成的Cmakelist里再添加 include_dictionaries(.),include 文件不存在问题就不会发生了。

  • 13
    点赞
  • 44
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
下载文件CORS error是指在下载文件时出现跨域问题。解决方法可以采用以下几种途径: 1. 在后端服务器上设置CORS头部信息。可以在服务器端配置Access-Control-Allow-Origin字段,允许前端页面跨域请求。具体设置可以参考。 2. 如果是本地开发环境,可以使用本地服务器启动文件服务,如Python的http.server模块。通过在命令行中执行`python -m http.server`,可以在本地启动一个简单的HTTP服务器,并且可以避免跨域问题。具体操作可以参考。 3. 如果是在打开本地文件时出现CORS Error,可以尝试在浏览器的地址栏前加上`file://`来访问本地文件。这样可以避免跨域问题。具体操作可以参考。 综上所述,解决下载文件CORS error的方法可以通过在后端服务器设置CORS头部信息、在本地开发环境启动文件服务或在浏览器中加上`file://`来访问本地文件等方式。具体的选择可以根据实际情况和需求来决定。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [下载文件流的接口部署后提示CORS error](https://blog.csdn.net/mao0523/article/details/122476155)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [CORS Error: Cross origin requests are only supported for HTTP; XMLHttpRequest; 加载本地文件html](https://blog.csdn.net/Colin_Downey/article/details/105983602)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值