https://bugzilla.redhat.com/show_bug.cgi?id=1760617 --- Comment #23 from Qianqian Fang <fangqq@xxxxxxxxx> --- thanks for the review. the updated spec file can be found at https://raw.githubusercontent.com/fangq/fedorapkg/mmclab/mmc.spec but it does not build any more. the issue is related to how to "%octpkglibdir". I would like to know how to fix this. > Please check this---fedora review failed to install the packages. I managed to reproduce this issue using mock, see the mock log attached at the bottom. basically, the issue is that mmc/octave-mmclab has a dependency to octave-iso2mesh, but it complains libmpfr.so.4 could not be installed. I found that this .so file is part of mpfr package. I already listed mpfr-devel in octave-iso2mesh's spec file, and from the mpfr's spec, it the devel package depends on the main package, so assuming that both mpfr and mpfr-devel should have been installed for octave-iso2mesh. but somehow, they were not. can you let me know if this is a problem for iso2mesh? or I did not use mock properly? > octave-mmc has a mex file, so it should not be noarch, should it. Please > check. The files should go to %octpkglibdir instead of %octpkgdir too. I did not specify BuildArch for octave-mmclab. From the generated rpms, it seems is not noarch. the only two noarch packages are mmc-demos and mmclab-demos, can you verify if this is the case? I tried to follow the arch-specific octave template https://fedoraproject.org/wiki/Packaging:Octave#Arch_specific_Octave_spec_template and made the follow change, but rpmbuild failed, complaining that directory not found. is this the right way to add %{octpkglibdir}? I also removed %dir as the template showed, then it complains both file missing and dir missing. error: Directory not found: /home/fangq/rpmbuild/BUILDROOT/mmc-1.7.9-1.fc30.x86_64/usr/lib64/octave/packages/mmclab-1.7.9 ------------------------------------- diff --git a/mmc.spec b/mmc.spec index ca632bd..5a7c194 100644 --- a/mmc.spec +++ b/mmc.spec @@ -196,7 +196,7 @@ install -m 0755 -pt %{buildroot}%{_bindir} bin/%{name} %doc README.txt AUTHORS.txt %dir %{octpkgdir} %{octpkgdir}/*.m -%{octpkgdir}/*.mex +%dir %{octpkglibdir} %doc %{octpkgdir}/doc-cache %{octpkgdir}/packinfo ---------------------------------------- > Why is vim-common a BuildRequires? see my earlier replies. I need the "xxd" command in vim-common to preprocess the OpenCL kernel. so, building mmc requires this utility. > Do we know what versions of libraries are being bundled here? If so, please > version the Provides commands for them. the cjson I have is from 2015-12-20, which is older than v0.0.0 in the github, so I listed 0.0 in the version; the ssemath's website has a version updated in 2008, which is the one I used. Because it is not version controlled, I also listed 0.0. https://github.com/fangq/fedorapkg/commit/26960e9fc798068a49bb54e0ecdc55f6f7685083 > if SFMT is not being used, please delete it's source directory in %prep. This > is done to ensure that it does not get enabled by mistake during a rebuild > etc. done https://github.com/fangq/fedorapkg/commit/d32719a7245e3f49f445d7eaca059fff47018b06 > Cosmetic: you don't need to repeat BuildRequires in the sub-package > definitions. done https://github.com/fangq/fedorapkg/commit/c3e71ef59d37714af0a526f6e27d92807f91b117 ------------------------------------------------- fangq@localhost:/var/lib/mock/fedora-rawhide-x86_64/result$ mock -r fedora-32-x86_64 --install octave-mmclab-debuginfo-1.7.9-1.fc32.x86_64.rpm mmc-debuginfo-1.7.9-1.fc32.x86_64.rpm mmc-debugsource-1.7.9-1.fc32.x86_64.rpm mmc-demos-1.7.9-1.fc32.noarch.rpm mmclab-demos-1.7.9-1.fc32.noarch.rpm octave-mmclab-1.7.9-1.fc32.x86_64.rpm mmc-1.7.9-1.fc32.x86_64.rpm INFO: mock.py version 1.4.20 starting (python version = 3.7.5)... Start: init plugins INFO: selinux enabled Finish: init plugins INFO: Signal handler active Start: run Start: chroot init INFO: calling preinit hooks INFO: enabled root cache INFO: enabled dnf cache Start: cleaning dnf metadata Finish: cleaning dnf metadata INFO: enabled HW Info plugin Mock Version: 1.4.20 INFO: Mock Version: 1.4.20 Finish: chroot init INFO: installing package(s): octave-mmclab-debuginfo-1.7.9-1.fc32.x86_64.rpm mmc-debuginfo-1.7.9-1.fc32.x86_64.rpm mmc-debugsource-1.7.9-1.fc32.x86_64.rpm mmc-demos-1.7.9-1.fc32.noarch.rpm mmclab-demos-1.7.9-1.fc32.noarch.rpm octave-mmclab-1.7.9-1.fc32.x86_64.rpm mmc-1.7.9-1.fc32.x86_64.rpm No matches found for the following disable plugin patterns: local, spacewalk fedora 29 kB/s | 12 kB 00:00 Error: Problem 1: package mmc-1.7.9-1.fc32.x86_64 requires octave-iso2mesh, but none of the providers can be installed - conflicting requests - nothing provides libmpfr.so.4()(64bit) needed by octave-iso2mesh-1.9.1-3.fc32.x86_64 Problem 2: package octave-mmclab-1.7.9-1.fc32.x86_64 requires octave-iso2mesh, but none of the providers can be installed - conflicting requests - nothing provides libmpfr.so.4()(64bit) needed by octave-iso2mesh-1.9.1-3.fc32.x86_64 Problem 3: package mmclab-demos-1.7.9-1.fc32.noarch requires octave-iso2mesh, but none of the providers can be installed - conflicting requests - nothing provides libmpfr.so.4()(64bit) needed by octave-iso2mesh-1.9.1-3.fc32.x86_64 Problem 4: package mmc-demos-1.7.9-1.fc32.noarch requires octave-iso2mesh, but none of the providers can be installed - conflicting requests - nothing provides libmpfr.so.4()(64bit) needed by octave-iso2mesh-1.9.1-3.fc32.x86_64 (try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages) ERROR: Command failed: # /usr/bin/dnf --installroot /var/lib/mock/fedora-rawhide-x86_64/root/ --releasever 32 --setopt=deltarpm=False --allowerasing --disableplugin=local --disableplugin=spacewalk install octave-mmclab-debuginfo-1.7.9-1.fc32.x86_64.rpm mmc-debuginfo-1.7.9-1.fc32.x86_64.rpm mmc-debugsource-1.7.9-1.fc32.x86_64.rpm mmc-demos-1.7.9-1.fc32.noarch.rpm mmclab-demos-1.7.9-1.fc32.noarch.rpm octave-mmclab-1.7.9-1.fc32.x86_64.rpm mmc-1.7.9-1.fc32.x86_64.rpm --setopt=tsflags=nocontexts -- You are receiving this mail because: You are on the CC list for the bug. You are always notified about changes to this product and component _______________________________________________ package-review mailing list -- package-review@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to package-review-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/package-review@xxxxxxxxxxxxxxxxxxxxxxx