> On Jun 24, 2017, at 15:19, Scott Hannahs via Fink-devel > <fink-devel@lists.sourceforge.net> wrote: > > I need a bit of help with a fink package. I don’t fully understand the > Shlibs: tag in a fink package. I am trying to create a package for a dynamic > library. The library builds correctly. However it just builds the library > as cryptopp.dylib in the midst of the source files. > > The discussion of the SHLIBS tag in the packaging manual seems a bit obscure > to me. > > Here is the relevant part of the package as I have it now following another > library package as a template. > > NoSourceDirectory: True > CompileScript: make dynamic > InfoTest: << > TestScript: make test || exit2 > << > DocFiles: Install.txt License.txt Readme.txt > InstallScript: make install PREFIX=%i > SplitOff: << > Package: %N-shlibs > Files: << > lib/libcryptopp.dylib > << > Shlibs: << > %p/lib/libcryptopp.dylib 5.6.0 %n (>= 5.6.5-5) > << > << > SplitOff2: << > Package: %N-dev > Depends: %N-shlibs (= %v-%r) > BuildDependsOnly: true > Files: << > include > << > << > > the package goes and build both the dylib and .a libraries, but has a problem > installing them. The deb file does not pass authentication when I run fink > in -m mode. > > When I try to build with the -km flags, I get the following: > > Validating .deb dir /sw/src/fink.build/root-libcryptopp-shlibs-5.6.5-13... > Error: Name '/sw/lib/libcryptopp.dylib' specified in Shlibs does not match > install_name > '/sw/src/fink.build/root-libcryptopp-5.6.5-13/sw/lib/libcryptopp.dylib' > Error: package contains the shared library > /sw/lib/libcryptopp.dylib > but the corresponding install_name and compatibility_version > %p/src/fink.build/root-libcryptopp-5.6.5-13/sw/lib/libcryptopp.dylib > 5.6.0 > are not listed in the Shlibs field. See the packaging manual. > > > Any help is of course very much appreciated! > Scott > > Dr. Scott Hannahs, Director of Scientific Instrumentation and Operations > Distinguished University Scholar > National High Magnetic Field Laboratory, Florida State University > http://sthmac.magnet.fsu.edu > 1800 E. Paul Dirac Dr., Tallahassee FL 32310, (850)644-0216/FAX 644-0534 > > "OS X: because making Unix user-friendly was easier than debugging > Windows." > > > -
What’s going on here is that the package's build system has encoded the install directory location /sw/src/fink.build/root-libcryptopp-5.6.5-13/ into the binary. That’s not going to work. You’ll need to use “install_name_tool -id %p/lib/libcryptopp.dylib %i/lib/libcryptopp.dylib” to change that. -- Alexander Hansen, Ph.D. Fink User Liaison ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ Fink-devel mailing list Fink-devel@lists.sourceforge.net List archive: https://sourceforge.net/p/fink/mailman/fink-devel Subscription management: https://lists.sourceforge.net/lists/listinfo/fink-devel