如何在Ubuntu 18.04 / 20.04上源码安装KiCad并导入Altium PCB文件

原文链接:How to Build KiCad on Ubuntu 18.04 / 20.04 and Import Altium PCB Files 由Jean-Luc Aufranc撰写。

KiCad开源EDA(电子设计自动化)套件软件现在非常流行,很多新项目都用它设计的。不过,也有像Olimex这样的公司将他们的新设计全都换成KiCAD设计。 由于很多原理图和PCB布局都使用到了其他工具(例如EAGLE、Orcad Allegro或Altium PCB设计工具),所以如果能够将这些设计导入KiCad EDA里就更好了。

这个时候,我们就会想到转换器,转换器确实已经存在很长时间了。2012年的时候,我尝试过使用转换器将Beagleboard-xM OrCAD原理图转换导入KiCAD,结果很糟糕,根本无法使用,所以我就放弃了。 但是我最近看到Thomas的一条推特说:现在可以将Altium文件导入KiCAD了。所以,我准备尝试一下。

相关消息的推特截图

Thomas推特发布的视频,视频链接:https://twitter.com/Chaos_Robotic/status/1246360312133099520

现在,KiCAD发行版本暂不支持,支持这个功能的暂时只有开发版本。估计会在以后的某个KiCAD发行版本中发布(也许是KiCAD 6.0)。如果我们今天要尝试使用它,就需要先构建KiCAD。 所以,在开始导入Altium文件并查看其运行方式之前,我将首先展示如何在Ubuntu 18.04上构建KiCAD。

Ubuntu 18.04 / 20.04上构建KiCAD

KiCAD文档网站上虽然有构建软件的通用说明,但并没有完全适用于所有Linux发行版的内容。 一开始我先使用Ubuntu 18.04.3 LTS来实现这一点,之后我又使用Ubuntu 20.04再次测试。

首先,让我们获取最新的源代码:


然后,我们应该安装一些依赖项:


大家注意,由于我之前构建了其他程序,所以,某些依赖项可能已直接安装好了。 如果你们在缺少了某些依赖项的情况下,尝试自己的Ubuntu 18.04安装,而我又没在本篇文章中提及,请直接留言告知。

我们还需要获取、构建和安装NGSpice库,因为它不是Ubuntu软件包的一部分:


注意:你们可能需要修改get_libngspice_so.sh脚本后再运行,运行时使用make -j <cores>可以加快构建的速度。

现在,我们可以按以下方式配置KiCAD了:


如果你在执行cmake命令期间出错,可以尝试使用像aptitude之类的命令去查找丢失的软件包。

成功配置后执行cmake命令,你应该会看到类似以下的输出:


开始构建KiCAD:


构建完毕后,如果要你要在系统上安装它,请运行:


现在我只想尝试一下,所以我并没有安装,而是直接在build目录中运行了可执行文件:


“ KiCad 5.99”欢迎窗口
“ KiCad 5.99”欢迎窗口

运行之后,我们将会看到“KiCad 5.99”欢迎窗口,然后单击“确定”启动该程序。

导入Altium PCB布局文件到KiCad

Thomas在他的Twitter视频中曾以LimeSDR PCB布局作为案例示范。但我会尝试用BeagleBone Black Altium PCB布局代替,你可以在Github上找到(BeagleBoardBlack_RevA5_Altium.zip)。

起初,我试图启动Kicad打开该文件,但我找不到任何方法导入PCB布局,甚至切换到“编辑PCB”了都没找到。最终我才知道应该以独立模式打开pcbnew,然后在“File”里面存在一个“Import Non-KiCad Board File…”选项。

导入非KiCad PCB文件选项
导入非KiCad PCB文件选项

现在我们可以过滤Altium Designer 的“.PcbDoc”文件,并加载它。

加载Altium Designer 的“.PcbDoc”文件
加载Altium Designer 的“.PcbDoc”文件

运行后,出现了一些运行错误。 因为Altium PCB导入功能现在仍在开发阶段,所以目前运行中遇到一些错误是可以预见的,我们先忽略这些错误。

导入Altium PCB文件出错
导入Altium PCB文件出错

导入后,PCB布局的某些部分看起来还是很不错的。

导入后的效果
导入后的效果

但在其他地方,会发现好多地方出现了相互覆盖的问题。

图形错乱
图形错乱

到这里我们发现,文件确实是可以导入的,但还有更多工作要做,或者说BeagleBone Black原理图基于的是一个较老版本的Altium,而KiCad导入功能却不支持该版本。

【更新:实际上,现在导入工作已经可以像预期那样正常运行了… 这就是Altium文件显示的样子。前面遇到问题可以通过代码仓里已经提交的代码来修复。】

截图相关的推特链接:https://twitter.com/Chaos_Robotic/status/1246876049713004550?ref_src=twsrc%5Etfw%7Ctwcamp%5Etweetembed%7Ctwterm%5E1246879605602103296%7Ctwgr%5E%7Ctwcon%5Es2_&ref_url=https%3A%2F%2Fwww.cnx-software.com%2F2020%2F04%2F05%2Fhow-to-build-kicad-on-ubuntu-18-04-and-import-altium-pcb-files%2F

支持Altium原理图转换的功能即将也要推出了。对于希望导入OrCAD Allegro文件的人们,Thomas解释说,还没有针对Allegro的开源解析器,但是可以通过Allegro转 Altium文件,然后再通过Altium转 KiCad这个步骤来导入文件。 他还提到创建Allegro解析器也是有可能的,但是它们的文件格式似乎是一些自定义二进制的文件,这需要一些时间来研究。

分享这篇文章
<-- Multiplex code - to do -->
0 评论
内联反馈
查看所有评论