若是你想在jupyter notebook中交互式编写C以及C++,那么本文是为你而写^_^python
为了减小安装过程当中没必要要的烦恼,影响你美美的心情,请确保目标机器上已经安装了Anaconda,下载地址:www.anaconda.com/distributio…。如已安装,请跳过。ios
如下列举环境是通过实践检验的环境,仅供参考,并不是要求严格一致。c++
注:windows目前还未获得较好支持git
C语言和C++由不一样kernel支持,二者没有依赖关系,所以能够根据须要只安装其中一个,或两个都安装,但推荐安装C++ kernel,这是主流的kernel,由更加专业的团队维护的项目,C kernel是由我的开发者维护的小型项目,实现较为简单,但若是想快速体验在jupyter notebook运行C,也是不错的选择。若是想了解更多jupyter支持的kernel,能够参考github.com/jupyter/jup…github
cling
,或者你喜欢的其余名称,好比,若是你想在此环境安装C++和C Kernel,能够取名为c_cpp
conda create -n cling
复制代码
conda activate cling
复制代码
jupyter
和notebook
conda install jupyter notebook
复制代码
conda-forge
镜像channel安装xeus-cling
conda install xeus-cling -c conda-forge
复制代码
jupyter kernelspec list
复制代码
正确安装,会显示如下四个kernel:shell
python3
/anaconda3/envs/cling/share/jupyter/kernels/python3windows
xcpp11
/anaconda3/envs/cling/share/jupyter/kernels/xcpp11微信
xcpp14
/anaconda3/envs/cling/share/jupyter/kernels/xcpp14网站
xcpp17
/anaconda3/envs/cling/share/jupyter/kernels/xcpp17ui
jupyter notebook
复制代码
在新建下拉菜单里能够看到看到上面的四个kernel,选择C++ 11
:
将如下c++代码复制黏贴到cell中,按下shift+enter
,运行C++代码,enjoy it!:
#include <iostream>
std::cout << "Hello world!" << std::endl;
复制代码
若是你不想一步步看完,或者你和我同样是个急性子的人,想一步到位,那么可使用如下方法,一步搞定:
cling.yml
, 将如下内容复制黏贴到cling.yml
中:name: cling
channels:
- conda-forge
- https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
- defaults
dependencies:
- python=3
- pip=19.2.1
- jupyter
- notebook
- xeus-cling=0.7.1
复制代码
conda env create -f cling.yml
复制代码
没错只需两步,你已经完成和前面等效的环境建立,此方法推荐用于二次安装相同环境,本质是导出了上述环境,若是是首次安装,建议尝试一步步来的安装方式,更能加深对kernel工做机制的理解,以便之后安装其余语言的kernel。
目前官方列举的第三方提供的C kernel,支持的比较好的是jupyter-c-kernel
,在没有更好的C kernel出来前,这是一个不错选择。若是你熟悉了C++ Kernel的安装,那么安装jupyter-c-kernel
也是大同小异,所以就不一一列举步骤,而是将全部安装命令汇总在一块儿:
若是你想单独在一个新的环境安装C kernel, 可使用以下命令(可将所有复制到一个shell
脚本中,在命令行运行, 或一行行运行):
conda create -n clang
conda activate clang
conda install jupyter notebook
pip install jupyter-c-kernel
install_c_kernel
jupyter kernelspec list
jupyter notebook
复制代码
若是你不想重复安装jupyter, 能够在前面的环境里(cling
或c_cpp
),直接使用pip安装jupyter-c-kernel
:
pip install jupyter-c-kernel
复制代码
须要注意的是,不一样于xeus-cling
在使用conda安装后,就能够经过命令jupyter kernelspec list
查看到,使用pip安装jupyter-c-kernel
后,会在当前环境可执行程序路径生成一个可运行命令install_c_kernel
,须要再单独运行此命令install_c_kernel
, 固然通常都已自动添加到环境变量里,所以能够直接运行。(细心的同窗,应该注意到在上一小节也运行了这个命令)
install_c_kernel
# 查看已安装kernel
jupyter kernelspec list
复制代码
再次打开jupyter notebook
, 以下:
选择C
,新建notebook
, 将如下C代码复制到cell:
#include <stdio.h>
int main () {
printf("Hello world!\n");
return 0;
}
复制代码
运行C代码, enjoy it!:
若是你想像3.1中使用‘yml’文件一次安装两个kernel,只要在3.1的文件上基础稍加改动,以下:
name: c_cpp
channels:
- conda-forge
- https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
- defaults
dependencies:
- python=3
- pip=19.2.1
- jupyter
- notebook
- xeus-cling=0.7.1
- pip:
- jupyter-c-kernel==1.2.2
复制代码
复制黏贴到文件c_cpp.yml
, 并在c_cpp.yml
相同目录下运行以下命令:
conda env create -f c_cpp.yml
conda activate c_cpp
install_c_kernel
jupyter kernelspec list
复制代码
坚持写专栏不易,若是以为本文对你有帮助,记得点个赞。感谢支持!
微信扫描二维码 获取最新技术原创