求解 MAC 下 C++单文件编译最优方式
以前是用 WINDOWS 的,里面的 dev 和 codeblocks 写一些单个文件的 C / C++算法很舒服 后来换了 MBP,一直都用着新建工程。现在突然想刷刷 OJ,每个题目都建一个工程感觉很麻烦 请问:有没有丝滑柔顺的解决方法。
目前尝试的方法有:xcode ,clion ,sublime 3 最接近但是不能输入。还有不会 VIM,搞不来 VIM
以前是用 WINDOWS 的,里面的 dev 和 codeblocks 写一些单个文件的 C / C++算法很舒服 后来换了 MBP,一直都用着新建工程。现在突然想刷刷 OJ,每个题目都建一个工程感觉很麻烦 请问:有没有丝滑柔顺的解决方法。
目前尝试的方法有:xcode ,clion ,sublime 3 最接近但是不能输入。还有不会 VIM,搞不来 VIM
|
xvimerJul 10, 2017
1
CodeRunner
|
|
takeoffyoungJul 10, 2017
2
MS Visual Code, control+` 呼出 terminal
|
|
ben2exJul 10, 2017
3
Visual Studio Code,配置 task.json,见 https://go.microsoft.com/fwlink/?LinkId=733558
|
|
5
@takeoffyoung 然后手动编译链接吗
|
|
tyfulcrumJul 10, 2017 via iPhone
7
cc filename
或者 c++ filename ./a.out |
|
U7Q5tLAex2FI0o0gJul 10, 2017
10
gcc test.c -o test
./test |
|
TunarJul 10, 2017 via Android
11
楼上才是正解😒身边一堆安个 xcode 只为 c 语言刷 oj,,
|
|
skadiJul 10, 2017 via Android
13
vscode
|
|
earther01Jul 10, 2017 via iPhone
15
sublime 可以整合编译器的,不过我一般都是直接 g++
|
|
UnisandKJul 10, 2017
16
CodeRunner,谁用谁知道
荔枝卖 79,比官网还便宜不少了 |
|
deepjiaJul 10, 2017
17
直接 c++/g++ filename 还不够简单么?
不知道为什么你会觉得是奇技淫巧,不指定输出的文件名,自然就用默认文件名 a.out 了啊…… |
|
18
CodeRunner 试用中 ,感觉要上天
|
|
takeoffyoungJul 10, 2017
19
@zealerzxx 你如果愿意,还可以自己撸个插件,填好输入输出,一键运行还能比对样例是否通过。
|
|
kAzecJul 10, 2017
20
用 make 命令也行。比如 test.cpp:
``` make test ./test ``` 不需要写 Makefile,配合 st3 或 atom 的 build system 可以做到 CMD+R 一键编译运行。 |
|
clavichord93Jul 11, 2017
21
@zealerzxx 6 楼和 7 楼说的是一回事啊,这算什么奇技淫巧。。。而且你作为一个计算机从业者(计算机专业在读生),开个终端输条命令麻烦吗?
|
|
kingcosJul 11, 2017
22
要是楼上的都觉得麻烦,CB 有 Mac 版吧。。
|
|
yangffJul 11, 2017
23
谁告诉你 sublime 不能输入的了……
LZ 可能读了个假的计算机科学…… |
|
hackproJul 11, 2017
24
alias cpp='clang++ -std=c++11 -stdlib=libc++ -Weverything'
cpp xxx.cpp |
|
MCVectorJul 11, 2017 via Android
25
make {source without extension}
|
|
porratJul 11, 2017 via iPhone
27
GenericMakefile
|
|
messyideaJul 11, 2017 via Android
28
geany 应该是正解
|
|
vingzJul 11, 2017 via Android
29
涨姿势了,正需要,vs 原来可以打开 terminal
|
|
fyibmsdJul 11, 2017
30
#/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 |
|
QAPTEAWHJul 11, 2017 via iPhone
31
一个工程,然后 git branch
|
|
elgoogelgoogJul 11, 2017
32
@Tunar 哈哈,+1
然而直接 sumlime 来写更方便 |
|
missdeerJul 11, 2017
33
都说是 mac 了,上面怎么还在 gcc !
正确姿势不应该是`clang -o test main.cpp`么! |
|
UnknownRJul 11, 2017
34
gcc 或者 g++吧,你用 homebrew 安装个就行,直接在 sublime text 或者 vs code 里写好,然后调成 terminal,再编译就行,单个文件而已,足够了,没必要去装个超大的 ide
|
|
U7Q5tLAex2FI0o0gJul 11, 2017
35
@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 |
|
eqingJul 11, 2017
36
gcc
|
|
haogefeifeiJul 11, 2017
38
用 cc 命令编译就是了。。。。
|
|
huoruJul 11, 2017
40
@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) |
|
initJul 11, 2017
41
直接 gcc
|
|
aristotllJul 11, 2017
42
楼上说的对
gcc --version Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1 Apple LLVM version 8.0.0 (clang-800.0.42.1) Target: x86_64-apple-darwin16.6.0 Thread model: posix InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin |
|
everettjfJul 12, 2017
43
Visual Studio Code
|