Page 1 of 1
PHP 4.4.2-3 rebuild error
Posted: Mon Apr 10, 2006 1:43 pm
by jab_job
Hi,
I'm currently usnig your PHP release: php-4.4.2-3.art.
Because having some problem on my server (no ehought FileDescriptor by default) I had to recompile couple of programs, including PHP to raise this value.
I successfuly recompile all apps wihtout error (openssl,curl,httpd,libc-client) expect fof PHP.
When I start rebuild the RPM, I got this error :
configure: error: This c-client library is built with Kerberos support.
Add --with-kerberos to your configure line. Check config.log for details.
error: Bad exit status from /var/tmp/rpm-tmp.92692 (%build)
RPM build errors:
Bad exit status from /var/tmp/rpm-tmp.92692 (%build)
Any idea of my mistake?
Here's my version: libc-client-2002e-8.src.rpm
Thanks !
Jean
Posted: Mon Apr 10, 2006 10:03 pm
by scott
Welcome to my world

The package you need to use is dependent on your operating system, just take a look in the .spec file and it will tell you which one you need for your distro.
As a side note, my php rpms are built for high FD environments by default. I think Ive got it set to either 4x or 8x the normal cap.
Posted: Tue Apr 11, 2006 10:15 am
by jab_job
Thanks Scott.
Recompiling the other apps solve all my problem except 1, problem with PHP page that use FTP fonction (got this problem with one CMS and wt SiteBuilder). So, as I have no other idea, I'll try recompile PHP to be sure the problem came (or not) from this.
But I'm still stuck. It seem's I meet all require packages for this:
%package imap
Requires: php = %{version}-%{release}
Obsoletes: mod_php3-imap, stronghold-php-imap
BuildRequires: krb5-devel, openssl-devel
But I'm having the same error.
I also double check every line with "BuildRequires" in SPECS files and I got all them...
So I'll continue try figured out by myself what's my problem, but if you have other idea, there welcome !
Thanks again,
Jean
Posted: Thu Apr 13, 2006 7:34 am
by koor
Maybey you can try this:
# cat .rpmmacros
%rhfc3 1
# cat .rpmrc
optflags: i386 -O2 -g -march=i386 -mcpu=i686 -L/usr/lib/mysql
# rpmbuild --rebuild php-4.4.2-3.art.src.rpm
With these flags you only get deps errors if the correct rpm isn't installed.
And your kerberos error should be gone.
Greetz,
koor
Edit:
Note %rhfc3 1 <-- means OS is RedHat Fedora Core 3
Posted: Thu Apr 13, 2006 3:55 pm
by jab_job
Ho Yeah!
That's exactly what I needed!!
Everything compiles fine now!
Just for my personel knowledge, what those flag means?
Thanks a lot Koor!!!
Posted: Thu Apr 13, 2006 10:10 pm
by koor
%rhfc3 1
# This sets the OS type.
# Because the ART rpm is for multiple OSes, this way you get the correct dep. checks.
optflags: i386 -O2 -g -march=i386 -mcpu=i686 -L/usr/lib/mysql
# This one, a colleage of mine discovered, fixes a mysql-compat problem.
# Without it, you need to remove the mysql-compat rpm, which is a dep of plesk rpms.
# It just tells your compiler which arch, cpu and mysql lib dir it needs.
Koor
Posted: Fri Apr 14, 2006 8:10 am
by scott
and you were planning on telling me this when?
Also, nother way to define the OS, --define 'rhfc3'
Posted: Fri Apr 14, 2006 8:43 am
by koor
sorry.
I though you all ready knew this.
Posted: Tue Jul 04, 2006 4:26 pm
by georgeolm
This is a newbie-ish question, sorry if it's been answered before.
I'm on CentOS 4.3, and need to run php4.4x, and since ART isn't supporting this branch of php anymore, I've used the src rpm to build the rpms for my system. No problem.
A quick aside for others running CentOS 4.3 is to make sure you call rpmbuild like this:
rpmbuild --define 'rhel4=1' --rebuild php-4.4.2-3.art.src.rpm
Ok, I built the RPMS successfully. Now, in my i386 directory, I have 12 rpms. I thought that a simple rpm -Uvh php-[whatever] would do the trick, but I'm running into dependency errors that I don't know how to get around.
For example, rpm -Uvh php-4.4.2-3.art.i386.rpm gives me an error about php-mbstring dependency. Ok, so I tried installing php mbstring the same way. No luck, it complains about needing the php-4.4.2 rpm. If I understand what it's telling me, they're recursively dependent upon one another.
I read that the rpm "--aid" flag is supposed to help with this when the dependencies are all in the same directory, and still no luck.
I'm hesitant to use the --nodeps option.
Any suggestions, or is --nodeps the way to go? Or am I missing something else altogether?
Thanks to all for your help in advance.
----
Nevermind, wildcards are my friend:
rpm -Uvh php* did the trick

Posted: Tue Jul 04, 2006 7:09 pm
by scott
Heres my 2 step guide to building rpms:
1) Set up a dedicated box for building, or a build tree (a la mock, dar, etc) or a vmware/vserver image. Don't build on your production system(s)
2) install everything (on most distros, this is an actual install setting). Don't waste time playing dependency whack-a-mole, which is what I see most folks struggling with.