Opened 16 years ago

Closed 15 years ago

#19430 closed defect (fixed)

logrotate needs deps at runtime

Reported by: andre.mueller@… Owned by: markd@…
Priority: Normal Milestone:
Component: ports Version: 1.7.1
Keywords: Cc:
Port: logrotate

Description

Hello

First thanks for all the work with macports!

As macports user I would like to submit the following enhancement request.

These days I have to deploy server MacOSX Servers Leopard and for this deployment I needed also the three small tools logrotate, webalizer, iftop. So it was obvious to build these three tools once as standalone binary packages on a dmg image on my administration system in order to avoid the installation of macports base and XCode on every single server.

On the macports guide (3.4.2. Binary Packageshttp://guide.macports.org/#using.binaries.binary-packages) I found the appropriate commands. Unfortunately with these commands, needed libs for the mentioned ports are not included with the pkg, even not with the command option "port mdmg ...", a command option somebody of the "bug"-staff mentioned to use.

So for webalizer and logrotate I had to copy over the appropriate libs manually and for iftop I had also to copy to the target systems "/opt/local/share/terminfo". May be I have missed some important information, in order all needed libs would be included in the build standalone packages - but I found nothing appropriate on the email lists etc.

Short I think, that it would be very necessary for standalone packages that all required libs and other files are build and included with the packages. Only in this way a deployment with out an installed macports base or XCode is possible.

Many thanks and with best regards,

André Müller

Attachments (1)

logrotate-3.7.1-1.dmg (96.0 KB) - added by andre.mueller@… 16 years ago.
Example : port mdmg logrotate

Download all attachments as: .zip

Change History (10)

comment:1 Changed 16 years ago by jmroot (Joshua Root)

Milestone: Port EnhancementsMacPorts Future
Priority: HighNormal

So what does happen when you run port mpkg or port mdmg? They both seem to work as expected here.

comment:2 in reply to:  1 Changed 16 years ago by andre.mueller@…

Replying to jmr@…:

So what does happen when you run port mpkg or port mdmg? They both seem to work as expected here.

Hello

Thank you for your answer. Running "port mdmg" or "port mpgk" does create the package as without the "m" prefix, but the needed lib under "/opt/local/lib/" are not included in the standalone package. For example for the port "logrotate" three libs are needed "libgd, ibpopt and a third one I do not remember". Creating the port "webalizer" with "port dmg" or "port mdmg" are different in the sense, that "port mdmg" does include "X11" files but both do lack the libs. I have also unpacked manually (with "show package content" and unpacked the Archiv.pax) the packages but they do really not include the libs. Pleas find the dmg for the port "logrotate" created with "port mdmg logrotate". Installing this "standalone" package on a system without a macports installation and by running the port, the port will abort with an error message, that it could not open the referenced lib ... under /opt/local/lib/ - that is obvious as the installation of the standalone package does neither create this directory nor put there the needed libs.

With best regards,

André

Changed 16 years ago by andre.mueller@…

Attachment: logrotate-3.7.1-1.dmg added

Example : port mdmg logrotate

comment:3 Changed 16 years ago by jmroot (Joshua Root)

Type: enhancementdefect

Hmm, you're right, the pkgs for all the dependencies aren't being built. Odd that it worked for my test case of libpng+zlib, but fails for logrotate.

comment:4 in reply to:  3 Changed 16 years ago by andre.mueller@…

Replying to jmr@…:

Hmm, you're right, the pkgs for all the dependencies aren't being built. Odd that it worked for my test case of libpng+zlib, but fails for logrotate.

Thank for your response. In the case of "webalizer" it fails also to !include! (the dependencies are build and available) the dependencies into the packages. In the case of "iftop" it fails to include "/opt/local/share/terminfo/" and in lib/ the corresponding symlink to terminfo.

Best regards,

André

comment:5 Changed 16 years ago by jmroot (Joshua Root)

Component: baseports
Milestone: MacPorts FuturePort Bugs
Owner: changed from macports-tickets@… to markd@…
Port: logrotate added
Summary: [port base] port build standalone binaries pkg / dmglogrotate needs deps at runtime

Ah, logrotate only has build-time dependencies listed. These are not meant to be included in the packages. So some of them are actually needed at runtime too. Just popt, or also gzip? Or is it also missing some dependencies entirely?

comment:6 in reply to:  5 Changed 16 years ago by andre.mueller@…

Replying to jmr@…:

Ah, logrotate only has build-time dependencies listed. These are not meant to be included in the packages. So some of them are actually needed at runtime too. Just popt, or also gzip? Or is it also missing some dependencies entirely?

Hello

I have test it again on the target system where no macports is installed by moving out all libs in /opt/local/lib and then moving in one lib after an other. Here are the results for the ports I have created as standalone packages :

iftop : needs : /opt/local/lib/terminfo (symlink to /opt/local/share/terminfo/...) /opt/local/share/terminfo/... (all files in this directory ?)

logrotate : needs : /opt/local/lib/libpopt* /opt/local/lib/libintl*

webalizer : needs : /opt/local/lib/libgd* /opt/local/lib/libpng* /opt/local/lib/libXpm* /opt/local/lib/libintl* /opt/local/lib/libX11* /opt/local/lib/libXau* /opt/local/lib/libXdmcp* /opt/local/lib/libjpeg* /opt/local/lib/libfontconfig* /opt/local/lib/libfreetype*

These are the libs which do show as missing calling iftop -?, logrotate -?, webalizer -?. Although there are more libs in the /opt/local/lib/ directory i copied manually over from the build system to the systems I wanted to install the standalone packages. On macports I have build only iftop, logrotate and webalizer, so I guess the remaining libs are also part of these three ports or at least of the X11 port. X11 was then included in the webalizer package by the command "port mdmg webalizer" as separated package but also without the libs.

I hope this helps. best regards,

André

comment:7 Changed 16 years ago by (none)

Milestone: Port Bugs

Milestone Port Bugs deleted

comment:8 Changed 15 years ago by andre.mueller@…

Hello

I build again with Macports 1.8.2-10.6-SnowLeopard on a new installation logrotate as a standalone package :

port mdmg logrotate.

Unfortunately the lib "libpopt.0.dylib" is not included again in the standalone package. I had to copy manually the lib from /opt/local/lib/libpopt* to the target system. All other libs used by logrotate were included in the standalone package.

best regards,

André

comment:9 Changed 15 years ago by markd@…

Resolution: fixed
Status: newclosed

I made popt, gettext, and gzip run dependencies in r66354. Gzip is optional, but it isn't a build dependency.

Also updated it to the latest patch level. I'm going to close this, but please reopen if there is still some problem.

Note: See TracTickets for help on using tickets.