https://bugzilla.mindrot.org/show_bug.cgi?id=2034
Priority: P5
Bug ID: 2034
Assignee: unassigned-bugs at mindrot.org
Summary: make fails
Severity: critical
Classification: Unclassified
OS: FreeBSD
Reporter: kris.universe at gmail.com
Hardware: amd64
Status: NEW
Version: 6.0p1
Component: Build system
Product: Portable OpenSSH
Pristine FreeBSD 9.0-RELEASE
Just building the stack with dependencies in proper order.
For e.g.:
Zlib 1.2.7 in place
OpenSSL 1.0.1c in place
Needed to compile OpenSSH-6.0p1 outside of FreeBSD ports since the
latest available port was 5.8p2
Downloaded the latest version afresh (opens-6.0p1.tar.gz)
./configure (no issues)
make breaks at loginrec.c compilation - displayed errors below:
gcc -g -O2 -Wall -Wpointer-arith -Wuninitialized -Wsign-compare
-Wformat-security -Wno-pointer-sign -fno-strict-aliasing
-D_FORTIFY_SOURCE=2 -fno-builtin-memset -fstack-protector-all -I. -I.
-DSSHDIR=\"/usr/local/etc\"
-D_PATH_SSH_PROGRAM=\"/usr/local/bin/ssh\"
-D_PATH_SSH_ASKPASS_DEFAULT=\"/usr/local/libexec/ssh-askpass\"
-D_PATH_SFTP_SERVER=\"/usr/local/libexec/sftp-server\"
-D_PATH_SSH_KEY_SIGN=\"/usr/local/libexec/ssh-keysign\"
-D_PATH_SSH_PKCS11_HELPER=\"/usr/local/libexec/ssh-pkcs11-helper\"
-D_PATH_SSH_PIDDIR=\"/var/run\"
-D_PATH_PRIVSEP_CHROOT_DIR=\"/var/empty\" -DHAVE_CONFIG_H -c
loginrec.c
loginrec.c:633: warning: 'struct utmp' declared inside parameter list
loginrec.c:633: warning: its scope is only this definition or
declaration, which is probably not what you want
loginrec.c:645: warning: 'struct utmp' declared inside parameter list
loginrec.c: In function 'construct_utmp':
loginrec.c:651: error: dereferencing pointer to incomplete type
loginrec.c:676: warning: passing argument 2 of 'set_utmp_time' from
incompatible pointer type
loginrec.c:678: error: dereferencing pointer to incomplete type
loginrec.c:678: error: dereferencing pointer to incomplete type
loginrec.c:694: error: dereferencing pointer to incomplete type
loginrec.c:695: error: dereferencing pointer to incomplete type
loginrec.c:695: error: dereferencing pointer to incomplete type
loginrec.c: At top level:
loginrec.c:1090: warning: 'struct utmp' declared inside parameter list
loginrec.c: In function 'wtmp_write':
loginrec.c:1101: error: dereferencing pointer to incomplete type
loginrec.c:1101: error: dereferencing pointer to incomplete type
loginrec.c: In function 'wtmp_perform_login':
loginrec.c:1114: error: storage size of 'ut' isn't known
loginrec.c:1114: warning: unused variable 'ut'
loginrec.c: In function 'wtmp_perform_logout':
loginrec.c:1124: error: storage size of 'ut' isn't known
loginrec.c:1124: warning: unused variable 'ut'
loginrec.c: At top level:
loginrec.c:1165: warning: 'struct utmp' declared inside parameter list
loginrec.c: In function 'wtmp_islogin':
loginrec.c:1167: error: dereferencing pointer to incomplete type
loginrec.c:1168: error: dereferencing pointer to incomplete type
loginrec.c:1168: error: dereferencing pointer to incomplete type
loginrec.c: In function 'wtmp_get_entry':
loginrec.c:1183: error: storage size of 'ut' isn't known
loginrec.c:1202: error: invalid application of 'sizeof' to incomplete
type 'struct utmp'
loginrec.c:1237: error: invalid application of 'sizeof' to incomplete
type 'struct utmp'
loginrec.c:1183: warning: unused variable 'ut'
*** Error code 1
Stop in /var/new/openssh-6.0p1.
PLEASE HELP! Thanks!!
--
You are receiving this mail because:
You are watching the assignee of the bug.
https://bugzilla.mindrot.org/show_bug.cgi?id=2034
Darren Tucker <dtucker at zip.com.au> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |dtucker at zip.com.au
Severity|critical |normal
--- Comment #1 from Darren Tucker <dtucker at zip.com.au> ---
are you starting with a clean unpack of the tarball? You can see
things like this if, eg, you have config.h from a different platform.
I tried to reproduce on a freshly installed freebsd 9.0 VM and it
worked fine:
$ uname -sr
FreeBSD 9.0-RELEASE
$ rm -rf openssh-6.0p1
$ tar xfz openssh-6.0p1.tar.gz
$ cd openssh-6.0p1
$ ./configure && make
[lots of output]
$ ./ssh -V
OpenSSH_6.0p1, OpenSSL 0.9.8q 2 Dec 2010
--
You are receiving this mail because:
You are watching the assignee of the bug.
You are watching someone on the CC list of the bug.
https://bugzilla.mindrot.org/show_bug.cgi?id=2034 --- Comment #2 from Darren Tucker <dtucker at zip.com.au> --- Also works with the versions of openssl and zlib that you specified, installed under /usr/local/ $ ./configure --with-zlib=/usr/local --with-ssl-dir=/usr/local/ssl && make [...] $ ./ssh -V OpenSSH_6.0p1, OpenSSL 1.0.1c 10 May 2012 How exactly did you run configure? Are you sure there's no missing include files in /usr/include? Here's all of the UTMP-related config entries I ended up with: $ egrep '#define.*TMP' config.h #define DISABLE_UTMP 1 #define DISABLE_WTMP 1 #define DISABLE_WTMPX 1 #define HAVE_HOST_IN_UTMPX 1 #define HAVE_ID_IN_UTMPX 1 #define HAVE_TV_IN_UTMPX 1 #define HAVE_TYPE_IN_UTMPX 1 #define HAVE_UTMPX_H 1 -- You are receiving this mail because: You are watching the assignee of the bug. You are watching someone on the CC list of the bug.
https://bugzilla.mindrot.org/show_bug.cgi?id=2034
--- Comment #3 from Kris <kris.universe at gmail.com> ---
Yes, I am starting each attempt (from the very first one when I
encountered the problem) with a fresh, clean unpack of the tarball.
I have attempted with the following configure styles:
Attempt-1} ./configure --with-zlib=/usr/local --with-ssl-dir=/usr/local
Attempt-2} ./configure
Attempt-3} ./configure --with-zlib=/usr/local
--with-ssl-dir=/usr/local/ssl
Attempt-1 was, of course, the first time I encountered the break in
make.
I filed the report after Attempt-2.
I also tried Attempt-3 based on Darren's comment, although there was
'No such file or directory' in /usr/local/ssl.
Yes, the latest OpenSSL is in /usr/local. As are all the ports listed
below.
I have never encountered this problem before on local (machine sitting
next to me) for FreeBSD 8.2-RELEASE nor the FreeBSD 9.0-RELEASE. Also,
I never faced this predicament while building the stack on Amazon (AWS)
with FreeBSD 8.2-RELEASE.
But I'm stuck while building the stack on AWS with FreeBSD 9.0-RELEASE
32-bit (i386) right now.
I'm building the FreeBSD server (as with all of those successful builds
except for port versions that were available at the times of those
builds for FreeBSD 8.2) with the latest version stack of dependencies
in the following order:
{In each case, all the old version files of these ports (that came with
the base OS) such as in /usr/bin, /usr/lib, etc., were replaced with
hard/soft links to the corresponding new versions under /usr/local so
that any other piece of software that needed them 'saw' the correct
version only.}
All were installed through the ports system (make install) and not as
packages. The two that were (of necessity, for want of port
availability) installed directly (from tarballs, configure && make...)
were Zlib 1.2.7 and OpenSSH 6.0p1.
Zlib 1.2.7 (Not through ports)
gnugrep-2.12 (following dependencies got installed as well)
libtool-2.4.2
libiconv-1.14
gettext-0.18.1.1
pkgconf 0.8.6
libltdl-2.4.2
gmake-3.82
xproto-7.0.22
makedepend-1.0.3,1
perl-5.16
openssl 1.0.1_4
automake-1.12.2 (following dependencies got installed as well
autoconf-2.69
automake-wrapper-20101119
m4-1.4.16_1,1
help2man-1.40.11
autoconf-wrapper-20101119
p5-Locale-gettext-1.05_3
ntp 4.2.6p5_1
libsmi 0.4.8
bison-2.5.1,1
libpcap-1.3.0
tcpdump 4.3.0
And then...
openssh 6.0p1 (Not through ports)
***Here is where 'the party crashed' with the problem at hand.
No, I did not mess with config.h, nor with any other *.h, nor with any
other component. What these packages installed is what we have.
As of now, dead in the water with this 'make break'. :-(
Are there environment variables or other settings that can help?
Or, anything else?
Thanks!
--
You are receiving this mail because:
You are watching the assignee of the bug.
You are watching someone on the CC list of the bug.
https://bugzilla.mindrot.org/show_bug.cgi?id=2034 --- Comment #4 from Kris <kris.universe at gmail.com> --- I also tried the following in the folder that the freshest OpenSSH-6.0p1 tarball untars into (where compilation was done): fBSD9 > egrep '#define.*TMP' config.h And received the following (which is different from Darren's output): #define CONF_WTMP_FILE "/var/log/wtmp" #define DISABLE_UTMP 1 #define DISABLE_WTMPX 1 #define HAVE_HOST_IN_UTMPX 1 #define HAVE_ID_IN_UTMPX 1 #define HAVE_TV_IN_UTMPX 1 #define HAVE_TYPE_IN_UTMPX 1 #define HAVE_UTMPX_H 1 The 'diff' in outputs is: The line #define DISABLE_WTMP 1 is missing in my config.h The line #define CONF_WTMP_FILE "/var/log/wtmp" is missing in Darren's config.h And, yes, I do have a /var/log/wtmp without any content (0 bytes). -rw-r--r-- 1 root wheel 0 Aug 15 22:17 /var/log/wtmp Thanks! -- You are receiving this mail because: You are watching the assignee of the bug. You are watching someone on the CC list of the bug.
https://bugzilla.mindrot.org/show_bug.cgi?id=2034 --- Comment #5 from Kris <kris.universe at gmail.com> --- I wanted to try something... I deleted the /var/log/wtmp Untarred a fresh openssh-6.0p1 tarball Proceeded as usual: fBSD9 > ./configure --with-zlib=/usr/local --with-ssl-dir=/usr/local fBSD9 > make It went through! fBSD9 > ./ssh -V OpenSSH_6.0p1, OpenSSL 1.0.1c 10 May 2012 Boy, am I a happy camper! Thanks much to Darren for pointing out probable causes. If any of you have a caution, comment or advice, feel free. I have no idea who should or how this Bug 2034 must be closed. This is my first on Bugzilla! And it was probably not a bug at all! Please let me know if I must close it (and a pointer to how). Much obliged, Ladies and Gentlemen! Thanks again, Darren! Sincerely, Kris -- You are receiving this mail because: You are watching the assignee of the bug. You are watching someone on the CC list of the bug.
https://bugzilla.mindrot.org/show_bug.cgi?id=2034 --- Comment #6 from Kris <kris.universe at gmail.com> --- PS: I did a sanity check as well right after configure and before make: fBSD9 > ll config.h -rw-r--r-- 1 root wheel 43176 Aug 16 17:35 config.h fBSD9 > egrep '#define.*TMP' config.h #define DISABLE_UTMP 1 #define DISABLE_WTMP 1 #define DISABLE_WTMPX 1 #define HAVE_HOST_IN_UTMPX 1 #define HAVE_ID_IN_UTMPX 1 #define HAVE_TV_IN_UTMPX 1 #define HAVE_TYPE_IN_UTMPX 1 #define HAVE_UTMPX_H 1 This is the same as the output that Darren posted. Just wanted to mention it and complete the picture! Thanks again! -- You are receiving this mail because: You are watching the assignee of the bug. You are watching someone on the CC list of the bug.
https://bugzilla.mindrot.org/show_bug.cgi?id=2034
Darren Tucker <dtucker at zip.com.au> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |WORKSFORME
--- Comment #7 from Darren Tucker <dtucker at zip.com.au> ---
does any package claim to own the wtmp file? ie "pkg_info -W
/var/log/wtmp"?
anyway I'm going to close this bug.
--
You are receiving this mail because:
You are watching the assignee of the bug.
You are watching someone on the CC list of the bug.
https://bugzilla.mindrot.org/show_bug.cgi?id=2034 --- Comment #8 from Kris <kris.universe at gmail.com> --- No, no package claimed ownership! pkg_info -W /var/log/wtmp produced nothing. Thanks for checking on that! Appreciate closing this bug entry as well. Have a nice evening/day/morning! -- You are receiving this mail because: You are watching the assignee of the bug. You are watching someone on the CC list of the bug.
https://bugzilla.mindrot.org/show_bug.cgi?id=2034
Damien Miller <djm at mindrot.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|RESOLVED |CLOSED
--- Comment #9 from Damien Miller <djm at mindrot.org> ---
closing resolved bugs as of 8.6p1 release
--
You are receiving this mail because:
You are watching the assignee of the bug.
You are watching someone on the CC list of the bug.