<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8">
<META NAME="GENERATOR" CONTENT="GtkHTML/3.10.3">
</HEAD>
<BODY>
Hi Nam,<BR>
See my comments below,<BR>
<BR>
On Tue, 2006-10-17 at 16:26 +0200, Hoang-Nam Nguyen wrote:
<BLOCKQUOTE TYPE=CITE>
<PRE>
<FONT COLOR="#000000">Hi Vlad!</FONT>
<FONT COLOR="#000000">> I reviewed the patch and I see that only ibv_* 64-bit binaries are</FONT>
<FONT COLOR="#000000">> included with suffix 64 and all other binaries are overrided by 32-bit</FONT>
<FONT COLOR="#000000">> versions.</FONT>
<FONT COLOR="#000000">> Why do think that all binaries on ppc64 should be 32-bit?</FONT>
<FONT COLOR="#000000">Say, that's what Doug Ledford from RedHat told me and what's I heard</FONT>
<FONT COLOR="#000000">from some other people. I personally don't mind to have all binaries</FONT>
<FONT COLOR="#000000">also in 64-bit. The actual reason why I did that so far is because</FONT>
<FONT COLOR="#000000">of my uncertainty which binaries OFED will build in total, hence this</FONT>
<FONT COLOR="#000000">defensive solution for pre-release. I actually wanted a nicer solution</FONT>
<FONT COLOR="#000000">via configure but was not able to put something like EXEEXT=64 to</FONT>
<FONT COLOR="#000000">config-options or to use --program-suffix option.</FONT>
<FONT COLOR="#000000">> I have here ppc64 server with SLES10 installed. I have checked the</FONT>
<FONT COLOR="#000000">> binaries under /usr/bin directory:</FONT>
<FONT COLOR="#000000">> there are 64-bit binaries, 64-bit binaries with suffix 64 and 32-bit</FONT>
<FONT COLOR="#000000">> binaries. So, I didn't see some standart there...</FONT>
<FONT COLOR="#000000">OK, that's true. On SELS 9ppc64 there is gdb for 32-bit and gdb64</FONT>
<FONT COLOR="#000000">for 64-bit. And I just adopt that scheme.</FONT>
<FONT COLOR="#000000">> OFED-1.1-rc7 installs on ppc64 (same as on x86_64) both 32 and 64-bit</FONT>
<FONT COLOR="#000000">> libraries under 'prefix'/lib and 'prefix'/lib64 correspondently and</FONT>
<FONT COLOR="#000000">> 64-bit binaries under 'prefix'/bin.</FONT>
<FONT COLOR="#000000">No. That's not true in my case. In openib.spec _libdir is thought to</FONT>
<FONT COLOR="#000000">specify lib dir for 64 bit and should be 'prefix'/lib64 as you said.</FONT>
<FONT COLOR="#000000">But it is 'prefix'/lib as I checked it.</FONT>
</PRE>
</BLOCKQUOTE>
<BR>
I checked openib.spec: <BR>
<BR>
35 <B>%ifarch %{ix86} ia64</B><BR>
36 %{!?_libdir: %define _libdir %{_prefix}/lib}<BR>
37<B> %else</B><BR>
38 %{!?_libdir: %define _libdir <B>%{_prefix}/lib64</B>}<BR>
39 %endif<BR>
<BR>
<BR>
And for 32-bit libraries:<BR>
559 %ifarch x86_64 <B>ppc64</B><BR>
560 <B>%if %{build_32bit}</B><BR>
<BR>
.........<BR>
571 env CFLAGS=%{flags32} CXXFLAGS=%{flags32} LDFLAGS=%{ldflags32} FFLAGS=%{flags32} \<BR>
572 ./configure --prefix=%{_prefix} <B>--libdir=%{_libdir32}</B> --without-patch %{configure_options32}<BR>
573 make user<BR>
574 make DESTDIR=$RPM_BUILD_ROOT install_user<BR>
.........<BR>
598 %else # Build libsdp 32 bit in any case<BR>
599 %if %{build_libsdp}<BR>
600 make -C src/userspace/libsdp clean<BR>
601 env CFLAGS=%{flags32} CXXFLAGS=%{flags32} LDFLAGS=%{flags32} FFLAGS=%{flags32} \<BR>
602 ./configure --prefix=%{_prefix} --libdir=%{_libdir32} --without-patch --with-libsdp<BR>
603 make libsdp<BR>
604 make DESTDIR=$RPM_BUILD_ROOT install_libsdp<BR>
605 %endif<BR>
606 %endif<BR>
607 %endif<BR>
<BR>
<BR>
So, it is wierd that you got all libraries installed into 'prefix'/lib.<BR>
<BR>
Are you working with OFED-1.1-rc7? <BR>
Here, on PPC64 SLES10 I got both lib and lib64...
<BLOCKQUOTE TYPE=CITE>
<PRE>
<FONT COLOR="#000000">That means both _libdir and _libdir32 point to the same dir. This</FONT>
<FONT COLOR="#000000">causes the 64-bit libraries to be overwritten by the 32-bit</FONT>
<FONT COLOR="#000000">libraries with the same name when configure is called</FONT>
<FONT COLOR="#000000">second time. Furthermore the %files rule for libibverbs-util</FONT>
<FONT COLOR="#000000">specifies only dir bin, not bin32 in addition. And the result is</FONT>
<FONT COLOR="#000000">libibverbs-utils-1.0.4-0.ppc64.rpm contains only 64-bit binaries and</FONT>
<FONT COLOR="#000000">32-bit libraries. So the 64-bit binaries are useless without the</FONT>
<FONT COLOR="#000000">corresponding 64-bit libraries.</FONT>
<FONT COLOR="#000000">> If you want to change this, lets do it for OFED-1.2.</FONT>
<FONT COLOR="#000000">> If you have some issue with the current installation please describe it.</FONT>
<FONT COLOR="#000000">See above.</FONT>
<FONT COLOR="#000000">> See example from PPC64 with SLES10:</FONT>
<FONT COLOR="#000000">> ibv_devinfo - 64-bit, linked with /usr/local//lib64/libibverbs.so.1</FONT>
<FONT COLOR="#000000">> which is also 64-bit.</FONT>
<FONT COLOR="#000000">Well, as explained above. But I hope you understand my problem.</FONT>
<FONT COLOR="#000000">We only need to define which scheme of 64- and 32-bit exec and libs</FONT>
<FONT COLOR="#000000">we want to pursue.</FONT>
<FONT COLOR="#000000">So what do you think?</FONT>
<FONT COLOR="#000000">Regards</FONT>
<FONT COLOR="#000000">Nam</FONT>
</PRE>
</BLOCKQUOTE>
</BODY>
</HTML>