Re: Upgrade to 2.2.0

2012-10-09 Thread Fajar A. Nugraha
On Tue, Oct 9, 2012 at 11:11 PM, John Dennis  wrote:
> On 10/09/2012 11:55 AM, John Horne wrote:
>>
>> On Tue, 2012-10-09 at 11:19 -0400, John Dennis wrote:
>> Unfortunately (?) the differences now between Fedora and RHEL,
>> especially in terms of Fedora using systemctl rather than SysV startup
>> scripts, means that using a Fedora SPEC file to build a package for RHEL
>> is generally fraught with problems.
>>
>> However. I have this afternoon been rebuilding FreeRadius 2.2 using the
>> latest CentOS 5.8 freeradius2 RPM SPEC file. (Basically, using a SPEC
>> file that you know will work on the server, but replace the actual
>> source tarball with the latest available.) In this instance the
>> modifications to the SPEC file were minor, but one patch also had to be
>> modified. So, again, not trivial, you need to know a bit about SPEC
>> files and patching, but it did build.
>>
>> I should add that for other packages this approach hasn't been too good!
>> The differences between code versions can mean that a lot of patches in
>> the RPM either become redundant or need modifying. It can add up to a
>> lot of work.
>
>
> Yup. It's probably easier to modify an existing spec file for a distribution
> than trying to move spec files between distributions.
>
> If you want the latest version and a set of RPM's is not yet available you
> basically have 2 choices:
>
> 1) local build using configure/make/install
>
> 2) local RPM build using a tweaked spec file

There's also:

(3) use the included specfile in release tarball

The bundled distro-specific recipe in 2.2.0 included most part of
distro's own recipe, with some changes necessary to build, and was
build-tested against RHEL/centos 5 and 6, Ubuntu, and opensuse. So it
should just work.

-- 
Fajar
-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


Re: Upgrade to 2.2.0

2012-10-09 Thread John Dennis

On 10/09/2012 11:55 AM, John Horne wrote:

On Tue, 2012-10-09 at 11:19 -0400, John Dennis wrote:


By using a rpm spec file to build rpms from you'll get all the nasty
details of correct building handled for you. There are 2.2 rpms
available for Fedora. Just be aware spec files are also tuned for
specific Red Hat releases, you'll need to understand the differences
between Fedora and RHEL 5. All in all it can be non-trivial to get all
the details of building and installing a system daemon correct, this
is why we normally recommend folks use pre-build packages for their
distribution.


Unfortunately (?) the differences now between Fedora and RHEL,
especially in terms of Fedora using systemctl rather than SysV startup
scripts, means that using a Fedora SPEC file to build a package for RHEL
is generally fraught with problems.

However. I have this afternoon been rebuilding FreeRadius 2.2 using the
latest CentOS 5.8 freeradius2 RPM SPEC file. (Basically, using a SPEC
file that you know will work on the server, but replace the actual
source tarball with the latest available.) In this instance the
modifications to the SPEC file were minor, but one patch also had to be
modified. So, again, not trivial, you need to know a bit about SPEC
files and patching, but it did build.

I should add that for other packages this approach hasn't been too good!
The differences between code versions can mean that a lot of patches in
the RPM either become redundant or need modifying. It can add up to a
lot of work.


Yup. It's probably easier to modify an existing spec file for a 
distribution than trying to move spec files between distributions.


If you want the latest version and a set of RPM's is not yet available 
you basically have 2 choices:


1) local build using configure/make/install

2) local RPM build using a tweaked spec file

Which is easier? It depends on a lot of factors. But no matter which 
approach you take:


You must fully understand what you're doing and why.

There just aren't any shortcuts to this.

If you want to use approach 1, then I suggest at least looking at the 
configure command in an appropriate spec file and see what options are 
being passed to it, then do something similar in your build.



--
John Dennis 

Looking to carve out IT costs?
www.redhat.com/carveoutcosts/
-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


Re: Upgrade to 2.2.0

2012-10-09 Thread John Horne
On Tue, 2012-10-09 at 11:19 -0400, John Dennis wrote:
> 
> By using a rpm spec file to build rpms from you'll get all the nasty 
> details of correct building handled for you. There are 2.2 rpms 
> available for Fedora. Just be aware spec files are also tuned for 
> specific Red Hat releases, you'll need to understand the differences 
> between Fedora and RHEL 5. All in all it can be non-trivial to get all
> the details of building and installing a system daemon correct, this
> is why we normally recommend folks use pre-build packages for their
> distribution.
> 
Unfortunately (?) the differences now between Fedora and RHEL,
especially in terms of Fedora using systemctl rather than SysV startup
scripts, means that using a Fedora SPEC file to build a package for RHEL
is generally fraught with problems.

However. I have this afternoon been rebuilding FreeRadius 2.2 using the
latest CentOS 5.8 freeradius2 RPM SPEC file. (Basically, using a SPEC
file that you know will work on the server, but replace the actual
source tarball with the latest available.) In this instance the
modifications to the SPEC file were minor, but one patch also had to be
modified. So, again, not trivial, you need to know a bit about SPEC
files and patching, but it did build.

I should add that for other packages this approach hasn't been too good!
The differences between code versions can mean that a lot of patches in
the RPM either become redundant or need modifying. It can add up to a
lot of work.





John.

-- 
John Horne   Tel: +44 (0)1752 587287
Plymouth University, UK  Fax: +44 (0)1752 587001
-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


Re: Upgrade to 2.2.0

2012-10-09 Thread John Dennis

On 10/09/2012 11:19 AM, John Dennis wrote:

The process to build a local rpm is detailed in the FreeRADIUS wiki page
"Red Hat FAQ" (which apparently has moved, maybe someone can provide a
pointer).


Ah, found it:

http://wiki.freeradius.org/guide/Red-Hat-FAQ

Some of the info is a little outdated, for example F15 introduced a new 
method to control system services (systemd) the the old service command 
and initscript files were replaced with the systemctl command and 
service files. You'll see that in current Fedora spec files but it's not 
appropriate for pre-systemd systems which (e.g. RHEL 5) which use SysV 
init. Also yum has grown some handy features since the FAQ was first 
written Next time I'm bored with nothing to do I'll try to update it. 
Now, what's the likelihood I'll won't have 10 high priority tasks on my 
plate at once, lets see ...



--
John Dennis 

Looking to carve out IT costs?
www.redhat.com/carveoutcosts/
-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


RE: Upgrade to 2.2.0

2012-10-09 Thread Morris, Andi
Thanks Alan, I'll investigate all of that further.

Cheers all,
Andi

-Original Message-
From: freeradius-users-bounces+amorris=cardiffmet.ac...@lists.freeradius.org 
[mailto:freeradius-users-bounces+amorris=cardiffmet.ac...@lists.freeradius.org] 
On Behalf Of alan buxey
Sent: 09 October 2012 16:15
To: FreeRadius users mailing list
Subject: Re: Upgrade to 2.2.0

Hi,

>./configure
>make
>make install
>
>Firstly running ./configure failed because my server (CentOS 5.5) didn’t
>have a C compiler installed.  I installed GCC via yum, and on we go.

i see you've already had advise with yum groups - if you did carry on you'd see 
tools missing which can you find what RPM to install via yum too -

>Now the configure.log tells me I don’t have make installed.  I installed
>that via yum, and on we go.

./configure --with-whatever-options | grep WARN

you need to read the WARN to see what other things you need to install most 
important would be openssl-devel for EAP support!  ignore the things you never 
want to use

alan
-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


From 1st November 2011 UWIC changed its title to Cardiff Metropolitan 
University. From the 6th December 2011, as part of this change, all email 
addresses which included @uwic.ac.uk have changed to @cardiffmet.ac.uk. All 
emails sent from Cardiff Metropolitan University will now be sent from the new 
@cardiffmet.ac.uk address. Please could you ensure that all of your contact 
records and databases are updated to reflect this change. Further information 
can be found on the website 
here.<http://www3.uwic.ac.uk/English/News/Pages/UWIC-Name-Change.aspx>

Ar Dachwedd y 1af 2011 newidiodd UWIC ei henw i Brifysgol Fetropolitan 
Caerdydd. O Ragfyr 6ed, fel rhan o'r newid yma, bydd pob cyfeiriad e-bost sy'n 
cynnwys @uwic.ac.uk yn newid i @cardiffmet.ac.uk. Bydd yr holl ebyst a 
ddanfonir o Brifysgol Fetropolitan Caerdydd yn cael eu danfon o‘r cyfeiriad 
@cardiffmet.ac.uk newydd. Gwnewch yn siwr eich bod yn diweddaru eich cofnodion 
cyswllt a'ch cronfeydd data i adlewyrchu hyn. Gellir cael rhagor o wybodaeth ar 
y wefan yma.<http://www3.uwic.ac.uk/English/News/Pages/UWIC-Name-Change.aspx>

-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html

Re: Upgrade to 2.2.0

2012-10-09 Thread John Dennis

On 10/09/2012 10:23 AM, Morris, Andi wrote:

I’ve just updated my freeradius servers from 2.1.7 to 2.1.12 via yum
update and it worked like a charm, I’d always been a little nervous to
do this until now.  This has given me the confidence to look into
upgrading the servers from the source files to get up to 2.2.0.

Reading the README and the INSTALL file from within the tar.gz file I
can see that I need to run

./configure

make

make install

Firstly running ./configure failed because my server (CentOS 5.5) didn’t
have a C compiler installed.  I installed GCC via yum, and on we go.

Now the configure.log tells me I don’t have make installed.  I installed
that via yum, and on we go.

Now configure seems to be going along like the clappers, quicker than I
can read the output to look for errors.

I then ran make, which also seemed to go along just fine.

Then make install, and likewise, nothing obviously wrong.

However when I ran the service in debug mode I can see that it hasn’t
been touched by the installer and is still running version 2.1.12, and
working.


If in fact your build actually succeeded you still have a problem with 
the install step. By default configure will produce a build 
configuration that installs into /usr/local (so as not to interfere with 
system installations) and this won't be anything the service command 
would see (because it's not installed in a normal system location.


If you really want to build for Red Hat based systems I suggest you 
build rpms locally. You can install locally built rpms via "yum 
localinstall".


The process to build a local rpm is detailed in the FreeRADIUS wiki page 
"Red Hat FAQ" (which apparently has moved, maybe someone can provide a 
pointer).


By using a rpm spec file to build rpms from you'll get all the nasty 
details of correct building handled for you. There are 2.2 rpms 
available for Fedora. Just be aware spec files are also tuned for 
specific Red Hat releases, you'll need to understand the differences 
between Fedora and RHEL 5. All in all it can be non-trivial to get all 
the details of building and installing a system daemon correct, this is 
why we normally recommend folks use pre-build packages for their 
distribution.



--
John Dennis 

Looking to carve out IT costs?
www.redhat.com/carveoutcosts/
-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html

Re: Upgrade to 2.2.0

2012-10-09 Thread alan buxey
Hi,

>./configure
>make
>make install
> 
>Firstly running ./configure failed because my server (CentOS 5.5) didn’t
>have a C compiler installed.  I installed GCC via yum, and on we go.

i see you've already had advise with yum groups - if you did carry on you'd
see tools missing which can you find what RPM to install via yum too - 

>Now the configure.log tells me I don’t have make installed.  I installed
>that via yum, and on we go.

./configure --with-whatever-options | grep WARN

you need to read the WARN to see what other things you need to install most 
important would be openssl-devel for EAP support!  ignore the things you never 
want to
use

alan
-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html

RE: Upgrade to 2.2.0

2012-10-09 Thread Morris, Andi
> I guess there’s something here to show what’s wrong?  Is there any log
> created by make and make install?

  They log what they're doing to standard out.  The intention is for you to 
read it.

Fair enough, the output on screen was scrolling far too fast to read, I 
should probably have specified an output file.

>  Do I need to specify an installation
> directory or does the code know where my existing installation is?

  There is no magic in the code to discover your existing installation.
 Using "./configure --help" will show you the default install locations.

Again, that's a fair comment.  I was just following the instructions in 
the INSTALL file which doesn't state that an installation directory needs to be 
specified.  I'll check out that help file as you recommend.

Thanks again,
Andi


From 1st November 2011 UWIC changed its title to Cardiff Metropolitan 
University. From the 6th December 2011, as part of this change, all email 
addresses which included @uwic.ac.uk have changed to @cardiffmet.ac.uk. All 
emails sent from Cardiff Metropolitan University will now be sent from the new 
@cardiffmet.ac.uk address. Please could you ensure that all of your contact 
records and databases are updated to reflect this change. Further information 
can be found on the website 
here.

Ar Dachwedd y 1af 2011 newidiodd UWIC ei henw i Brifysgol Fetropolitan 
Caerdydd. O Ragfyr 6ed, fel rhan o'r newid yma, bydd pob cyfeiriad e-bost sy'n 
cynnwys @uwic.ac.uk yn newid i @cardiffmet.ac.uk. Bydd yr holl ebyst a 
ddanfonir o Brifysgol Fetropolitan Caerdydd yn cael eu danfon o‘r cyfeiriad 
@cardiffmet.ac.uk newydd. Gwnewch yn siwr eich bod yn diweddaru eich cofnodion 
cyswllt a'ch cronfeydd data i adlewyrchu hyn. Gellir cael rhagor o wybodaeth ar 
y wefan yma.

-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html

RE: Upgrade to 2.2.0

2012-10-09 Thread Morris, Andi
Oh dear, that's pretty glum news.  I wasn't in this role when the server was 
setup, so I'm not sure why it would be as broken as it is.

Perhaps I'll leave these servers at 2.1.12 until the yum repository is update 
to 2.2.0, with the thought of getting a fresh install on a new server asap.

Cheers for your help.

Andi

-Original Message-
From: freeradius-users-bounces+amorris=cardiffmet.ac...@lists.freeradius.org 
[mailto:freeradius-users-bounces+amorris=cardiffmet.ac...@lists.freeradius.org] 
On Behalf Of Phil Mayers
Sent: 09 October 2012 15:53
To: freeradius-users@lists.freeradius.org
Subject: Re: Upgrade to 2.2.0

On 09/10/12 15:23, Morris, Andi wrote:

>
> Firstly running ./configure failed because my server (CentOS 5.5)
> didn’t have a C compiler installed.  I installed GCC via yum, and on we go.
>
> Now the configure.log tells me I don’t have make installed.  I
> installed that via yum, and on we go.

You need more than "gcc" and "make". A *lot* more.

Try:

yum groupinstall "Development Tools"
yum groupinstall "Development Libraries"

> conftest.c:8:28: error: ac_nonexistent.h: No such file or directory
>
> conftest.c:8:28: error: ac_nonexistent.h: No such file or directory
>
> conftest.c:16: error: size of array 'off_t_is_large' is negative
>
> conftest.c:26: error: 'not' undeclared (first use in this function)

Your build environment is horribly broken. I'm surprised "configure"
succeeded. It should really have failed.
-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


From 1st November 2011 UWIC changed its title to Cardiff Metropolitan 
University. From the 6th December 2011, as part of this change, all email 
addresses which included @uwic.ac.uk have changed to @cardiffmet.ac.uk. All 
emails sent from Cardiff Metropolitan University will now be sent from the new 
@cardiffmet.ac.uk address. Please could you ensure that all of your contact 
records and databases are updated to reflect this change. Further information 
can be found on the website 
here.<http://www3.uwic.ac.uk/English/News/Pages/UWIC-Name-Change.aspx>

Ar Dachwedd y 1af 2011 newidiodd UWIC ei henw i Brifysgol Fetropolitan 
Caerdydd. O Ragfyr 6ed, fel rhan o'r newid yma, bydd pob cyfeiriad e-bost sy'n 
cynnwys @uwic.ac.uk yn newid i @cardiffmet.ac.uk. Bydd yr holl ebyst a 
ddanfonir o Brifysgol Fetropolitan Caerdydd yn cael eu danfon o‘r cyfeiriad 
@cardiffmet.ac.uk newydd. Gwnewch yn siwr eich bod yn diweddaru eich cofnodion 
cyswllt a'ch cronfeydd data i adlewyrchu hyn. Gellir cael rhagor o wybodaeth ar 
y wefan yma.<http://www3.uwic.ac.uk/English/News/Pages/UWIC-Name-Change.aspx>

-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html

Re: Upgrade to 2.2.0

2012-10-09 Thread Alan DeKok
Morris, Andi wrote:
> I guess there’s something here to show what’s wrong?  Is there any log
> created by make and make install?

  They log what they're doing to standard out.  The intention is for you
to read it.

>  Do I need to specify an installation
> directory or does the code know where my existing installation is?

  There is no magic in the code to discover your existing installation.
 Using "./configure --help" will show you the default install locations.

  Alan DeKok.
-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html

Re: Upgrade to 2.2.0

2012-10-09 Thread Phil Mayers

On 09/10/12 15:23, Morris, Andi wrote:



Firstly running ./configure failed because my server (CentOS 5.5) didn’t
have a C compiler installed.  I installed GCC via yum, and on we go.

Now the configure.log tells me I don’t have make installed.  I installed
that via yum, and on we go.


You need more than "gcc" and "make". A *lot* more.

Try:

yum groupinstall "Development Tools"
yum groupinstall "Development Libraries"


conftest.c:8:28: error: ac_nonexistent.h: No such file or directory

conftest.c:8:28: error: ac_nonexistent.h: No such file or directory

conftest.c:16: error: size of array 'off_t_is_large' is negative

conftest.c:26: error: 'not' undeclared (first use in this function)


Your build environment is horribly broken. I'm surprised "configure" 
succeeded. It should really have failed.

-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html


Upgrade to 2.2.0

2012-10-09 Thread Morris, Andi
I've just updated my freeradius servers from 2.1.7 to 2.1.12 via yum update and 
it worked like a charm, I'd always been a little nervous to do this until now.  
This has given me the confidence to look into upgrading the servers from the 
source files to get up to 2.2.0.

Reading the README and the INSTALL file from within the tar.gz file I can see 
that I need to run
./configure
make
make install

Firstly running ./configure failed because my server (CentOS 5.5) didn't have a 
C compiler installed.  I installed GCC via yum, and on we go.
Now the configure.log tells me I don't have make installed.  I installed that 
via yum, and on we go.

Now configure seems to be going along like the clappers, quicker than I can 
read the output to look for errors.
I then ran make, which also seemed to go along just fine.
Then make install, and likewise, nothing obviously wrong.

However when I ran the service in debug mode I can see that it hasn't been 
touched by the installer and is still running version 2.1.12, and working.

Looking back through and grepping config.log for 'error' I see the following:
conftest.c:8:28: error: ac_nonexistent.h: No such file or directory
conftest.c:8:28: error: ac_nonexistent.h: No such file or directory
conftest.c:16: error: size of array 'off_t_is_large' is negative
conftest.c:26: error: 'not' undeclared (first use in this function)
conftest.c:26: error: (Each undeclared identifier is reported only once
conftest.c:26: error: for each function it appears in.)
conftest.c:26: error: expected ';' before 'big'
| /* Override any GCC internal prototype to avoid an error.
| /* Override any GCC internal prototype to avoid an error.
| /* Override any GCC internal prototype to avoid an error.
| /* Override any GCC internal prototype to avoid an error.
| /* Override any GCC internal prototype to avoid an error.
| /* Override any GCC internal prototype to avoid an error.
| /* Override any GCC internal prototype to avoid an error.
| /* Override any GCC internal prototype to avoid an error.
| /* Override any GCC internal prototype to avoid an error.
| /* Override any GCC internal prototype to avoid an error.
| /* Override any GCC internal prototype to avoid an error.
| /* Override any GCC internal prototype to avoid an error.
| /* Override any GCC internal prototype to avoid an error.
| /* Override any GCC internal prototype to avoid an error.
| /* Override any GCC internal prototype to avoid an error.
| /* Override any GCC internal prototype to avoid an error.
| /* Override any GCC internal prototype to avoid an error.
| /* Override any GCC internal prototype to avoid an error.
| /* Override any GCC internal prototype to avoid an error.
| /* Override any GCC internal prototype to avoid an error.
conftest.c:66:22: error: resource.h: No such file or directory
conftest.c:33:22: error: resource.h: No such file or directory
conftest.c:83:21: error: winsock.h: No such file or directory
conftest.c:50:21: error: winsock.h: No such file or directory
conftest.c:85:26: error: sys/security.h: No such file or directory
conftest.c:52:26: error: sys/security.h: No such file or directory
conftest.c:90:18: error: prot.h: No such file or directory
conftest.c:57:18: error: prot.h: No such file or directory
conftest.c:94:17: error: sia.h: No such file or directory
conftest.c:61:17: error: sia.h: No such file or directory
conftest.c:94:18: error: siad.h: No such file or directory
conftest.c:61:18: error: siad.h: No such file or directory
| /* Override any GCC internal prototype to avoid an error.
| /* Override any GCC internal prototype to avoid an error.
| /* Override any GCC internal prototype to avoid an error.
| /* Override any GCC internal prototype to avoid an error.
conftest.c:102: error: void value not ignored as it ought to be
conftest.c:109: error: 'struct utmpx' has no member named 'ut_xtime'
| /* Override any GCC internal prototype to avoid an error.
| /* Override any GCC internal prototype to avoid an error.
conftest.c:114: error: too many arguments to function 'ctime_r'

I guess there's something here to show what's wrong?  Is there any log created 
by make and make install?  Do I need to specify an installation directory or 
does the code know where my existing installation is?

Cheers in advance for any help.
Andi


>From 1st November 2011 UWIC changed its title to Cardiff Metropolitan 
>University. From the 6th December 2011, as part of this change, all email 
>addresses which included @uwic.ac.uk have changed to @cardiffmet.ac.uk. All 
>emails sent from Cardiff Metropolitan University will now be sent from the new 
>@cardiffmet.ac.uk address. Please could you ensure that all of your contact 
>records and databases are updated to reflect this change. Further information 
>can be found on the website 
>here.

Ar Dachwedd y 1af 2011 newidiodd UWIC ei henw i Brifysgol Fetropolitan 
Caerdydd. O Ragfyr 6ed, fel