I built a new box with an unpatched, non-custom, "developer" installation 
and I can build pdflib from SRPM but not samba.  Details and comments 
below. 

Michael Schloh von Bennewitz wrote:
> We start with 'developer', because as far as I remember only this or a
> superset preset (OEM) includes the standard development tools (such as
> /usr/ccs/bin/as, ld, make, ar, nm ... /usr/lib/libc.a and /usr/include/*).
> Sure you could start from scratch and add the packages by hand, but it
> will problably take much longer and be harder to maintain.
> 
> I believe that a screen follows the installation preset choice. You are
> able to 'subtract' packages from the installation. We do this, because we
> don't need a PCMCIA card reader device, old Netscape, CDE libraries, and
> so on.

Yes, this is similar to how I install Solaris.  However, I start with a core 
install and add a few packages (or several packages on dev hosts).  I do 
this to avoid installing unwanted software, in particular, X.  I do the 
same on dev hosts since I don't want to build and test an open source 
package on a dev host with X and find out it has an unresolved dependency 
when I move it to a production host without X.
 
> Whichever way you install, you should definitely be able to build pdflib
> without OpenPKG. The same tarball wrapped into the OpenPKG package you've
> been trying to install is found at:
> 
>   http://www.pdflib.com/pdflib/download/pdflib-4.0.3.tar.gz
> 
> There is no magic in this particular OpenPKG package, as it just does a
> basic 'configure --prefix=[yourdir] --disable-shared;make'. Although you
> had luck with the other packages, it seems clear now that your environment
> is not totally set up for development. As soon as you get to the point
> that you can build pdflib manually, you can then do 'rpm --rebuild
> ftp://ftp.openpkg.org/blahblah' and you'll be surprised at the results (I
> hope). If you don't do this you might expect that more than just pdflib
> and samba fail.

Well, let me the environment I'm building in now since samba is failing to 
build and, although it builds, I don't think pdflib is quite right.  The 
build host is a non-customized "developer" install of Solaris 8 without 
patches.  As root, I ran "sh /openpkg-1.1.0-1.1.0.sparc64-solaris2.8-cw.sh" 
which work fine.  Then, still as root, I ran:

  eval `/cw/etc/rc --eval all env`
  rpm -ivh gcc-3.2-1.1.0.sparc64-solaris2.8-cw.rpm
  rpm -ivh binutils-2.13-1.1.0.sparc64-solaris2.8-cw.rpm
  rpm -ivh make-3.79.1-1.1.0.sparc64-solaris2.8-cw.rpm

Everything seemed to install OK.  At this point, I ran "su - cw" and then 
ran:

  rpm --rebuild 
ftp://ftp.openpkg.org/release/1.1/SRC/pdflib-4.0.3-1.1.0.src.rpm

This built a binary RPM.  Since samba was the other SRPM I was having 
trouble with, I tried building that next.  Samba needs openssl so I 
installed the binary RPM of openssl and tried rebuilding samba from source.  
The final error is irrelevant since mid-stream there are many ld errors 
like this:

  Linking bin/smbd
  /usr/ccs/bin/ld: illegal option -- E
  usage: ld [-6:abc:d:e:f:h:il:mo:p:rstu:z:B:CD:F:GI:L:M:N:P:Q:R:S:VY:?] 
  file(s)
          [-64]           enforce a 64-bit link-edit
          [-a]            create an absolute file

So the problem appears to be that configure is finding Sun's ld and not the 
ld from the binutils RPM.  I checked the output of my pdflib build and it 
also is using /usr/ccs/bin/ld (although it is able to build to completion).  
However, if I type "which ld" I get back /cw/bin/ld.  Is /usr/ccs/bin 
hardcoded somewhere for the Solaris platform?  If I take the heavy-handed 
approach and move /usr/ccs to /usr/ccs.save, samba and pdflib find 
/cw/bin/ld and the binary RPMs build fine.  However, now I don't have a 
"default" Solaris installation anymore.  How should I proceed?  I would 
like to start building everything from SRPMs but I want to make sure my dev 
host is correctly setup before I start.

> Put a '.rpmmacros' file in your $HOME directory, and you'll be able to
> influence OpenPKG package builds that way. You can specify any path you
> want to for the files OpenPKG produces.
> 
> ---- $HOME/.rpmmacros ----
> #   source areas
> %_sourcedir    %(echo $HOME)/somedir/dst/%{name}
> %_specdir      %(echo $HOME)/somedir/src/%{name}
> 
> #   temporary areas
> %_builddir     %(echo $TMP)/anotherdir/
> %_tmppath      %(echo $TMP)/anotherdir/
> 
> #   target areas
> %_rpmdir       %(echo $HOME)/pkgdir/bin
> %_srcrpmdir    %(echo $HOME)/pkgdir/src
> ---- $HOME/.rpmmacros ----

Cool, I will give that a try.  If I don't use a ~/.rpmmacros file, is "su - 
cw" the proper way to build packages from SRPMs?  How are cw-r and cw-n 
used?

Thanks for all your help.  I'm looking forward to getting started 
______________________________________________________________________
The OpenPKG Project                                    www.openpkg.org
User Communication List                      [EMAIL PROTECTED]

Reply via email to