From owner-freebsd-hackers@FreeBSD.ORG Sun Mar 14 16:55:21 2004 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1033B16A4CF; Sun, 14 Mar 2004 16:55:21 -0800 (PST) Received: from sizone.org (mortar.sizone.org [65.126.154.242]) by mx1.FreeBSD.org (Postfix) with ESMTP id D2DB943D39; Sun, 14 Mar 2004 16:55:19 -0800 (PST) (envelope-from dgilbert@daveg.ca) Received: by sizone.org (Postfix, from userid 66) id 4632430F02; Sun, 14 Mar 2004 19:55:19 -0500 (EST) Received: by canoe.dclg.ca (Postfix, from userid 101) id 434C01D2576; Sun, 14 Mar 2004 19:55:18 -0500 (EST) From: David Gilbert MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <16468.65270.123954.862565@canoe.dclg.ca> Date: Sun, 14 Mar 2004 19:55:18 -0500 To: freebsd-current@freebsd.org, freebsd-hackers@freebsd.org X-Mailer: VM 7.17 under 21.4 (patch 14) "Reasonable Discussion" XEmacs Lucid Subject: GCC include files conundrum. X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Mar 2004 00:55:21 -0000 I attempted to argue that audio/tclmidi wasn't broken... and the ports maintainer fired back with http://bento.freebsd.org/errorlogs/i386-5-latest/tclmidi-3.1.log Now... I started investigating this and found that this was all due to some differences in C++ over the years. The error on bento comes down to bento not having strstream.h. I have that file as: /usr/include/c++/3.3/backward/strstream.h /usr/include/g++/backward/strstream.h on my -CURRENT (as of a week or two ago) laptop. bento does appear to have /usr/include/c++/3.3/backward/iostream.h ... but not strstream.h. Why? I realize that my source upgrading may have left around a few old files, but I don't see a replacement strstream.h. The C++ FAQ referred to by iostream (not iostream.h) seems to imply that you should use iostream and sstream (no .h)... but including those files imposes a very different standard that this port is not ready to accept. It appears that (among other things that I havn't found yet) all 'istream' must be written 'std::istream' ... etc. So what's the solution? Dave. -- ============================================================================ |David Gilbert, Independent Contractor. | Two things can only be | |Mail: dave@daveg.ca | equal if and only if they | |http://daveg.ca | are precisely opposite. | =========================================================GLO================