Opened 19 years ago

Closed 16 years ago

Last modified 15 years ago

#5448 closed defect (fixed)

htdig-3.1.6 configure script exits with request to install c++, -Wno-deprecated complains and exists compilation.

Reported by: itabtabai@… Owned by: simon@…
Priority: Normal Milestone:
Component: ports Version: 1.0
Keywords: Cc: blb@…
Port: htdig

Description (last modified by ryandesign (Ryan Carsten Schmidt))

I googled around and found out that CXXFLAGS=-Wno-deprecated would solve the problem of configure script exiting. However, once I try to compile the compiler compalins about -Wno-deprecated being for C++ and ObjC++ only and it exits on error. Below find tail for config.log and the output from build after the flag was set. Note that I tried to reproduce the problem one more time, I couldn't. CPPFLAGS would make configure complain about gcc, and CXX would make it complain about C++.

--->  tail output
#include <iostream.h>
configure:2142: checking for fstream.h
configure:2152: c++ -E  conftest.C >/dev/null 2>conftest.out
In file included from /usr/include/gcc/darwin/4.0/c++/backward/fstream.h:31,
                 from configure:2148:
/usr/include/gcc/darwin/4.0/c++/backward/backward_warning.h:32:2: warning: #warning This file 
includes at least one deprecated or antiquated header. Please consider using one of the 32 headers 
found in section 17.4.1.2 of the C++ standard. Examples include substituting the <X> header for the 
<X.h> header for C++ includes, or <iostream> instead of the deprecated header <iostream.h>. To 
disable this warning use -Wno-deprecated.
configure: failed program was:
#line 2147 "configure"
#include "confdefs.h"
#include <fstream.h>

--->  build output
gcc -c -O -I. -I./../include  -Wno-deprecated ../btree/bt_compare.c
cc1: warning: command line option "-Wno-deprecated" is valid for C++/ObjC++ but not for C
In file included from ../btree/bt_compare.c:54:
/usr/include/sys/types.h:139: error: two or more data types in declaration specifiers
/usr/include/sys/types.h:154: error: two or more data types in declaration specifiers
/usr/include/sys/types.h:159: error: two or more data types in declaration specifiers
/usr/include/sys/types.h:192: error: two or more data types in declaration specifiers
/usr/include/sys/types.h:197: error: two or more data types in declaration specifiers
make[1]: *** [bt_compare.o] Error 1
make: *** [all] Error 1
Error: Target com.apple.build returned: shell command "cd "/usr/local/var/db/dports/build/
file._usr_local_var_db_dports_sources_rsync.rsync.opendarwin.org_dpupdate_dports_www_htdig/work/
htdig-3.1.6" && make all" returned error 2
Command output: gcc -c -O -I. -I./../include  -Wno-deprecated ../btree/bt_compare.c
cc1: warning: command line option "-Wno-deprecated" is valid for C++/ObjC++ but not for C
In file included from ../btree/bt_compare.c:54:
/usr/include/sys/types.h:139: error: two or more data types in declaration specifiers
/usr/include/sys/types.h:154: error: two or more data types in declaration specifiers
/usr/include/sys/types.h:159: error: two or more data types in declaration specifiers
/usr/include/sys/types.h:192: error: two or more data types in declaration specifiers
/usr/include/sys/types.h:197: error: two or more data types in declaration specifiers
make[1]: *** [bt_compare.o] Error 1
make: *** [all] Error 1

Warning: the following items did not execute (for htdig): com.apple.activate com.apple.build 
com.apple.destroot com.apple.archive com.apple.install

Change History (11)

comment:1 Changed 19 years ago by mww@…

Resolution: fixed
Status: newclosed

fixed (Portfile now forces htdig to compile with gcc3.3)

comment:2 Changed 18 years ago by jmpalacios (Juan Manuel Palacios)

Component: wwwports
Description: modified (diff)

comment:3 Changed 17 years ago by btjanes@…

Resolution: fixed
Status: closedreopened

I'm reopening this ticket for Leopard (10.5) users. I tried installing and forcing the compiler to be 3.3 as suggested above but for Leopard, it complains about gcc/cc 3.3 not being able to create executables. The default for Leopard is gcc/cc 4.0 and the XCode tools need it to create executables. Here is what I get when I try to install htdig as-is:

--->  Fetching htdig
--->  Verifying checksum(s) for htdig
--->  Extracting htdig
--->  Applying patches to htdig
--->  Configuring htdig
Error: Target org.macports.configure returned: configure failure: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_www_htdig/work/htdig-3.1.6" && ./configure --prefix=/opt/local --with-cgi-bin-dir=/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_www_htdig/work/destroot/Library/WebServer/CGI-Executables " returned error 1
Command output: checking for tar... tar
checking for acroread... /usr/local/bin/acroread
checking for sendmail... /usr/sbin/sendmail
checking how to run the C preprocessor... /usr/bin/cpp-4.0
checking for AIX... no
checking for socket in -lsocket... no
checking for t_accept in -lnsl... no
checking for deflate in -lz... yes
checking for ANSI C header files... yes
checking whether time.h and sys/time.h may both be included... yes
checking how to run the C++ preprocessor... /usr/bin/g++-4.0 -E
checking for fcntl.h... yes
checking for limits.h... yes
checking for malloc.h... no
checking for sys/file.h... yes
checking for sys/ioctl.h... yes
checking for sys/time.h... yes
checking for unistd.h... yes
checking for getopt.h... yes
checking for strings.h... yes
checking for zlib.h... yes
checking for alloca.h... yes
checking for sys/select.h... yes
checking for wait.h... no
checking for sys/wait.h... yes
checking for malloc.h... (cached) no
checking for ostream.h... no
checking for iostream.h... no
checking for fstream.h... no
configure: error: To compile ht://Dig, you will need a C++ library. Try installing libstdc++.

Error: Status 1 encountered during processing.

comment:4 Changed 17 years ago by jmroot (Joshua Root)

Cc: simon@… added
Milestone: Port Bugs

Cc maintainer.

comment:5 Changed 17 years ago by raimue (Rainer Müller)

There is no gcc-3.3 in Xcode 3 by default.

ostream.h, iostream.h and fstream.h sounds like very old software which should be fixed upstream. These headers are only available in the backward subdirectory of c++ (/usr/include/c++/4.0.0/backward). C++ headers don't end in .h any more for a long time.

comment:6 Changed 16 years ago by dbevans (David B. Evans)

Cc: simon@… removed
Owner: changed from macports-tickets@… to simon@…
Port: htdig added
Status: reopenednew

comment:7 Changed 16 years ago by ryandesign (Ryan Carsten Schmidt)

Description: modified (diff)
Summary: htdig-3.1.6 configure script exits with request to install c++, -Wno-depricated complains and exists compilation.htdig-3.1.6 configure script exits with request to install c++, -Wno-deprecated complains and exists compilation.

comment:8 Changed 16 years ago by blb@…

Cc: blb@… added

Since gcc-3.3 isn't available on Intel-based Macs and htdig appears to have been orhpaned (last update was 2002 for stable version and 2004 for beta), I vote we drop this port. And objections?

comment:9 Changed 16 years ago by blb@…

Resolution: fixed
Status: newclosed

Removed in r47845, no complaints from the -users post or here.

comment:10 Changed 16 years ago by (none)

Milestone: Port Bugs

Milestone Port Bugs deleted

comment:11 Changed 15 years ago by Themanwithoutaplan

Hi, no need to reopen this ticket but it might be interesting to note that Ht 3.2.0b6 does configure fine on OS X 10.6. However, it will not build

In file included from Display.cc:30:
Collection.h:39: error: extra qualification ‘Collection::’ on member ‘Open’
Collection.h:41: error: extra qualification ‘Collection::’ on member ‘Close’
Display.cc: In member function ‘void Display::setVariables(int, List*)’:
Display.cc:488: warning: deprecated conversion from string constant to ‘char*’
Display.cc:565: warning: deprecated conversion from string constant to ‘char*’
Display.cc: In member function ‘void Display::createURL(String&, int)’:
Display.cc:786: warning: deprecated conversion from string constant to ‘char*’
Display.cc:787: warning: deprecated conversion from string constant to ‘char*’
Display.cc:788: warning: deprecated conversion from string constant to ‘char*’
Display.cc:789: warning: deprecated conversion from string constant to ‘char*’
Display.cc:812: warning: deprecated conversion from string constant to ‘char*’
Display.cc:813: warning: deprecated conversion from string constant to ‘char*’
Display.cc:814: warning: deprecated conversion from string constant to ‘char*’
Display.cc:815: warning: deprecated conversion from string constant to ‘char*’
Display.cc:816: warning: deprecated conversion from string constant to ‘char*’
Display.cc:817: warning: deprecated conversion from string constant to ‘char*’
Display.cc:818: warning: deprecated conversion from string constant to ‘char*’
Display.cc:819: warning: deprecated conversion from string constant to ‘char*’
Display.cc:820: warning: deprecated conversion from string constant to ‘char*’
Display.cc:821: warning: deprecated conversion from string constant to ‘char*’
Display.cc:822: warning: deprecated conversion from string constant to ‘char*’
Display.cc:823: warning: deprecated conversion from string constant to ‘char*’
Display.cc:824: warning: deprecated conversion from string constant to ‘char*’
Display.cc:825: warning: deprecated conversion from string constant to ‘char*’
Display.cc:826: warning: deprecated conversion from string constant to ‘char*’
Display.cc:827: warning: deprecated conversion from string constant to ‘char*’
Display.cc:828: warning: deprecated conversion from string constant to ‘char*’
Display.cc:829: warning: deprecated conversion from string constant to ‘char*’
Display.cc:830: warning: deprecated conversion from string constant to ‘char*’
Display.cc:831: warning: deprecated conversion from string constant to ‘char*’
Display.cc:832: warning: deprecated conversion from string constant to ‘char*’
Display.cc:833: warning: deprecated conversion from string constant to ‘char*’
Display.cc:834: warning: deprecated conversion from string constant to ‘char*’
Display.cc:835: warning: deprecated conversion from string constant to ‘char*’
Display.cc: In member function ‘List* Display::buildMatchList()’:
Display.cc:1229: warning: left shift count >= width of type
Display.cc: In member function ‘void Display::logSearch(int, List*)’:
Display.cc:1937: warning: deprecated conversion from string constant to ‘char*’
Display.cc:1940: warning: deprecated conversion from string constant to ‘char*’
Display.cc:1948: warning: deprecated conversion from string constant to ‘char*’
Display.cc:1948: warning: deprecated conversion from string constant to ‘char*’
Display.cc:1950: warning: deprecated conversion from string constant to ‘char*’
Display.cc:1950: warning: deprecated conversion from string constant to ‘char*’
make[1]: *** [Display.o] Error 1

Any ideas as to whether this can be easily worked around?

Note: See TracTickets for help on using tickets.