1

我使用通常的程序在 Ubuntu 14.04.5(Linux 内核 4.4.0-53-generic)上从源代码(git)构建了 KiCad 4.0.5:

kicad_git_src$ mkdir build
kicad_git_src$ cd build
build$ cmake ../
build$ bzr whoami "Your Name <name@example.com>"
build$ make

所有通过这里,kicad编译。然后我“在树外”安装它,这意味着在标准系统位置之外(即/usr/):

build$ make install DESTDIR=/path/to/kicad_32b_4.0.5

此时,DESTDIR 的树看起来大概是这样的:

/path/to/kicad_32b_4.0.5/
└── usr
    └── local
        ├── bin
        │   ├── bitmap2component
        │   ├── _cvpcb.kiface
        │   ├── dxf2idf
        │   ├── eeschema
        │   ├── _eeschema.kiface
        │   ├── gerbview
        │   ├── _gerbview.kiface
        │   ├── idf2vrml
        │   ├── idfcyl
        │   ├── idfrect
        │   ├── kicad
        │   ├── pcb_calculator
        │   ├── _pcb_calculator.kiface
        │   ├── pcbnew
        │   ├── _pcbnew.kiface
        │   ├── pl_editor
        │   └── _pl_editor.kiface
        ├── lib
        │   └── kicad
        │       └── plugins ...
        └── share
            ├── applications
            ├── doc
            │   └── kicad
            │       └── scripts
            │           └── bom-in-python ...
            ├── icons
            │   └── hicolor
            │       ...
            ├── kicad
            │   ├── demos
            │   │   ...
            │   └── template
            ├── mime
            │   └── packages
            └── mimelnk
                └── application

所有的可执行文件似乎都在usr/local/bin;然后usr/local/lib似乎它不包含任何.so库(只有一些插件),并且usr/local/share. 所以我做了这个脚本:

#!/usr/bin/env bash

# trying to run kicad...

# the target DESTDIR of make install DESTDIR=...:
INSTD=/path/to/kicad_32b_4.0.5

cd $INSTD/usr/local/bin/
# there's only kicad/plugins in usr/local/lib, but still:
LD_LIBRARY_PATH=$INSTD/usr/local/lib:$LD_LIBRARY_PATH ./kicad

这运行,但我得到这样的东西:

kicad-4.0.5

……也就是EESchema按钮、原理图库按钮、pcbnew按钮,全都是灰色的!在旧版本的 Kicad 中,我相信我可以随时运行其中的任何一个,并在其中打开一个“空”文件,然后继续工作 - 如果我没有事先定义一个项目......请注意其他未显示为灰色的按钮(例如 GerbView)工作正常 - 我只需单击它们即可运行相应的应用程序。

所以我的问题是:

  • 为什么 pcbnew、eeschema 按钮是灰色的?由于不标准的安装,我是否可能缺少一些目录引用 - 或者 Kicad 中的工作流程发生了变化,因此您不能再从 Kicad 独立运行这些应用程序?
  • Kicad 中是否有一些命令行开关,所以我可以让它知道在哪里INSTDIR/usr/local/share,以防 Kicad 需要它,比如模板?
4

1 回答 1

2

好的,到了某个地方:如评论中所述,必须在 eeschema 等按钮未变灰并开始工作之前打开/创建一个新项目。

但是,在执行此操作并单击 eeschema 按钮后,我得到“未找到以下库:电源,设备,...”(如本文 [KiCad.info 论坛]中所示)。

事实证明,原理图和 3d 符号还有另一个仓库;通读kicad_git_src/scripts/kicad-install.shand后kicad_git_src/scripts/library-repos-install.sh,我最终这样做了:

git clone https://github.com/KiCad/kicad-library kicad-library_git
cd kicad-library_git
mkdir build
cd build
cmake ../
make # exits and doesn't do anything...
make install DESTDIR=/path/to/kicad_32b_4.0.5

这会将所有库文件复制到DESTDIR/usr/local/share/kicad,因此:

# before state:
$ ls /path/to/kicad_32b_4.0.5/usr/local/share/kicad/
demos  template

# after state
$ ls /path/to/kicad_32b_4.0.5/usr/local/share/kicad/
demos  library  modules  template

现在,当我运行 OP 运行脚本时,我的上一个项目会自动打开,我可以单击eeschema按钮,eeschema现在开始运行,不会抱怨库...

请注意,在这个版本中,脚印符号似乎也在单独的.pretty存储库中,但我还没有到那一点......

于 2016-12-07T13:27:56.500 回答