Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Creating pfSense 2.0 Developers ISO on FreeBSD Beta 8.1

    Scheduled Pinned Locked Moved Development
    70 Posts 6 Posters 44.6k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • T
      trijames
      last edited by

      Oh - I just saw your updated EDIT…
      Ok - I'll try to update and see if that works...
      Which source should I update?  kernel? or pfsense? or both?

      regards
      TJ

      1 Reply Last reply Reply Quote 0
      • jimpJ
        jimp Rebel Alliance Developer Netgate
        last edited by

        Try this:

        # cd/ home/pfsense/tools/builder_scripts
        # ./update_git_repos.sh
        # ./build_iso.sh
        
        

        Remember: Upvote with the 👍 button for any user/post you find to be helpful, informative, or deserving of recognition!

        Need help fast? Netgate Global Support!

        Do not Chat/PM for help!

        1 Reply Last reply Reply Quote 0
        • T
          trijames
          last edited by

          Jimp,

          not sure if I understand…
          Just in case - I want to check my thinking:
          1.) should I not do the following:
            # ./apply_kernel_patches.sh
            # 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

          So even though apply_kernel_patches.sh failed - I should instead do update_git_repos.sh?
          And also skip the rest?  Is that right?

          Or should I still do the above steps and then also do the update_git_repos.sh?

          regards
          TJ

          1 Reply Last reply Reply Quote 0
          • jimpJ
            jimp Rebel Alliance Developer Netgate
            last edited by

            Whatever you do, do update_git_repos.sh first. I'd just try to build the iso first and see what happens. It should do some of that automatically, but if it fails, then fall back to doing those steps (apply patches, build those ports, etc)

            Though you can compile those ports whether or not the kernel patches apply

            Remember: Upvote with the 👍 button for any user/post you find to be helpful, informative, or deserving of recognition!

            Need help fast? Netgate Global Support!

            Do not Chat/PM for help!

            1 Reply Last reply Reply Quote 0
            • T
              trijames
              last edited by

              ah ok - excellent.  I'll give that a try.

              1 Reply Last reply Reply Quote 0
              • jimpJ
                jimp Rebel Alliance Developer Netgate
                last edited by

                That didn't work. I had to adjust the supfile to have a date, and go back a few days. If you update_git_repos.sh again and then redo the build it should succeed.

                Remember: Upvote with the 👍 button for any user/post you find to be helpful, informative, or deserving of recognition!

                Need help fast? Netgate Global Support!

                Do not Chat/PM for help!

                1 Reply Last reply Reply Quote 0
                • T
                  trijames
                  last edited by

                  Jimp,

                  does it matter which which shell I use to run these?
                  I just saw a warning about ksh as below in the build_iso.sh

                  "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"

                  (I'm building the i386 version)

                  regards
                  TJ

                  1 Reply Last reply Reply Quote 0
                  • T
                    trijames
                    last edited by

                    Hi Jimp,

                    I am getting the following errors when running build_iso.sh - but it continues to run…
                    Did I forget a step?

                    ERROR Building dnsmasq
                    ERROR Building php5-curl
                    ERROR Building php5-mhash
                    ERROR Building php5-pcre
                    ERROR Building php5-pfSense-module
                    ERROR Building php5-readline
                    ERROR Building syslog-ng
                    ERROR Building 3gstat_um175
                    ERROR Building wrapalixresetbutton

                    1 Reply Last reply Reply Quote 0
                    • T
                      trijames
                      last edited by

                      Hi Jimp,

                      one more post …

                      at the end of build_iso.sh - I still get the error.
                      (sorry about all the posts...)

                      WARNING!  Rejected patches found!  Please fix before building!

                      /usr/pfSensesrc/src/sys/net/if.c.rej
                      /usr/pfSensesrc/src/sys/net/if_var.h.rej
                      /usr/pfSensesrc/src/sys/net/route.c.rej
                      /usr/pfSensesrc/src/sys/net/rtsock.c.rej
                      /usr/pfSensesrc/src/sys/netinet/in.c.rej
                      /usr/pfSensesrc/src/sys/netinet/in_pcb.c.rej
                      /usr/pfSensesrc/src/sys/netinet/ip_options.c.rej
                      /usr/pfSensesrc/src/sys/netinet/ip_output.c.rej

                      1 Reply Last reply Reply Quote 0
                      • jimpJ
                        jimp Rebel Alliance Developer Netgate
                        last edited by

                        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
                        

                        Remember: Upvote with the 👍 button for any user/post you find to be helpful, informative, or deserving of recognition!

                        Need help fast? Netgate Global Support!

                        Do not Chat/PM for help!

                        1 Reply Last reply Reply Quote 0
                        • T
                          trijames
                          last edited by

                          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 1

                          Stop 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. an ls /var/db/pkg).
                          *** Error code 1

                          1 Reply Last reply Reply Quote 0
                          • jimpJ
                            jimp Rebel Alliance Developer Netgate
                            last edited by

                            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

                            Remember: Upvote with the 👍 button for any user/post you find to be helpful, informative, or deserving of recognition!

                            Need help fast? Netgate Global Support!

                            Do not Chat/PM for help!

                            1 Reply Last reply Reply Quote 0
                            • T
                              trijames
                              last edited by

                              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?

                              1 Reply Last reply Reply Quote 0
                              • jimpJ
                                jimp Rebel Alliance Developer Netgate
                                last edited by

                                Sounds about right, though usually it isn't that complicated. Not sure why so many things are failing there.

                                Remember: Upvote with the 👍 button for any user/post you find to be helpful, informative, or deserving of recognition!

                                Need help fast? Netgate Global Support!

                                Do not Chat/PM for help!

                                1 Reply Last reply Reply Quote 0
                                • T
                                  trijames
                                  last edited by

                                  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/supfile

                                  3.) 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

                                  1 Reply Last reply Reply Quote 0
                                  • K
                                    kpa
                                    last edited by

                                    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).

                                    1 Reply Last reply Reply Quote 0
                                    • jimpJ
                                      jimp Rebel Alliance Developer Netgate
                                      last edited by

                                      @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)

                                      Remember: Upvote with the 👍 button for any user/post you find to be helpful, informative, or deserving of recognition!

                                      Need help fast? Netgate Global Support!

                                      Do not Chat/PM for help!

                                      1 Reply Last reply Reply Quote 0
                                      • jimpJ
                                        jimp Rebel Alliance Developer Netgate
                                        last edited by

                                        I also noticed that I used this:

                                        ./set_version.sh HEAD

                                        Remember: Upvote with the 👍 button for any user/post you find to be helpful, informative, or deserving of recognition!

                                        Need help fast? Netgate Global Support!

                                        Do not Chat/PM for help!

                                        1 Reply Last reply Reply Quote 0
                                        • jimpJ
                                          jimp Rebel Alliance Developer Netgate
                                          last edited by

                                          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# 
                                          

                                          Remember: Upvote with the 👍 button for any user/post you find to be helpful, informative, or deserving of recognition!

                                          Need help fast? Netgate Global Support!

                                          Do not Chat/PM for help!

                                          1 Reply Last reply Reply Quote 0
                                          • T
                                            trijames
                                            last edited by

                                            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

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.