Description of problem: The package ngspice does not include /usr/lib64/libngspice.so http://ngspice.sourceforge.net/shared.html Version-Release number of selected component (if applicable): 0.26-8.fc24 How reproducible: Always Steps to Reproduce: 1. $ find /usr/lib64 -name "*ngspice*" Actual results: No .so is found. Expected results: /usr/lib64/libngspice.so (or similar) Additional info: There is a ngspice folder in /usr/lib64 but no so file can be found in there.
Currently we just does not build shared library.
Do you plan to? Adding it (or not) is kind of a chicken/egg problem.
The main problem here is that building with --with-ngshared compiles a bit different source files: - i.e. --with-ngshared defined "SHARED_MODULE" macro and the sources differs between with / without this macro and both --with-ngshared and --without-ngshared (current) option creates some binaries with the same names but their contents a bit differ. So currently there is file conflicts between -with-ngshared ones and --without-ngshared (current) ones, especially; /usr/lib64/ngspice/*.cm So without changing directory hierarchy, we cannot build both.
*** Bug 1492481 has been marked as a duplicate of this bug. ***
Hello Mamoru I think you should be able to either build the lib with the normal ngspice package or make a lib package too. I just built ngspice 28 and the cm files are not installed with the --with-ngshared option enabled, so only included in the --without-ngshared build configuration. Meaning with the latest ngspice release there does not seem to be any file conflicts.
It is a known bug that the code model files are different between builds with and without the shared library. A fix has been pushed upstream after the release of ngspice 28. [1] I would like to suggest to cherrypick this fix, so that the shared library can be enabled in the Fedora ngspice 28 package without any side effects. [1] https://sourceforge.net/p/ngspice/ngspice/ci/fe8126865afea1553443f131ad28adead8071ab8/
It would be nice reconsidering to provide libngspice.so as this would be useful for the newly released kicad[1] which can provide integration[2] with the spice simulator when the shared library is available. [1] https://src.fedoraproject.org/rpms/kicad/blob/master/f/kicad.spec#_115 [2] https://www.youtube.com/watch?v=2WDPzW6DGzQ
(In reply to Damian Wrobel from comment #7) Pull request for ngspice which provides shared library and -devel subpackage [1]. It's been tested successfully with the kicad compiled using -DKICAD_SPICE=ON [4]. [3] https://src.fedoraproject.org/rpms/ngspice/pull-request/1 [4] https://copr.fedorainfracloud.org/coprs/dwrobel/kicad/build/785261/
(In reply to Marcus from comment #6) > It is a known bug that the code model files are different between builds > with and without the shared library. A fix has been pushed upstream after > the release of ngspice 28. [1] Thank you for information, however still the issue on my comment 3 is in effect, i.e. with --with-ngshared , .cm files are compiled with -DSHARED_MODULE=1 , while --without-ngshared, .cm files are compiled with -USHARED_MODULE, so .cm files' behavior is (perhaps) different between --with{,out}-ngshared . You can check the difference in generated config.h.] - And actually --wht-ngshared builds .cm files as opposed to comment 5 . So still I cannot figure out how to install .cm files "correctly" when compiled with --with-ngshared. > > I would like to suggest to cherrypick this fix, so that the shared library > can be enabled in the Fedora ngspice 28 package without any side effects. > > [1] > https://sourceforge.net/p/ngspice/ngspice/ci/ > fe8126865afea1553443f131ad28adead8071ab8/ Again closing (as CANTFIX)
So currently it is unsure (for me) if the upstream are going to support simultaneous installation of --with-ngshared and --without-ngshared .
(Just I want to repeat here: I am not sure if the upstream **supports** imultaneous installation of --with-ngshared and --without-ngshared)
>So still I cannot figure out how to install .cm files "correctly" when compiled with --with-ngshared. Have you looked at the PR[3] and cherry-pick from master[5] it includes? Based on that: "Thus there is no longer any difference between code models made during compiling shared ngspice or standard ngspice." [3] https://src.fedoraproject.org/rpms/ngspice/pull-request/1 [5] https://src.fedoraproject.org/rpms/ngspice/pull-request/1#_1,6
(In reply to Damian Wrobel from comment #12) > >So still I cannot figure out how to install .cm files "correctly" when compiled with --with-ngshared. > > Have you looked at the PR[3] and cherry-pick from master[5] it includes? > Based on that: > > "Thus there is no longer any difference between code models made during > compiling shared ngspice or standard ngspice." > > [3] https://src.fedoraproject.org/rpms/ngspice/pull-request/1 > [5] https://src.fedoraproject.org/rpms/ngspice/pull-request/1#_1,6 Again, as I said in comment 9 , there is not only that difference mentioned in the PR, but there is also difference between -DSHARED_MODULE=1 and not.
Once waiting for reply from the upstream...
ngspice-29-2.fc29 has been submitted as an update to Fedora 29. https://bodhi.fedoraproject.org/updates/FEDORA-2019-cfba6d272c
ngspice-29-2.fc28 has been submitted as an update to Fedora 28. https://bodhi.fedoraproject.org/updates/FEDORA-2019-513a22cc85
ngspice-29-2.fc28 has been pushed to the Fedora 28 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-513a22cc85
ngspice-29-2.fc29 has been pushed to the Fedora 29 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-cfba6d272c
ngspice-30-1.fc29 has been submitted as an update to Fedora 29. https://bodhi.fedoraproject.org/updates/FEDORA-2019-cfba6d272c
ngspice-30-1.fc28 has been submitted as an update to Fedora 28. https://bodhi.fedoraproject.org/updates/FEDORA-2019-513a22cc85
ngspice-30-1.fc28 has been pushed to the Fedora 28 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-513a22cc85
ngspice-30-1.fc29 has been pushed to the Fedora 29 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-cfba6d272c
ngspice-30-1.fc28 has been pushed to the Fedora 28 stable repository. If problems still persist, please make note of it in this bug report.
ngspice-30-1.fc29 has been pushed to the Fedora 29 stable repository. If problems still persist, please make note of it in this bug report.