[Lazarus] Package: Adding httpd.pas link error in linux
Michael Van Canneyt
michael at freepascal.org
Mon Jul 9 09:52:17 CEST 2012
On Sun, 8 Jul 2012, Zaher Dirkey wrote:
>
> On Sat, Jul 7, 2012 at 2:48 AM, Mattias Gaertner <nc-gaertnma at netcologne.de> wrote:
> On Sat, 7 Jul 2012 02:34:16 +0300
> Zaher Dirkey <parmaja at gmail.com> wrote:
>
> > On Sat, Jul 7, 2012 at 1:03 AM, Mattias Gaertner
> > <nc-gaertnma at netcologne.de>wrote:
> >
> > > Have you installed the libapr on your system?
> > > Have you installed the development package of libapr?
> > >
> > > Mattias
> > >
> >
> > It is already installed
> > The problem not happned if i used httpd.pas in the project directly, but in
> > package it give me that error when linking Lazarus.
>
> Are you aware that fpc has a httpd.ppu?
>
> Mattias
>
>
> I attached simple example about my problem, it is small package with empty units have httpd in uses.
> If it is a bug i will report it?
>
> Thanks
>
> And this the error messages with hidden.
>
> --------------------------------------------------
> /usr/bin/env: bash
> : No such file or directory
> make: Entering directory `/mnt/dev/programs/lazarus'
> /usr/bin/make -C ide ide
> make[1]: Entering directory `/mnt/dev/programs/lazarus/ide'
> ../tools/svn2revisioninc .. revision.inc
> Created /mnt/dev/programs/lazarus/ide/revision.inc for revision: 37853M
> /usr/bin/make --assume-new=lazarus.pp lazarus
> make[2]: Entering directory `/mnt/dev/programs/lazarus/ide'
> /usr/bin/fpc -gl -Sci -dlclgtk2 -Fu../lcl/units/i386-linux -Fu../lcl/units/i386-linux/gtk2 -Fu../components/codetools/units/i386-linux
> -Fu../components/lazutils/lib/i386-linux -Fu../components/synedit/units/i386-linux/gtk2 -Fu../components/lazcontrols/lib/i386-linux/gtk2
> -Fu../components/custom -Fu../ideintf/units/i386-linux/gtk2 -Fu../designer -Fu../debugger -Fu../debugger/frames -Fu../converter -Fu../packager
> -Fu../packager/frames -Fu../packager/units/i386-linux -Fu../units/i386-linux/gtk2 -Fuframes -Fu. -Fu/usr/lib/fpc/2.6.0/units/i386-linux/rtl
> -Fu/usr/lib/fpc/2.6.0/units/i386-linux/paszlib -Fu/usr/lib/fpc/2.6.0/units/i386-linux/fcl-process -Fu/usr/lib/fpc/2.6.0/units/i386-linux/hash
> -Fu/usr/lib/fpc/2.6.0/units/i386-linux/fpmkunit -Fu/usr/lib/fpc/2.6.0/units/i386-linux/regexpr -Fiinclude -Fiinclude/linux -Fi../images -FE..
> -FU../units/i386-linux/gtk2 -Fl/usr/lib/gcc/i586-suse-linux/4.6 -Fl/usr/local/lib -Flinclude -Fl/etc/ld.so.conf.d/*.conf -O2 -g- -Xs
> @/mnt/dev/workspace/lazarus/linux/idemake.cfg -di386 lazarus.pp
> Free Pascal Compiler version 2.6.0 [2011/12/23] for i386
> Copyright (c) 1993-2011 by Florian Klaempfl and others
> Target OS: Linux for i386
> Compiling lazarus.pp
> Compiling resource ../units/i386-linux/gtk2/lazarus.or
> Linking ../lazarus
> /usr/bin/ld: warning: ../link.res contains output sections; did you forget -T?
> /usr/lib/fpc/2.6.0/units/i386-linux/httpd22/httpd.o: In function `HTTPD_AP_ESCAPE_URI$PAPR_POOL_T$PCHAR$$PCHAR':
> httpd.pas:(.text+0x48): undefined reference to `ap_os_escape_path'
> /usr/lib/fpc/2.6.0/units/i386-linux/httpd22/apr.o: In function `APR_APR_POOL_CREATE$PPAPR_POOL_T$PAPR_POOL_T$$LONGINT':
> apr.pas:(.text+0xa): undefined reference to `apr_pool_create_ex'
> /usr/lib/fpc/2.6.0/units/i386-linux/httpd22/apr.o: In function `APR_APR_POOL_SUB_MAKE$PPAPR_POOL_T$PAPR_POOL_T$APR_ABORTFUNC_T$$LONGINT':
> apr.pas:(.text+0x29): undefined reference to `apr_pool_create_ex'
> lazarus.pp(133,1) Error: Error while linking
> /usr/bin/ld: warning: ../link.res contains output sections; did you forget -T?
> /usr/lib/fpc/2.6.0/units/i386-linux/httpd22/httpd.o: In function `HTTPD_AP_ESCAPE_URI$PAPR_POOL_T$PCHAR$$PCHAR':
> httpd.pas:(.text+0x48): undefined reference to `ap_os_escape_path'
> /usr/lib/fpc/2.6.0/units/i386-linux/httpd22/apr.o: In function `APR_APR_POOL_CREATE$PPAPR_POOL_T$PAPR_POOL_T$$LONGINT':
> apr.pas:(.text+0xa): undefined reference to `apr_pool_create_ex'
> /usr/lib/fpc/2.6.0/units/i386-linux/httpd22/apr.o: In function `APR_APR_POOL_SUB_MAKE$PPAPR_POOL_T$PAPR_POOL_T$APR_ABORTFUNC_T$$LONGINT':
> apr.pas:(.text+0x29): undefined reference to `apr_pool_create_ex'
That looks like you have an incompatible version of libapr installed.
Michael.
More information about the Lazarus
mailing list