当前位置: 首页 > ds >正文

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 账号就去注册一个)。

git config --global user.name "runoob"
git config --global user.email test@runoob.com

3、安装 KLayout 插件

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

(1)找到你的 KLayout salt 目录

        电脑路径是:

C:\Users\HP\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

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

C:\Users\HP\KLayout\salt\metainfo-ports 
C:\Users\HP\KLayout\salt\klive 
C:\Users\HP\KLayout\salt\gdsfactory

(4)验证是否安装成功

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

4、配置 PyCharm

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

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

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

        看看是不是指向类似:

...\venv\Scripts\python.exe

(2)用 pip 安装 gdsfactory

        在 PyCharm 的终端 (Terminal) 输入:

pip install gdsfactory

5、检验是否配置成功

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

import gdsfactory as gfc = (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中,根据提示解决问题。

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

http://www.xdnf.cn/news/18592.html

相关文章:

  • 企业级管理平台横向越权问题及防护
  • Elasticsearch高能指南
  • SYBASE ASE、Oracle、MySQL/MariaDB、SQL Server及PostgreSQL在邮件/短信发送功能上的全面横向对比报告
  • Simulink不连续模块库(Hit Crossing/PWM/Rate Limiter/Rate Limiter Dynamic)
  • 【Day01】堆与字符串处理算法详解
  • uniapp轮播 轮播图内有定位样式
  • Oracle DB 10g 升级至 11.2.0.4报错-ORA-00132
  • Python办公之Excel(openpyxl)、PPT(python-pptx)、Word(python-docx)
  • NVM-Windows 命令大全
  • 量化交易 - 上证50利用动态PE增强模型 - python
  • React 学习笔记1 组件、State
  • 线性回归学习笔记
  • JAVA-15 (2025.08.20学习记录)
  • 集成电路学习:什么是Template Matching模版匹配
  • week3-[循环嵌套]好数
  • 基于Python与Tkinter开发的微博多功能自动化助手
  • Android焦点窗口变化导致遥控键值监听失效问题分析
  • # 重磅发布 | onecode 3.0.1 Base 源码正式开源:AI赋能的企业级开发框架
  • XXL-Job REST API 工具类完全解析:简化分布式任务调度集成
  • (第二十期上)HTML 超链接标签 a
  • 【python与生活】如何从视频中提取关键帧?
  • FPGA DP1.4 With DSC解决方案
  • 【华为OD-C卷-019 对称字符串 100分(python、java、c++、js、c)】
  • Vitest 测试框架完全指南 – 极速单元测试解决方案
  • C++ 常见的排序算法详解
  • AI 产业落地:从 “实验室神话” 到 “车间烟火气” 的跨越
  • Spring Cloud Netflix学习笔记06-Zuul
  • 机器学习中的集成算法与 k 均值聚类算法概述
  • uniapp跨域怎么解决
  • Go 并发编程-channel