[MacPorts] #56463: htop: compiler on older systems

MacPorts noreply at macports.org
Sun Sep 6 02:16:06 UTC 2020


#56463: htop: compiler on older systems
---------------------+----------------------------
  Reporter:  iEFdev  |      Owner:  neverpanic
      Type:  defect  |     Status:  closed
  Priority:  Normal  |  Milestone:
 Component:  ports   |    Version:  2.4.4
Resolution:  fixed   |   Keywords:  lion legacy-os
      Port:  htop    |
---------------------+----------------------------

Comment (by iEFdev):

 Can we reopen this?

 -----

 Ok, I think I've found what's causing this.

 I notice today when the new 3.01 updated arrived that I got the binary
 version (ie not built from source) and it worked fine. But, when building
 from source it always fails (not just `htop` – any port that uses
 `ncurses`).

 Started to look around a bit, and noticed some of the paths set in the
 different `*_autoconf.tcl` files were programs in `/usr/local` (even if
 `/usr/local` wasn't in `PATH` during install). So I rebuilt my MacPorts
 installation (bootstrap-mp + mp), with a minimal `PATH` and I also renamed
 `/usr/local{,.bak}` during install, so it wouldn't pick up ''anything''.

 It still failed, but when renaming `/usr/local` or `/usr/local/include` it
 will build successfully.

 So, I guess something in MP is looking for headers in `/usr/local`, even
 though the port is setup to use `/opt/local` for headers and libs - and
 everything in the logs, etc looks fine.

 [[br]]

 Building with `-t` works!

 {{{
 #!bash
 $ sudo port -t build htop
 --->  Computing dependencies for htop
 --->  Fetching distfiles for htop
 --->  Verifying checksums for htop
 --->  Extracting htop
 --->  Configuring htop
 Warning: The following existing files were hidden from the build system by
 trace mode:
   /opt
   /opt/local/bin/gawk
   /opt/local/bin/gdiff
   /opt/local/bin/ggrep
   /opt/local/bin/ghostname
   /opt/local/bin/gmkdir
   /opt/local/bin/gsed
   /opt/local/bin/python3.8
   /usr/local/include/ncursesw/curses.h
 Warning: The following files inside the MacPorts prefix not installed by a
 port were accessed:
   /opt/local/bin/diff
   /opt/local/bin/grep
   /opt/local/bin/hostname
   /opt/local/bin/python
   /opt/local/bin/sed
 --->  Building htop
 Warning: The following existing file was hidden from the build system by
 trace mode:
   /opt/local/bin/gsed
 Warning: The following file inside the MacPorts prefix not installed by a
 port was accessed:
   /opt/local/bin/sed
 }}}

 It's hiding the file from the build system.

 So:

 {{{
 sudo port -vst install htop         # Works √
 sudo port install htop              # Doesn't work
 }}}


 [[br]]


 Is there any way to make port ''not'' look around for more headers?

 Or where is this done in base?

-- 
Ticket URL: <https://trac.macports.org/ticket/56463#comment:8>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list