3
  • I downloaded the source for check install. checkinstall-1.6.2.tar.gz.
  • I then tar -xzvf checkinstall-1.6.2.tar.gz
  • Then I make.

It prints this error:

[root@ip-50-63-180-135 checkinstall-1.6.2]# make
for file in locale/checkinstall-*.po ; do \
            case ${file} in \
                    locale/checkinstall-template.po)  ;; \
                    *) \
                            out=`echo $file | sed -s 's/po/mo/'` ; \
                            msgfmt -o ${out} ${file} ; \
                            if [ $? != 0 ] ; then \
                                    exit 1 ; \
                            fi ; \
                    ;; \
            esac ; \
    done
make -C installwatch
make[1]: Entering directory `/home/sofiane/checkinstall-1.6.2/installwatch'
gcc -Wall -c -D_GNU_SOURCE -DPIC -fPIC -D_REENTRANT -DVERSION=\"0.7.0beta7\" installwatch.c
 installwatch.c:2942: error: conflicting types for 'readlink'
 /usr/include/unistd.h:828: note: previous declaration of 'readlink' was here
 installwatch.c:3080: error: conflicting types for 'scandir'
 /usr/include/dirent.h:252: note: previous declaration of 'scandir' was here
installwatch.c:3692: error: conflicting types for 'scandir64'
/usr/include/dirent.h:275: note: previous declaration of 'scandir64' was here
make[1]: *** [installwatch.o] Error 1
make[1]: Leaving directory `/home/sofiane/checkinstall-1.6.2/installwatch'
make: *** [all] Error 2

I searched extensively on this issue and this solution looks promising. Should I attempt to install checkinstall as an fpm? What would be the best way to go about that?

Centos 6.3 x86_64

SephMerah
  • 159
  • 1
  • 2
  • 8
  • 1
    What is it you're _really_ trying to do? Using `checkinstall` or programs like it to create RPMs is usually the wrong way to go about it. – Michael Hampton Oct 14 '12 at 16:38
  • Install php from source. – SephMerah Oct 14 '12 at 16:57
  • 1
    In that case, `checkinstall` is absolutely the wrong thing to do. (And probably installing PHP from source is, too.) – Michael Hampton Oct 14 '12 at 16:58
  • I attempted to install php using `rpm -Uvh http://repo.webtatic.com/yum/el6/latest.rpm` and then `yum install php54w`. Then after restarting apache my phpinfo() shows up but when I try to run a `index.php` it reports a 500 error. I tried also just `yum install php`. `yum install php-devel` yum install php-cli` `php-common` etc and still 500 error. I figured installing from source is the only thing I can do now. – SephMerah Oct 14 '12 at 17:10
  • 1
    You probably should ask a question regarding the task you _really_ want to accomplish, not this task (which will cause you all sorts of headaches in the future, even if you manage to do it). – Michael Hampton Oct 14 '12 at 17:11
  • Agreed. You should look at your apache error log to see _why_ it is serving 500 errors. –  Oct 14 '12 at 17:22

1 Answers1

1

If you use fpm there will be almost no need to do checkinstall. fpm still has a few warts and does require some post-processing with rpmrebuild. In my case, I got the same error during initial build of checkinstall, said goodbye, and then searched for the RPM through RPMFind.net, where a suitable version emerged.

Have rarely used checkinstall, but fpm was a treat for me. It is even possible to pack fpm into an RPM after the initial gem installation and to reinstall it properly :)

Following up on @Michael Hampton 's request and your clarifications: you have no compelling reason to compile PHP from sources and attempt to track (with your bare feet!) the bleeding-edge of PHP for your production environment. More than any other program, PHP often breaks backward compatibility. However, being able to roll out RPMs is quite helpful for a lot of situations where only the source is available.

EDIT #3: another advantage of fpm is not running under root. Saves a bit of mental stress, actually.

Deer Hunter
  • 1,070
  • 7
  • 17
  • 25