On Apr 29, 2018, at 20:23, Helmut K. C. Tessarek wrote: > On 2018-04-29 07:23, Joshua Root wrote: >> Were dependencies declared on the ports providing those libraries? If >> not, trace mode was just doing its job. > > $ sudo port build -vst fontforge > ---> Computing dependencies for fontforge > ---> Fetching distfiles for fontforge > ---> Verifying checksums for fontforge > ---> Extracting fontforge > ---> Applying patches to fontforge > ---> Configuring fontforge > Error: Failed to configure fontforge, consult > /opt/local/var/macports/build/_Users_kct_data_work_ports_graphics_fontforge/fontforge/work/fontforge-2.0.20170731/config.log > Warning: The following existing files were hidden from the build system > by trace mode: > /opt/local/bin/pkg-config > /opt/local/bin/potrace > /opt/local/bin/update-desktop-database > /opt/local/bin/wget > /var/db/timezone/zoneinfo/America/Toronto > Error: Failed to configure fontforge: configure failure: command > execution failed > Error: See > /opt/local/var/macports/logs/_Users_kct_data_work_ports_graphics_fontforge/fontforge/main.log > for details. > Error: Follow https://guide.macports.org/#project.tickets to report a bug. > Error: Processing of port fontforge failed > > In the config.log I can see this: > > configure:20386: checking for zlib.h > configure:20386: result: yes > configure:20404: checking for GLIB > configure:20472: result: no > configure:20474: error: in > `/opt/local/var/macports/build/_Users_kct_data_work_ports_graphics_fontforge/fontforge/work/fontforge-2.0.20170731': > configure:20476: error: The pkg-config script could not be found or is > too old. Make sure it > is in your PATH or set the PKG_CONFIG environment variable to the full > path to pkg-config. > > Alternatively, you may set the environment variables GLIB_CFLAGS > and GLIB_LIBS to avoid the need to call pkg-config. > See the pkg-config man page for more details. > > To get pkg-config, see <http://pkg-config.freedesktop.org/>. > See `config.log' for more details > > Hmm, so the trace mode hides /opt/local/bin/pkg-config, but then > complains that pkg-config is too old. > > What? Really? Hmmm. Double Hmmm.
Nothing hmm. The port doesn't declare a dependency on pkgconfig, therefore trace mode hides the pkg-config executable from the build system. The build system needs pkg-config however, so it errors. Add a dependency on pkgconfig, and anything else it needs. This is one of the primary purposes of trace mode: to help you identify dependencies you've forgotten to add. > Btw, glib is in /opt/local/lib: > > $ ls *glib* > libglib-2.0.0.dylib libglib-2.0.a libglib-2.0.dylib I'm sure it is. But the build probably needs pkg-config to find it there.