GDSFactory环境配置(PyCharm+Git+KLayout)

1、安装 PyCharm 和 KLayout

安装 PyCharm(官网社区版即可)和 KLayout(官网最新版),这两款软件均开源,安装操作简单,这里不再赘述。(注意:PyCharm软件是否安装成功以能否正常运行Python代码为准,网上的视频教程很多,建议跟着视频教程进行配置)

2、安装 Git

安装 Git,去 Git 官网下载安装包,具体的安装操作可以参照下面的视频教程:

给傻子的Git教程_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1Hkr7YYEh8/?spm_id_from=333.337.search-card.all.click&vd_source=acff200eb67c909bc09a083de5b25294

重要的是一定要配置 Git 的用户名和邮箱信息,直接键盘 Win+R 进入系统终端,分别运行以下两行代码:将"runoob"替换为"你的用户名",test@runoob.com 替换为你的 GitHub 账号注册邮箱(没有 GitHub 账号就去注册一个)。

bash 复制代码
git config --global user.name "runoob"
git config --global user.email test@runoob.com

3、安装 KLayout 插件

安装 KLayout 插件,该插件是用于 PyCharm 中写代码,并在 KLayout 中实时展示。注意一定不要采用 KLayout 软件中的插件安装入口安装,会安装错误,原因就是网络问题。应该采用以下步骤进行安装:

(1)找到你的 KLayout salt 目录

电脑路径是:

bash 复制代码
C:\Users\***\KLayout\salt 

(2)下载需要的插件

在浏览器里下载(如果下面的下载链接失效,就去问 ChatGPT):

metainfo-ports ZIPhttps://github.com/gdsfactory/metainfo-ports/archive/refs/heads/main.zip

klive ZIPhttps://github.com/gdsfactory/klive/archive/refs/heads/main.zip

generic_tech ZIP(gdsfactory PDK)https://github.com/gdsfactory/gdsfactory/archive/refs/heads/main.zip

(3)将解压缩并重命名

  • 把 metainfo-ports-main 改名为 metainfo-ports
  • 把 klive-main 改名为 klive
  • 把 gdsfactory-main/gdsfactory/generic_tech/klayout 这个文件夹拷贝出来命名为 gdsfactory

最终文件目录应该长这样:

bash 复制代码
C:\Users\***\KLayout\salt\metainfo-ports 
C:\Users\***\KLayout\salt\klive 
C:\Users\***\KLayout\salt\gdsfactory

(4)验证是否安装成功

在 KLayout 的菜单栏里应该出现 gdsfactory 的菜单项。

4、配置 PyCharm

在 PyCharm 中新建一个 Python 工程,建议命名为 gdsfactory 或者你的项目名称,因为要在这个工程的虚拟环境下下载 gdsfactory 包,也就是以后写代码都要在这个工程下写。

(1)确认你在 PyCharm 里使用虚拟环境

打开 PyCharm → File → Settings → Project: xxx → Python Interpreter

看看是不是指向类似:

bash 复制代码
...\venv\Scripts\python.exe

(2)用 pip 安装 gdsfactory

在 PyCharm 的终端 (Terminal) 输入:

bash 复制代码
pip install gdsfactory

5、检验是否配置成功

将KLayout软件打开,在配置好的 PyCharm 环境下,运行以下代码:

python 复制代码
import gdsfactory as gf

c = (
    gf.Component()
)  # Create a blank component (essentially an empty GDS cell with some special features)
p1 = c.add_polygon([(-8, -6), (6, 8), (7, 17), (9, 5)], layer=(1, 0))
c.write_gds("demo.gds")  # write it to a GDS file. You can open it in klayout.
c.show()  # show it in klayout

如果PyCharm软件没有报错,KLayout软件出现下面的版图:

则说明环境配置成功。

6、出现未知报错

如果出现一些未知的报错,建议直接把报错信息复制到ChatGPT中,根据提示解决问题。

如果根据本教程进行环境配置出现问题,欢迎评论交流,笔者会尽量尽快答复。

相关推荐
知乎的哥廷根数学学派8 小时前
面向可信机械故障诊断的自适应置信度惩罚深度校准算法(Pytorch)
人工智能·pytorch·python·深度学习·算法·机器学习·矩阵
且去填词8 小时前
DeepSeek :基于 Schema 推理与自愈机制的智能 ETL
数据仓库·人工智能·python·语言模型·etl·schema·deepseek
人工干智能8 小时前
OpenAI Assistants API 中 client.beta.threads.messages.create方法,兼谈一星*和两星**解包
python·llm
jayaccc9 小时前
Git命令大全:从入门到精通
大数据·git·elasticsearch
databook9 小时前
当条形图遇上极坐标:径向与圆形条形图的视觉革命
python·数据分析·数据可视化
阿部多瑞 ABU9 小时前
`chenmo` —— 可编程元叙事引擎 V2.3+
linux·人工智能·python·ai写作
acanab9 小时前
VScode python插件
ide·vscode·python
知乎的哥廷根数学学派10 小时前
基于生成对抗U-Net混合架构的隧道衬砌缺陷地质雷达数据智能反演与成像方法(以模拟信号为例,Pytorch)
开发语言·人工智能·pytorch·python·深度学习·机器学习
WangYaolove131410 小时前
Python基于大数据的电影市场预测分析(源码+文档)
python·django·毕业设计·源码
知乎的哥廷根数学学派11 小时前
基于自适应多尺度小波核编码与注意力增强的脉冲神经网络机械故障诊断(Pytorch)
人工智能·pytorch·python·深度学习·神经网络·机器学习