Mac 刷题环境配置

Mac 刷题环境配置

这篇博文主要记录自己为了更方便的在 Mac 上写算法题,主要是基于 Clion做的一些环境配置;有些操作其实在 Windows ,Linux 下也是通用的,如果看到的小伙伴也可以结合自己的情况参考。

Clion 插件

推荐一下这个插件 C/C++ Single File Execution

因为刷算法题主要是单文件执行,这个可以帮我们自动在 Cmake 里生成一个命令,进而创建一个可以独立执行的可执行文件。具体如图:

CMakeLists.txt

使用 Cmake 整理输出目录

如果我们使用了上一步,得到的可执行文件和 源代码cpp 文件是在同一目录下的,其实不太优雅:

可以在 Cmake 里面添加这几行代码:

cmake 复制代码
# 设置可执行文件的输出目录
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
# 设置调试符号文件的输出目录(可选,macOS 上会影响 .dSYM)
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG ${CMAKE_BINARY_DIR}/bin)
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE ${CMAKE_BINARY_DIR}/bin)

这样得到的目录结构大致是这样:

可以看到相关的 Debug 文件,还有可执行文件都整理到了调试目录,层次更加分明了。

万能头文件路径

刷题的小伙伴一定都对#include "bits/stdc++.h"这个头文件不陌生,主要是为了方便库的导入;

我一开始加在了

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include

这个目录下,其实一开始是可以的,但是如果Xcode进行了版本的更新,这个目录会被覆盖,进而导致原先的头文件丢失。

另外我尝试过加在/usr/local/include下,发现clion里面还是识别不到。

最终的结果是加在 /Library/Developer/CommandLineTools/usr/include目录下,这样即使系统更新也不会被覆盖。

主要总结了3点操作,以供参考。

相关推荐
_OP_CHEN2 小时前
【算法基础篇】(四十五)裴蜀定理与扩展欧几里得算法:从不定方程到数论万能钥匙
算法·蓝桥杯·数论·算法竞赛·裴蜀定理·扩展欧几里得算法·acm/icpc
我命由我123452 小时前
Photoshop - Photoshop 工具栏(58)锐化工具
学习·ui·职场和发展·求职招聘·职场发展·学习方法·photoshop
踩坑记录2 小时前
leetcode hot100 438. 找到字符串中所有字母异位词 滑动窗口 medium
leetcode·职场和发展
YuTaoShao3 小时前
【LeetCode 每日一题】1458. 两个子序列的最大点积——(解法三)状态压缩
算法·leetcode·职场和发展
橘颂TA3 小时前
【剑斩OFFER】算法的暴力美学——leetCode 946 题:验证栈序列
c++·算法·leetcode·职场和发展·结构与算法
雪域迷影3 小时前
MacOS中安装并配置Redis
redis·macos·策略模式
wen__xvn3 小时前
力扣第 484 场周赛
算法·leetcode·职场和发展
YuTaoShao3 小时前
【LeetCode 每日一题】865. 具有所有最深节点的最小子树——(解法一)自顶向下
算法·leetcode·职场和发展
2301_800895104 小时前
hh的蓝桥杯每日一题--拔河
职场和发展·蓝桥杯
CCPC不拿奖不改名4 小时前
计算机网络:电脑访问网站的完整流程详解+面试习题
开发语言·python·学习·计算机网络·面试·职场和发展