Creating pfSense 2.0 Developers ISO on FreeBSD Beta 8.1
-
Not sure what is up with those port building errors, especially the wrapalixresetbutton port as that is very simple and should not fail. You might try to make that one by hand to see what the actual error is:
# cd tools/pfPorts/wrapalixresetbutton/; make all
As for those rejects, they may be leftover from when they did fail. You might need to run:
# ./clean_build.sh
-
Hi Jimp,
thanks.
I went ahead and tried to compile each of the failed builds by hand.1.) dnsmasq built fine
2.) php5-curl did not (see below - looks like it is expecting curl5)
3.) php5-mhash built fine
4.) php5-pcre built fine
5.) php5-pfSense-module built fine
6.) php5-readline module failed (see below)=== php5-curl build errors ===
freebsd81rc1386# cd php5-curl/
freebsd81rc1386# make all
===>Â Vulnerability check disabled, database not found
===>Â License check disabled, port has not defined LICENSE
===>Â Extracting for php52-curl-5.2.13
=> MD5 Checksum OK for php-5.2.13.tar.bz2.
=> SHA256 Checksum OK for php-5.2.13.tar.bz2.
===>Â Patching for php52-curl-5.2.13
===>Â php52-curl-5.2.13 depends on file: /usr/local/bin/phpize - found
===>Â php52-curl-5.2.13 depends on file: /usr/local/bin/autoconf-2.62 - found
===>Â php52-curl-5.2.13 depends on shared library: curl.5 - not found
===>Â Â Verifying install for curl.5 in /usr/ports/ftp/curl
===>Â Returning to build of php52-curl-5.2.13
Error: shared library "curl.5" does not exist
*** Error code 1Stop in /usr/home/pfsense/tools/pfPorts/php5-curl.
=== php5-readline build error ====
===>Â Script "configure" failed unexpectedly.
Please report the problem to admin@lissyara.su [maintainer] and attach the
"/usr/home/pfsense/tools/pfPorts/php5-readline/work/php-5.2.13/ext/readline/config.log"
including the output of the failure of your make command. Also, it might be
a good idea to provide an overview of all packages installed on your system
(e.g. anls /var/db/pkg
).
*** Error code 1 -
Did you ever go back and try to install readline on its own?
cd /usr/ports/devel/readline/; make all install clean
You might have to do the same with curl:
cd /usr/ports/ftp/curl; make all install clean
-
Hi Jimp,
yes I did - sorry I accidentally omitted that in the earlier post.
I did manually build readline - and it built fine - no issues.
I'm going to try and manually build all the packages that failed - and see what the error is.
Hopefully that can produce some new findings.So, my understanding is
1.) run clean_build.sh
2.) run apply_kernel_patches.sh
3.) then for all that failed - manually build each of those packages
4.) if errors from manual build - check errors to try and resolve…Sound good? Or am I missing something here?
-
Sounds about right, though usually it isn't that complicated. Not sure why so many things are failing there.
-
Jimp,
so maybe there is something wrong with the procedure I've listed.
Can you check it through?
Maybe I have some of the steps in the wrong order (in particular the later steps)?1.) install freebsd 8.1 RC1
2.) update the kernel source with csup
(taken from http://www.freebsd.org/doc/en/books/handbook/makeworld.html)2a.) copy the supfile to the /etc
cp /usr/share/examples/cvsup/standard-supfile /etc/supfile
2b.) edit the supfile
vi /etc/supfile
2c.) add the csup server
host=CHANGE_THIS.FreeBSD.org
Change to:
host=cvsup4.us.FreeBSD.org
2d.) run csup
#> csup /etc/supfile3.) build the kernel
cd /usr/src
make buildworld
make buildkernel
make installkernel
shutdown -r now
4.) boot into single user mode
boot -s from the boot loader prompt
adjkerntz -i
mount -a -t ufs
mergemaster -p
cd /usr/src
make installworld
mergemaster
reboot
5.) update the ports directory using csup
rm -fr /usr/ports/*
csup -L 2 /etc/supfile
6.) configure make (step 1 from devwiki.pfsense/org/DevelopersBootStrapAndevIso)
echo "WITHOUT_X11=yo" >> /etc/make.conf
mkdir -p /home/pfsense/pfSenseGITREPO /home/pfsense/installer /usr/pfSensesrc
7.) grab ports and build GIT
portsnap fetch extract
cd /usr/ports/textproc/expat2 && make depends install
cd /usr/ports/devel/git && make depends install
(take the standard default settings from the menu's)
cd /usr/ports/sysutils/fastest_cvsup/ && make depends install
(take the standard default settings from the menu's)
rehash
8.) continue on with the GIT repo checkouts
cd /home/pfsense && git clone http://gitweb.pfsense.org/pfsense-tools/mainline.git tools
cd /home/pfsense && git clone http://gitweb.pfsense.org/freesbie2/mainline.git freesbie2
cd /home/pfsense/tools/builder_scripts && chmod a+rx *.sh
9.) now do the pfsense stuff
cd /home/pfsense/tools/builder_scripts
./set_version.sh RELENG_8_1 cvsup4.us.freebsd.org
# ./clean_build.sh
./apply_kernel_patches.sh
(here's where I get the reject errors…)
./update_git_repos.sh
(the below items might need to be manually built for anything that failed - E.G.: )
cd /home/pfsense/tools/pfPorts/php5; make all install clean
cd /home/pfsense/tools/pfPorts/php5-pfSense-module/; make all install clean
cd /usr/ports/devel/readline/; make all install clean
# cd /usr/ports/curl; make all install clean
./build_iso.sh
-
About point 5.), I think you need to use cvs tag "." instead of "RELENG_8_1" for fetching ports, /usr/bin/csup -h cvsup.uk.FreeBSD.org
/usr/share/examples/cvsup/ports-supfile should do the job (replace cvsup.uk with a mirror close to you). -
@kpa:
About point 5.), I think you need to use cvs tag "." instead of "RELENG_8_1" for fetching ports, /usr/bin/csup -h cvsup.uk.FreeBSD.org
/usr/share/examples/cvsup/ports-supfile should do the job (replace cvsup.uk with a mirror close to you).He's using portsnap to get the ports, that supfile was just for the system sources (though since it was done earlier, it doesn't need to be done again)
-
-
and for some reason, that still uses RELENG_8-supfile, instead of RELENG_8_1-supfile.
Whichever supfile shows in your pfsense-build.conf, make sure it has a line like this in it, if it uses RELENG_8_1
date=2010.06.25.00.00.00
I committed an update to that file, too, so it should work. Or it does for me again…
builder# ./set_version.sh RELENG_8_1 cvsup.livebsd.org >>> Setting builder environment to use RELENG_8_1 ... # Comment out the following line if you would like to automatically select an update server. >>> Custom pfsense-build.conf contains: --------------------------------------------------------------------------------------- # set_version.sh generated defaults export PFSENSE_VERSION=2.0-BETA3 export FREEBSD_VERSION=8 export FREEBSD_BRANCH=RELENG_8_0 export PFSENSETAG=HEAD export PFSPATCHFILE=/usr/home/pfsense/tools/builder_scripts/../builder_scripts/patches.RELENG_8_1 export PFSPATCHDIR=/usr/home/pfsense/tools/builder_scripts/../patches/RELENG_8_1 export SUPFILE=/usr/home/pfsense/tools/builder_scripts/../builder_scripts/RELENG_8-supfile export CUSTOM_COPY_LIST=/usr/home/pfsense/tools/builder_scripts/../builder_scripts/copy.list.RELENG_8_0 export OVERRIDE_FREEBSD_CVSUP_HOST=cvsup.livebsd.org export BASE_DIR=/usr/home/pfsense/tools/builder_scripts/../.. export BUILDER_TOOLS=/usr/home/pfsense/tools/builder_scripts/.. export BUILDER_SCRIPTS=/usr/home/pfsense/tools/builder_scripts export PFSPORTSFILE=buildports.RELENG_2_0 --------------------------------------------------------------------------------------- NOTE: pfsense-build.conf values updated. These values override pfsense_local.sh !! NOTE2: pfPorts will be rebuilt! builder# ./update_git_repos.sh >>> Updating GIT REPO freesbie2...Done! >>> Updating GIT REPO tools...Done! builder# ./apply_kernel_patches.sh  >>> Setting CVSUp host to cvsup.livebsd.org >>> Removing needed files listed in patches.RELENG_8_1 HEAD >>> Obtaining FreeBSD sources RELENG_8-supfile...Done! >>> Removing old patch rejects... >>> Applying patches, please wait...Done! >>> Finding patch rejects... builder#
-
HI guys,
good news is that it now is able to get past the apply-kernel-patches.sh - thanks to the changes and info sent on how to properly setup the environment by Jimp. Â thanks for that.
So - that is great.  I'm now trying to build the iso - and hopefully will have some good news for you in about 1 hour…cross my fingers (or press my thumbs in german)...
regards
TJ -
HI Guys,
the apply-kernel-patches.sh went through clean as I mentioned earlier…
But when I ran the build-iso.sh... I got a few errors seen below:
I'm not sure if openssl for php is really needed. But, it then looks like it is failing on dfuife_curses.../usr/ports/security/php5-openssl/work/php-5.2.13/ext/openssl/openssl.c:153: error: 'zif_openssl_crl_new' undeclared here (not in a function)
/usr/ports/security/php5-openssl/work/php-5.2.13/ext/openssl/openssl.c:154: error: 'zif_openssl_crl_revoke_cert_by_serial' undeclared here (not in a function)
/usr/ports/security/php5-openssl/work/php-5.2.13/ext/openssl/openssl.c:155: error: 'zif_openssl_crl_revoke_cert' undeclared here (not in a function)
/usr/ports/security/php5-openssl/work/php-5.2.13/ext/openssl/openssl.c:156: error: 'zif_openssl_crl_export' undeclared here (not in a function)
/usr/ports/security/php5-openssl/work/php-5.2.13/ext/openssl/openssl.c:157: error: 'zif_openssl_crl_export_file' undeclared here (not in a function)
*** Error code 1
1 error
*** Error code 1ERROR Building dnsmasq
ERROR Building php5-curl
ERROR Building php5-openssl
ERROR Building php5-readline
ERROR Building syslog-ng
Building athstats...main.c: In function 'getfmt':
main.c:73: warning: implicit declaration of function 'strcasecmp'and then at the very end...
Checking BSDInstaller health... dfuife_curses missing [ERROR!]
-
Hi Jimp,
I'm going to and give it a try again and first run clean_build.sh before hand.
Here's the steps that I'm going to try.
btw… I've been trying the cvsup.livebsd.org mirror - but it doesn't seem to work. I assume the livebsd.org mirror is the same as the freebsd - right?cd /home/pfsense/tools/builder_scripts
./clean_build.sh
./set_version.sh RELENG_8_1 cvsup.livebsd.org
./update_git_repos.sh
./apply_kernel_patches.sh
# ./build-iso.sh
regards
TJ -
A fix for curl and readline just went into the repo from another dev.
-
Hi Jimp,
I went through the steps that I outlined in my earlier post and
 # ./clean_build.sh (ok)
 # ./set_version.sh RELENG_8_1 cvsup4.us.freebsd.org (livebsd.org doesn't seem to connect)..
 # ./update_git_repos.sh (ok)
 # ./apply_kernel_patches.sh (ok)
 # ./build-iso.sh (errors below…)so far... still a few errors during build-iso.sh.
It still doesn't generate an iso...
Any tips on what I can do to try and help to track these down?.
.
...
the O_NONBLOCK symbol with a syntax error. This is apparently a
sh error. Rerunning Configure with ksh apparently fixes the
error, then please read the section "64 bit data in perl 5.6.0 and 5.6.1"
 /usr/local/lib/perl5/5.10.1/perl/man/man3/CPANPLUS::Error.3Build dependency freetype2 of rrdtool
.
.
...
Building olsrd
src/NetworkInterfaces.c:54:47: error: linux/if_ether.h: No such file or directory
src/NetworkInterfaces.c:55:92: error: linux/if_packet.h: No such file or directory
src/NetworkInterfaces.c:56:46: error: linux/if_tun.h: No such file or directory
src/Bmf.c:52:47: error: linux/if_ether.h: No such file or directory
src/Bmf.c:53:75: error: linux/if_packet.h: No such file or directory
Building pftop
.
.
...
Building php5-openssl
/usr/ports/security/php5-openssl/work/php-5.2.13/ext/openssl/openssl.c:153: error: 'zif_openssl_crl_new' undeclared here (not in a function)
/usr/ports/security/php5-openssl/work/php-5.2.13/ext/openssl/openssl.c:154: error: 'zif_openssl_crl_revoke_cert_by_serial' undeclared here (not in a function)
/usr/ports/security/php5-openssl/work/php-5.2.13/ext/openssl/openssl.c:155: error: 'zif_openssl_crl_revoke_cert' undeclared here (not in a function)
/usr/ports/security/php5-openssl/work/php-5.2.13/ext/openssl/openssl.c:156: error: 'zif_openssl_crl_export' undeclared here (not in a function)
/usr/ports/security/php5-openssl/work/php-5.2.13/ext/openssl/openssl.c:157: error: 'zif_openssl_crl_export_file' undeclared here (not in a function)
*** Error code 1
1 error
*** Error code 1
.
.
...
Building php5-readline
configure: error: Please reinstall libedit - I cannot find readline.h
.
.
...
ERROR Building dnsmasq
ERROR Building php5-openssl
ERROR Building php5-readline
ERROR Building syslog-ng
.
.
...
cp: directory /usr/home/pfsense/tools/builder_scripts/../../installer/installer/scripts/build does not exist
.: Can't open ./pfsense_local.sh: No such file or directory
.
.
...
Checking BSDInstaller health... dfuife_curses missing [ERROR!]####################################
Something went wrong, check errors!
####################################Press enter to continue.
Terminated…
-
Looks like someone is working on some PHP fixes in the tools repo, I'd hold off for a day or so and try again.
Looks like FreeBSD's switch to using php52 ports instead of php5 (which is now php 5.3) might have caused some problems.
-
HI Jimp,
ok thanks for the heads up. What about the other errors?
Are they all critical? Or can I manage to build an ISO with the other errors after php is fixed?e.g.:
ERROR Building dnsmasq
ERROR Building syslog-ng
and
Building olsrd
src/NetworkInterfaces.c:54:47: error: linux/if_ether.h: No such file or directory
src/NetworkInterfaces.c:55:92: error: linux/if_packet.h: No such file or directory
src/NetworkInterfaces.c:56:46: error: linux/if_tun.h: No such file or directory
src/Bmf.c:52:47: error: linux/if_ether.h: No such file or directory
src/Bmf.c:53:75: error: linux/if_packet.h: No such file or directory
Building pftop
and
the O_NONBLOCK symbol with a syntax error. This is apparently a
sh error. Rerunning Configure with ksh apparently fixes the
error, then please read the section "64 bit data in perl 5.6.0 and 5.6.1"
 /usr/local/lib/perl5/5.10.1/perl/man/man3/CPANPLUS::Error.3
Build dependency freetype2 of rrdtool -
not sure about dnsmasq and syslog-ng, but the olsr and other errors are not really errors, they are normal output that just happens to contain the string "error", or harmless.
-
ok thanks.
I will eventually need the dnsmasq - but hoping that i can still create the iso irregardless of whether those 2 compile or not.which forum (or url) can i see the status of the php5 changes being made to freebsd?
that way I can try to keep an eye out for it (or communicate with the developer).thanks
TJ -
Keep an eye on the tools repo commit log:
https://rcs.pfsense.org/projects/pfsense-tools
dnsmasq is being worked on right now.
The person making the changes for php52 might not finish up until Monday, they went home early to watch the world cup match. :-)