wrcad / xictools

XicTools: Xic graphical editor, WRspice circuit simulator, and accessories. for electronic design.
http://wrcad.com
138 stars 40 forks source link

Building without GUI #18

Open risc26z opened 5 months ago

risc26z commented 5 months ago

Hello, I'm wondering whether it's possible to build WRSpice without a GUI? I realise that the GTK, etc, libraries are required per the build instructions. However, I noticed that there is an ASCII plot facility in the source code, and wondered whether it might be feasible? I'm interested in doing some optimisation on a SPICE engine, and I'd much prefer to work on C++ code without pulling in vast dependencies. Thanks, Jacob

wrcad commented 5 months ago

Jacob,

I don’t think that this is possible in the present build structure, but it is certainly feasible to make this an option. WRspice can run without the GUI graphics (-dnone command line option), so it should not be difficult to make this mode a target. I’ll look at this and perhaps make this available in the upcoming big devel merge that will bring into master most of a years work in porting to QT. If not before the merge, soon thereafter. This is a very worthwhile idea, thanks.

Regards, Steve

On Jan 31, 2024, at 8:33 AM, risc26z @.***> wrote:

Hello, I'm wondering whether it's possible to build WRSpice without a GUI? I realise that the GTK, etc, libraries are required per the build instructions. However, I noticed that there is an ASCII plot facility in the source code, and wondered whether it might be feasible? I'm interested in doing some optimisation on a SPICE engine, and I'd much prefer to work on C++ code without pulling in vast dependencies. Thanks, Jacob

— Reply to this email directly, view it on GitHub https://github.com/wrcad/xictools/issues/18, or unsubscribe https://github.com/notifications/unsubscribe-auth/AEZ4PVAMURFWOCQ3WT6T2H3YRJW45AVCNFSM6AAAAABCTL5RACVHI2DSMVQWIX3LMV43ASLTON2WKOZSGEYTANJQGI2TQNI. You are receiving this because you are subscribed to this thread.

risc26z commented 5 months ago

Thanks Steve, I'll look forward to that. I did have a look at the build system, but felt it was best to ask someone who has already worked with it. I'm more familiar with CMake.

BTW, I've got to express my admiration for you having put in the huge effort to port the code to C++. (I'm familiar enough with the SPICE code to get nightmares, so I do appreciate the scale :-)) Best wishes, Jacob

risc26z commented 5 months ago

One more suggestion: if you'd be willing to do so, it'd be great to split out at least wrspice and its unavoidable dependencies into separate git submodules. I'm currently experimenting to see what those dependencies actually are, if one is willing to sacrifice the help and all plot-related commands. (This is all in a messy cmake project full of ugly bodges in order to try to get it to at least build.)

wrcad commented 5 months ago

The tree now builds without a GUI toolkit specified. The parts of WRspice and Xic that are not GUI-dependent should work, but I haven't done much checking so far.

kpobrien commented 5 months ago

Hi Steve, thanks for making this change! I've tested out WRspice compiled without a GUI and it works well. I'm trying to get the no GUI XicTools packaged for Julia and they prefer to package releases not commits, so I was wondering if you could tag a new release that includes this feature. Thanks for considering this request. Regards, Kevin