You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Daniel Gehriger <da...@linkcad.com> on 2006/09/07 17:55:14 UTC

Apr troubles

After two days of trying to get subversion to work on my vanilla SuSE 
9.0 server, I hit the wall and I really need some help.

My setup:

- Apache 2.0.59, compiled from sources
- Subversion 1.3.2, compiled from sources
- Both are using apr 0.9.12

The problem:

Even though both, apache2 and svn use the same version of apr, each only 
works with the version it compiled itself:

- If I have libapr as compiled with Apache, and configure subversion as

   	--with-apxs=/usr/sbin/apxs2  	\
   	--with-apr=/usr/bin 	 	\
   	--with-apr-util=/usr/bin

   then svn segfaults, svnadmin complains about files named 
"svn_io_get_dirents2" (see corresponding earlier post).

- If I let subversion compile apr and apr-util (again, same version!!), 
then Apache segfaults as soon as I access a web page.

I tried

  - different versions of Apache
  - various versions of apr

But it just doesn't work. Help !

Regards,

Daniel


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: Apr troubles

Posted by Daniel Gehriger <da...@linkcad.com>.
Erik Huelsmann wrote:
> I understand your disappointment. Really. But what you encountered
> here is that APR 0.9.x doesn't actually support large files: it might
> work (and does most of the time), or it might not.
> 
> To quote one of the APR devs: "I fixed a 64-bit file access bug in
> 1.2.x recently which prevented all earlier versions from working
> correctly." Support for 64-bit file access was added officially in
> 1.0.x.
> 
> HTH,
> 
> Erik.
Erik,

I see. So you are suggesting to configure both, Apache and SVN w/o 
_LARGEFILE_SOURCE. I don't really have large files (> 4GB ?), and if I 
had, I probably wouldn't put it under version control, so I guess it 
doesn't matter in my case.

Thanks,

Daniel

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: Apr troubles

Posted by Erik Huelsmann <eh...@gmail.com>.
On 9/7/06, Daniel Gehriger <da...@linkcad.com> wrote:
> After 60 hours of trying, having recompiled subversion more than thirty
> times, I finally have it working. The solution was to prepend
>
>   CFLAGS="-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
>
> to configure:
>
> CFLAGS="-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" \
> ./configure \
>         --enable-dav \
>         --enable-so \
>         --with-ssl \
>         PYTHON=/usr/bin/python2.3 \
>         --with-apxs=/usr/sbin/apxs2-prefork \
>         --with-apr=/usr/bin \
>         --with-apr-util=/usr/bin
>
> I "grep"ed through the entire source tree of subversion, and there was
> not a single word about LARGEFILE_SOURCE and _FILE_OFFSET_BITS. I didn't
> know anything about those macros, and I believe I should not have to.
> Subversion and Apache apparently decided to define these differently,
> and that's why it got segfaults even though both compiled against the
> same version.
>
> Now that I know, I found a thread "Re: apr_off_t is of an ambiguous
> size." on the 2004 dev list talking about these marcos. Ben Reser
> replies to Kean Johnston in a message:
>
> > Most users are not going to be aware of _FILE_OFFSET_BITS. You're
> > suggesting that users should be aware of that, aware of how their perl
> > was compiled and know that they should pass a
> > CFLAGS=-D_FILE_OFFSET_BITS=64 to the configure?
> >
> > I'm sorry but that just seems a tad crazy to me. Certainly doesn't seem
> > user friendly.
>
> I agree. And I'm a bit upset to have lost almost a week just because of
> this. I suggest the developers either mention the problem in the INSTALL
> file, or replace that file with "Subversion does not have a robust build
> system and can only be compiled by its developers".

I understand your disappointment. Really. But what you encountered
here is that APR 0.9.x doesn't actually support large files: it might
work (and does most of the time), or it might not.

To quote one of the APR devs: "I fixed a 64-bit file access bug in
1.2.x recently which prevented all earlier versions from working
correctly." Support for 64-bit file access was added officially in
1.0.x.

HTH,

Erik.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: Apr troubles

Posted by Daniel Gehriger <da...@linkcad.com>.
After 60 hours of trying, having recompiled subversion more than thirty 
times, I finally have it working. The solution was to prepend

  CFLAGS="-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"

to configure:

CFLAGS="-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" \
./configure \
	--enable-dav \
	--enable-so \
	--with-ssl \
	PYTHON=/usr/bin/python2.3 \
	--with-apxs=/usr/sbin/apxs2-prefork \
	--with-apr=/usr/bin \
	--with-apr-util=/usr/bin

I "grep"ed through the entire source tree of subversion, and there was 
not a single word about LARGEFILE_SOURCE and _FILE_OFFSET_BITS. I didn't 
know anything about those macros, and I believe I should not have to. 
Subversion and Apache apparently decided to define these differently, 
and that's why it got segfaults even though both compiled against the 
same version.

Now that I know, I found a thread "Re: apr_off_t is of an ambiguous 
size." on the 2004 dev list talking about these marcos. Ben Reser 
replies to Kean Johnston in a message:

> Most users are not going to be aware of _FILE_OFFSET_BITS. You're 
> suggesting that users should be aware of that, aware of how their perl 
> was compiled and know that they should pass a 
> CFLAGS=-D_FILE_OFFSET_BITS=64 to the configure? 
> 
> I'm sorry but that just seems a tad crazy to me. Certainly doesn't seem 
> user friendly.

I agree. And I'm a bit upset to have lost almost a week just because of 
this. I suggest the developers either mention the problem in the INSTALL 
file, or replace that file with "Subversion does not have a robust build 
system and can only be compiled by its developers".

- Daniel

Daniel Gehriger wrote:
> After two days of trying to get subversion to work on my vanilla SuSE 
> 9.0 server, I hit the wall and I really need some help.
> 
> My setup:
> 
> - Apache 2.0.59, compiled from sources
> - Subversion 1.3.2, compiled from sources
> - Both are using apr 0.9.12
> 
> The problem:
> 
> Even though both, apache2 and svn use the same version of apr, each only 
> works with the version it compiled itself:
> 
> - If I have libapr as compiled with Apache, and configure subversion as
> 
>       --with-apxs=/usr/sbin/apxs2      \
>       --with-apr=/usr/bin          \
>       --with-apr-util=/usr/bin
> 
>   then svn segfaults, svnadmin complains about files named 
> "svn_io_get_dirents2" (see corresponding earlier post).
> 
> - If I let subversion compile apr and apr-util (again, same version!!), 
> then Apache segfaults as soon as I access a web page.
> 
> I tried
> 
>  - different versions of Apache
>  - various versions of apr
> 
> But it just doesn't work. Help !
> 
> Regards,
> 
> Daniel
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
> For additional commands, e-mail: users-help@subversion.tigris.org
> 
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org