[Bug 558061] Review Request: levmar - Levenberg-Marquardt nonlinear least squares optimization

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Please do not reply directly to this email. All additional
comments should be made in the comments box of this bug.


https://bugzilla.redhat.com/show_bug.cgi?id=558061

--- Comment #12 from Jussi Lehtola <jussi.lehtola@xxxxxx> 2010-01-28 14:28:48 EST ---
rpmlint output:
levmar.x86_64: W: shared-lib-calls-exit /usr/lib64/liblevmar.so.2.2
exit@xxxxxxxxxxx
levmar-devel.x86_64: W: no-documentation
4 packages and 0 specfiles checked; 0 errors, 2 warnings.

These are OK. However, by installing the library and running rpmlint on it I
get


levmar.x86_64: W: shared-lib-calls-exit /usr/lib64/liblevmar.so.2.2
exit@xxxxxxxxxxx
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 spotf2_
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 sqrt
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 spotrs_
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 sgeqrf_
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 dgemm_
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 dgeqp3_
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 ssytrs_
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 sqrtf
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 dtrtrs_
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 sgeqp3_
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 dpotf2_
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 dtrtri_
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 dgetrf_
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 sgesvd_
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 ssytrf_
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 sgemm_
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 sgetrs_
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 dorgqr_
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 spotrf_
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 sgetrf_
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 dpotrf_
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 dsytrf_
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 dsytrs_
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 dgeqrf_
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 pow
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 strtrs_
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 dpotrs_
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 strtri_
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 sorgqr_
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 dgesvd_
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 log10
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 dgetrs_
levmar.x86_64: W: undefined-non-weak-symbol /usr/lib64/liblevmar.so.2.2 log10f
1 packages and 0 specfiles checked; 0 errors, 34 warnings.

so it actually seems that -lm -llapack is missing from the library link
command.

As the library itself uses LAPACK, I recommend that you change
 BuildRequires: lapack-devel
to
 BuildRequires: atlas-devel
the library from "-llapack" to "-L%{_libdir}/atlas -llapack" and the blas
library from "-lblas" to "-L%{_libdir}/atlas -lf77blas -latlas" since ATLAS is
a lot faster than reference BLAS and LAPACK.


MUST: The package does not yet exist in Fedora. The Review Request is not a
duplicate. OK
MUST: The spec file for the package is legible and macros are used
consistently. OK
MUST: The package must be named according to the Package Naming Guidelines. OK
MUST: The spec file name must match the base package %{name}. OK
MUST: The package must be licensed with a Fedora approved license and meet the 
Licensing Guidelines. OK
MUST: The License field in the package spec file must match the actual license.
OK
MUST: The sources used to build the package must match the upstream source, as
provided in the spec URL. OK
MUST: The package MUST successfully compile and build into binary rpms. OK
MUST: The spec file MUST handle locales properly. N/A

MUST: Optflags are used and time stamps preserved. NEEDSWORK
- Time stamp is lost in %prep phase.

MUST: Packages containing shared library files must call ldconfig. OK
MUST: A package must own all directories that it creates or require the package
that owns the directory. OK
MUST: Files only listed once in %files listings. OK
MUST: Debuginfo package is complete. OK
MUST: Permissions on files must be set properly. OK
MUST: Clean section exists. OK
MUST: Large documentation files must go in a -doc subpackage. N/A
MUST: All relevant items are included in %doc. Items in %doc do not affect
runtime of application. OK
MUST: Header files must be in a -devel package. OK
MUST: Static libraries must be in a -static package. N/A
MUST: Packages containing pkgconfig(.pc) files must 'Requires: pkgconfig'. N/A
MUST: If a package contains library files with a suffix then library files
ending in .so must go in a -devel package. OK
MUST: In the vast majority of cases, devel packages must require the base
package using a fully versioned dependency. OK
MUST: Packages does not contain any .la libtool archives. N/A
MUST: Desktop files are installed properly. N/A

MUST: No file conflicts with other packages and no general names. ~OK
- I don't know about "lmdemo", I really would name it to "levmardemo".
- Currently there doesn't seem to be any package providing /usr/bin/lmdemo.
Still, I'd contact upstream to ask for a rename in the next release.

MUST: Buildroot cleaned before install. OK
SHOULD: %{?dist} tag is used in release. OK
SHOULD: If the package does not include license text(s) as separate files from
upstream, the packager should query upstream to include it. OK
SHOULD: The package builds in mock. OK

-- 
Configure bugmail: https://bugzilla.redhat.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
_______________________________________________
package-review mailing list
package-review@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/package-review

[Index of Archives]     [Fedora Legacy]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [KDE Users]     [Fedora Tools]