Can the Geometry API related source files be used to create a stand alone executable?

Hi folks,
Since I am new to Klayout, I was wondering if the Geometry API related source files be used to create a stand alone executable, which can be called by a different GUI application? I think the Geometry API methods are defined in the db*.cc source files.

Thanks in advance.

--Gautam

Comments

  • edited January 2020

    Basically you can do so. Here are some comments:

    1. It's not just db...cc, there is also tl....cc you need for the basic stuff.
    2. You might want to get rid of Qt - that's possible, but needs to define a certain macro. In this case, some other libraries need to be linked for network (curl), XML (expat) and thread support (pthread).
    3. You need to comply with the GPL requirements! Specifically your code then MUST be published under GPL too. The db*cc files are not published under LGPL!
    4. The C++ API is much more complex than the published scripting API. There is no specific documentation and code reading skills are a must. If you use this API be prepared for segfaults and threading issues.
    5. If Python is your language of choice, you may also use the "klayout" Python module from PyPI. That comes without UI, is easier to use and documented and license requirements are relaxed.
Sign In or Register to comment.