Bug 1440904
Summary: | ngspice does not contain shared library | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | maarten <madebr> |
Component: | ngspice | Assignee: | Mamoru TASAKA <mtasaka> |
Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | unspecified | Docs Contact: | |
Priority: | unspecified | ||
Version: | rawhide | CC: | aimylios, chitlesh, dwrobel, e, fabrice.salvaire, mtasaka, oe.nick |
Target Milestone: | --- | Keywords: | Reopened, Tracking |
Target Release: | --- | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
URL: | https://sourceforge.net/p/ngspice/support-requests/34/ | ||
Whiteboard: | |||
Fixed In Version: | ngspice-30-1.fc28 ngspice-30-1.fc29 | Doc Type: | If docs needed, set a value |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2019-01-11 02:59:01 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
maarten
2017-04-10 17:45:45 UTC
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. |