[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: source build cluelessness (prc-tools && pppd)



On Mon, Dec 06, 1999 at 10:40:37PM -0500, Jonathan Lupa wrote
> Hello!
> 
> I have had problems building a number of packages now, and am hoping
> someone could lend some pointers.  I actually got someone to pay me to
> code on a Win32 project, so am somewhat familiar with programming (or
> at least I like to pretend), but I have gotten hit again and again
> while working with debian source packages.  I had thought that this
> wouldn't be an issue since the source packages are supposed to make
> things idiot proof, but I guess I am proving that wrong. :)
> 
> I'll detail what I am doing and hopefully someone can correct me.  My
> system is basicly slink with everything installed via .deb's.
> 
> Problem 1. prc-tools.
> I created a /usr/local/src/prc-tools, and ran dpgk-source to create
> the appropriate subdirectory.
> I go to the subdirectory and run debian/rules.
> This seems to do all the extraction and build binutils and
> gcc... then:
> 
> --SNIP--
> do \
>   echo ${name}; \
>   ./xgcc -B./ -O2  -DCROSS_COMPILE -DIN_GCC   -g -I./include
> -Dinhibit_libc -g1 -I. -I. -I./config -c -DL${name} libgcc1.S; \
>   if [ $? -eq 0 ] ; then true; else exit 1; fi; \
>   mv libgcc1.o ${name}.o; \
>   /usr/m68k-palmos-coff/bin/ar rc tmplibgcc1.a ${name}.o; \
>   rm -f ${name}.o; \
> done
> _mulsi3
> as: unrecognized option `-no-68881'
> make[2]: *** [libgcc1-asm.a] Error 1
> make[2]: Leaving directory
> `/usr/local/src/prc-tools/prc-tools-0.5.0r/othersources/gcc-2.7.2.2'
> make[1]: *** [stamp.gcc] Error 2
> make[1]: Leaving directory `/usr/local/src/prc-tools/prc-tools-0.5.0r'
> make: *** [build] Error 2
> --SNIP--
> 
> Which kind of leaves me in a bind because it seems to me that I might
> need that -no-68881 flag. :)
> 

Just a wild guess, but I think this is trying to build a binary
or object for the m68k-based Palm.  So, you may need to install
some m68k cross-development tools; try binutils-m68k-linux and
gcc-m68k-linux.

> OK, Problem 2. ppp. My goal here is to take ppp 2.3.5 (the slink
> version) and patch it up to 2.3.10 (the potato version) (since
> apparently kernel 2.2.12 really wants ppp to be pretty recent).
> 
> To start, I follow the same steps as above. Grab the source files,
> make the directory in /usr/local/src. go into the target directory and
> run debian/rules. Again everything builds fine until:
> --SNIP--
> make[2]: Entering directory `/usr/local/src/ppp-2.3.5/pppd'
> cc -O2 -pipe -Wall -g -D_linux_=1 -DHAVE_PATHS_H -DIPX_CHANGE
> -I../include -DCHAPMS=1 -DUSE_CRYPT=1 -DHAVE_CRYPT_H=1 -DHAS_SHADOW
> -DUSE_PAM   -c auth.c -o auth.
> auth.c:60: security/pam_appl.h: No such file or directory
> --SNIP--
> At which time gcc goes on a error/warning bender as it is want to do.
> 
> I looked through the debian subdirectories but didn't find any doc on
> build dependencies.
> 

There isn't, and this can be a problem; it's a good idea to
capture the output of debian/rules to a file, so you can check
for missing libraries and so on; some packages will use configure
to add or remove support for stuff based on what's installed, in
which case you can end up with a working package that doesn't
include all of the intended functionality.

In this case, it looksa like you're missing a development library;
# zgrep security/pam_appl.h /ftp/linux/debian/dists/slink/Contents-i386.gz
usr/include/security/pam_appl.h                         devel/libpam0g-dev

Try apt-get install libpam0g-dev.

> Any help anyone can provide would be greatly appreciated!
> 
> Now ObStupidUserRant:
> <RANT>
> This is making me feel pretty stupid.  I've never had problems
> building from tarballs, in all the years I've used Linux, and I am
> vexed that I do have problems with debian source packages.
> 
> Is this a problem with me? The source packaging system? The
> documentation for building? Or the communication channel that would
> bring the knowledge I need to do this correctly to me as a user?
> (without having to appeal to people who have good things to be doing
> with their time)
> </RANT>
> 

It's a minor but irritating deficiency in the source packaging
system. I understand that one of the goals of 'dpkg v2' is to add
proper source dependencies.  For the time being, it's a good idea
to look at the dependencies of the 'official' .deb and use that
as a guide; e.g., if a package requires libjpeg62 then you are
likely to need libjpeg62a-dev to build it.  That won't tell you
what tools it requires though, and you have to be careful that
you don't build packages that are (e.g.) missing docs because you
don't have sgml2html installed.


John P.
-- 
huiac@camtech.net.au
john@huiac.apana.org.au
"Oh - I - you know - my job is to fear everything." - Bill Gates in Denmark


Reply to: