求解 MAC 下 C++单文件编译最优方式

2017-07-10 21:18:33 +08:00
 zealerzxx

求解 MAC 下 C++单文件编译最优方式

以前是用 WINDOWS 的,里面的 dev 和 codeblocks 写一些单个文件的 C / C++算法很舒服 后来换了 MBP,一直都用着新建工程。现在突然想刷刷 OJ,每个题目都建一个工程感觉很麻烦 请问:有没有丝滑柔顺的解决方法。

目前尝试的方法有:xcode ,clion ,sublime 3 最接近但是不能输入。还有不会 VIM,搞不来 VIM

5379 次点击
所在节点    Apple
43 条回复
clavichord93
2017-07-11 00:46:29 +08:00
@zealerzxx 6 楼和 7 楼说的是一回事啊,这算什么奇技淫巧。。。而且你作为一个计算机从业者(计算机专业在读生),开个终端输条命令麻烦吗?
kingcos
2017-07-11 01:30:23 +08:00
要是楼上的都觉得麻烦,CB 有 Mac 版吧。。
yangff
2017-07-11 02:07:13 +08:00
谁告诉你 sublime 不能输入的了……

LZ 可能读了个假的计算机科学……
hackpro
2017-07-11 03:14:21 +08:00
alias cpp='clang++ -std=c++11 -stdlib=libc++ -Weverything'
cpp xxx.cpp
MCVector
2017-07-11 05:50:58 +08:00
make {source without extension}
tangbao
2017-07-11 06:08:22 +08:00
推荐一个不用新建工程的小型 IDE,geany.org
porrat
2017-07-11 06:33:46 +08:00
GenericMakefile
messyidea
2017-07-11 07:56:05 +08:00
geany 应该是正解
vingz
2017-07-11 08:01:15 +08:00
涨姿势了,正需要,vs 原来可以打开 terminal
fyibmsd
2017-07-11 08:11:03 +08:00
#/bin/bash
FILE=$1
CC="cc"
DIR=/tmp/exec

if [ ! -d $DIR ]; then
mkdir $DIR
fi

FILENAME=${FILE%%.*}
$CC $1 -o $DIR/$FILENAME
$DIR/$FILENAME
QAPTEAWH
2017-07-11 08:14:22 +08:00
一个工程,然后 git branch
elgoogelgoog
2017-07-11 09:23:03 +08:00
@Tunar 哈哈,+1
然而直接 sumlime 来写更方便
missdeer
2017-07-11 09:44:03 +08:00
都说是 mac 了,上面怎么还在 gcc !
正确姿势不应该是`clang -o test main.cpp`么!
UnknownR
2017-07-11 09:48:50 +08:00
gcc 或者 g++吧,你用 homebrew 安装个就行,直接在 sublime text 或者 vs code 里写好,然后调成 terminal,再编译就行,单个文件而已,足够了,没必要去装个超大的 ide
littleylv
2017-07-11 09:48:55 +08:00
@missdeer #33
mac 就不能 gcc ?

$ which gcc
/usr/bin/gcc
$ which clang
/usr/bin/clang
$ ls -la /usr/bin/gcc
-rwxr-xr-x 1 root wheel 18288 6 28 11:38 /usr/bin/gcc
$ ls -la /usr/bin/clang
-rwxr-xr-x 1 root wheel 18288 6 28 11:38 /usr/bin/clang
eqing
2017-07-11 09:50:43 +08:00
gcc
missdeer
2017-07-11 10:14:31 +08:00
@littleylv 能 gcc 啊,但 mac 上的 gcc 是个很多年前的老版本,用 clang 才是好的 practice
haogefeifei
2017-07-11 10:43:28 +08:00
用 cc 命令编译就是了。。。。
porrat
2017-07-11 11:34:12 +08:00
@missdeer mac 上的 gcc 是 clang 的别名
ChristopherWu
2017-07-11 15:49:47 +08:00
@missdeer brew 的 gcc 是最新的
$ gcc-7 -v
Using built-in specs.
COLLECT_GCC=gcc-7
COLLECT_LTO_WRAPPER=/usr/local/Cellar/gcc/7.1.0/libexec/gcc/x86_64-apple-darwin16.5.0/7.1.0/lto-wrapper
Target: x86_64-apple-darwin16.5.0
Configured with: ../configure --build=x86_64-apple-darwin16.5.0 --prefix=/usr/local/Cellar/gcc/7.1.0 --libdir=/usr/local/Cellar/gcc/7.1.0/lib/gcc/7 --enable-languages=c,c++,objc,obj-c++,fortran --program-suffix=-7 --with-gmp=/usr/local/opt/gmp --with-mpfr=/usr/local/opt/mpfr --with-mpc=/usr/local/opt/libmpc --with-isl=/usr/local/opt/isl --with-system-zlib --enable-checking=release --with-pkgversion='Homebrew GCC 7.1.0' --with-bugurl=https://github.com/Homebrew/homebrew-core/issues --disable-nls
Thread model: posix
gcc version 7.1.0 (Homebrew GCC 7.1.0)

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/374361

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX