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

    Creating pfSense 2.0 Developers ISO on FreeBSD Beta 8.1

    Development
    6
    70
    44.6k
    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

      Hi Jimp,

      thanks. 
      just fyi… I ended up using freebsd 8.1 RC1 as my base.
      Then i run through the steps as outlined.
      The version I set is RELENG_8_1...
      But it seems that my FREEBSD_BRANCH is 8_0 as shown below...
      Is there something wrong with that?

      Here's my pfsense-build.conf below.

      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=cvsup4.us.freebsd.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
      freebsd81rc1386#

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

        No that all looks right. Some things are named 8_0 and haven't been renamed to 8_1 yet, but they work for any 8, not just 8_0.

        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,

          interesting… I wonder why it's not working...
          here's the full text of the error I'm getting during apply-kernel-patches.sh
          If you have any ideas - I'm more than happy to try it out...

          Setting CVSUp host to cvsup4.us.freebsd.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...Hunk #1 failed at 1637.
          Hunk #2 failed at 1669.
          2 out of 2 hunks failed--saving rejects to sys/net/if.c.rej
          Hunk #1 failed at 875.
          1 out of 1 hunks failed--saving rejects to sys/net/if_var.h.rej
          Hunk #1 failed at 519.
          Hunk #2 failed at 686.
          Hunk #3 failed at 797.
          3 out of 3 hunks failed--saving rejects to sys/net/route.c.rej
          Hunk #1 failed at 55.
          Hunk #2 failed at 674.
          2 out of 2 hunks failed--saving rejects to sys/net/rtsock.c.rej
          Hunk #1 failed at 1379.
          1 out of 1 hunks failed--saving rejects to sys/netinet/in.c.rej
          Hunk #1 failed at 590.
          Hunk #2 failed at 707.
          2 out of 2 hunks failed--saving rejects to sys/netinet/in_pcb.c.rej
          Hunk #1 failed at 230.
          1 out of 1 hunks failed--saving rejects to sys/netinet/ip_options.c.rej
          Hunk #1 failed at 247.
          1 out of 1 hunks failed--saving rejects to sys/netinet/ip_output.c.rej
          Done!
          Finding patch rejects...

          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

          ####################################
          Something went wrong, check errors!
          ####################################

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

            Hi Jimp,

            in case it helps - here's exactly the steps I'm doing:

            1.) install freebsd 8.1 RC1

            2.) update the kernel source with csup
            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

            ./apply_kernel_patches.sh

            (here's where I get the reject errors…)

            (the rest I don't get to because of the above errors)

            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

            10 now create the ISO

            cd/ home/pfsense/tools/builder_scripts

            ./build_iso.sh

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

              Hi Jimp,

              one more thing - I'm building this as a VM… could that be the cause?

              regards
              TJ

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

                VM is fine, nothing wrong with that.

                Just checked on our main snapshot builder and the patches are failing there, too, so it must be an upstream update that happened.

                EDIT: I restarted the build and it worked. Try updating the sources, git repos, etc, and then make another attempt.

                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,

                  ok I guess that's good news - and will get fixed soon. 
                  What I notice is that the errors are all related to the tcp stack
                  ip.c
                  route.c
                  rtsock.c
                  etc…

                  So, would seem to me that something has changed there.
                  What does it mean when these are "rejects"?  Is it basically a 'diff' that found between the freebsd baseline and pfrsense baseline?

                  regards
                  TJ

                  1 Reply Last reply Reply Quote 0
                  • 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
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.