In regard to: Re: [Imap-uw] 2006d Solaris 64 bit compile issues, Bob said...:
I have built imap-2006e.DEV.SNAP-0612181824 as 64 bit and unfortunately, the imapd process does nto work any better than it did with the 2006d version. The symptoms are that an initiall connection is established but then nothing regarding the account is sent back to the client mail app and the imapd daemon terminates. There is nothing helpful in the syslog or anywhere else that I can find - not even a core file. I have to way to pace the connection in order to get a truss output.
I spent a little bit of time looking at this issue. I built the same imapd snapshot on x86_64-sun-solaris2.10 using the no-cost Sun compilers. I get a core dump (SEGV) in checkpw() which I'm in the process of trying to debug, but I did turn up one minor, unrelated build problem. Solaris 10 doesn't ship with a static copy of libc, at least on x86_64. This sort of breaks the c-client/os_sol.h: Building c-client for soc... echo `cat SPECIALS` > c-client/SPECIALS cd c-client;make soc EXTRACFLAGS='-g -xs -xtarget=native -xarch=amd64'\ EXTRALDFLAGS='-Wl,-64 -R/local/krb5/lib/64'\ EXTRADRIVERS=''\ EXTRAAUTHENTICATORS=''\ PASSWDTYPE=std SSLTYPE=nopwd IP=4\ sh -c '(strings /lib/libc.a | grep getpassphrase > /dev/null) && ln -s os_soln.h os_sol.h || ln -s os_solo.h os_sol.h' /lib/libc.a: No such file or directory Since libc.a wasn't found, the || case is evaluated, and we end up with os_sol.h pointing to os_solo.h. I worked around the issue with this patch. --- imap-2006e.DEV.SNAP-0612181824.orig/src/osdep/unix/Makefile 2006-12-07 19:24:54.000000000 -0600 +++ imap-2006e.DEV.SNAP-0612181824/src/osdep/unix/Makefile 2006-12-20 15:55:01.525946000 -0600 @@ -935,7 +935,7 @@ @false os_sol.h: - sh -c '(strings /lib/libc.a | grep getpassphrase > /dev/null) && $(LN) os_soln.h os_sol.h || $(LN) os_solo.h os_sol.h' + sh -c 'if test -f /lib/libc.a ; then (strings /lib/libc.a | grep getpassphrase > /dev/null) && $(LN) os_soln.h os_sol.h || $(LN) os_solo.h os_sol.h ; else $(LN) os_soln.h os_sol.h ; fi' # Once-only environment setup Basically, the idea is that if /lib/libc.a exists, we use the old logic of searching libc.a for getpassphrase and linking to either the old or new header. If /lib/libc.a doesn't exist, we're on a very recent version of Solaris, and it therefore does have getpassphrase(). Mark, what do you think? Tim -- Tim Mooney [EMAIL PROTECTED] Information Technology Services (701) 231-1076 (Voice) Room 242-J6, IACC Building (701) 231-8541 (Fax) North Dakota State University, Fargo, ND 58105-5164 _______________________________________________ Imap-uw mailing list Imap-uw@u.washington.edu https://mailman1.u.washington.edu/mailman/listinfo/imap-uw