Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
appnotes:dhcp_-_build_instructions [2009/04/23 12:53] jmcdowell |
appnotes:dhcp_-_build_instructions [2009/04/23 12:57] (current) jmcdowell |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | Remember, as I stated earlier, we want to build everything as static binaries. This usually requires that we make some changes to the build process or invoke special switches for the config process. | + | Remember, as I stated earlier, we want to build everything as static binaries. This usually requires that we make some changes to the build process or invoke special switches for the config process.\\ |
+ | \\ | ||
+ | (Note : Due to compilation errors, you must download "dhcp-4.1.1b1.tar.gz" or above. As you will see, I started experiencing problems that are beyond my abilities. Switching to "dhcp-4.1.1b1" seems to have solved those problems for now.)\\ | ||
+ | \\ | ||
+ | Extract your dhcp source archive in your /scratch directory. From /scratch execute "tar xvzf /scratch/dhcp-xxxxx.tar.gz" This assumes you have placed the archive in /scratch. If not, simply point to the correct location and extract the archive while in /scratch.\\ | ||
+ | \\ | ||
+ | In the case of DHCP, we have to execute the following switches during the configure process.\\ | ||
+ | \\ | ||
+ | Change to your DHCP src directory. In my case. "cd /scratch/dhcp-4.1.0/"\\ | ||
+ | \\ | ||
+ | Then execute the following command..\\ | ||
+ | CFLAGS="-static" ./configure\\ | ||
+ | \\ | ||
+ | Once the configure process is complete, and provided there were no errors.\\ | ||
+ | Execute the following commands.\\ | ||
+ | \\ | ||
+ | make clean\\ | ||
+ | \\ | ||
+ | Then\\ | ||
+ | \\ | ||
+ | make\\ | ||
+ | \\ | ||
+ | I experienced <del>[[errors]]</del> during the build process. Click the word errors to learn what my work around(s) was/were.\\ | ||
+ | ( As stated above, in the end, the work around was to advance to a higher version of dhcp )\\ | ||
+ | \\ | ||
+ | Again, provided there were no errors during the build process you should be left with a file in /scratch/dhcp-4.1.1b1/client named "dhclient".\\ | ||
+ | \\ | ||
+ | Verify that it was built statically by executing the following command.\\ | ||
+ | file /scratch/dhcp-4.1.1b1/bash ( Fully path it to make sure it doesn't pick up on anything else. )\\ | ||
- | (Note : Due to compilation errors, you must download "dhcp-4.1.1b1.tar.gz". As you will see, I started experiencing problems that are beyond my abilities. Switching to "dhcp-4.1.1b1" seems to have solved those problems for now.) | + | Your output should look like this.\\ |
- | + | [root@demo dhcp-4.1.1b1]# file /scratch/dhcp-4.1.1b1/client/dhclient \\ | |
- | Extract your dhcp source archive in your /scratch directory. From /scratch execute "tar xvzf /scratch/dhcp-xxxxx.tar.gz" This assumes you have placed the archive in /scratch. If not, simply point to the correct location and extract the archive while in /scratch. | + | /scratch/dhcp-4.1.1b1/client/dhclient: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, statically linked, not stripped\\ |
- | + | \\ | |
- | In the case of DHCP, we have to execute the following switches during the configure process. | + | If it looks like the example below, you must figure out what has gone wrong. It is more trouble than it's worth. ( IMH0 ) To build a bunch of dynamically linked packages that you have to find all the libs for.\\ |
- | + | \\ | |
- | Change to your DHCP src directory. In my case. "cd /scratch/dhcp-4.1.0/" | + | /scratch/dhcp-4.1.1b1/client/dhclient: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), not stripped <-- THIS IS BAD!\\ |
- | + | ||
- | Then execute the following command.. | + | |
- | CFLAGS="-static" ./configure | + | |
- | + | ||
- | Once the configure process is complete, and provided there were no errors. | + | |
- | Execute the following commands. | + | |
- | + | ||
- | make clean | + | |
- | + | ||
- | Then | + | |
- | + | ||
- | make | + | |
- | + | ||
- | I experienced <del>[[errors]]</del> during the build process. Click the word errors to learn what my work around(s) was/were. | + | |
- | ( As stated above, in the end, the work around was to advance to a higher version of dhcp ) | + | |
- | + | ||
- | Again, provided there were no errors during the build process you should be left with a file in /scratch/dhcp-4.1.1b1/client named "dhclient". | + | |
- | + | ||
- | Verify that it was built statically by executing the following command. | + | |
- | file /scratch/dhcp-4.1.1b1/bash ( Fully path it to make sure it doesn't pick up on anything else. ) | + | |
- | + | ||
- | Your output should look like this. | + | |
- | [root@demo dhcp-4.1.1b1]# file /scratch/dhcp-4.1.1b1/client/dhclient | + | |
- | /scratch/dhcp-4.1.1b1/client/dhclient: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, statically linked, not stripped | + | |
- | + | ||
- | If it looks like this, you must figure out what has gone wrong. It is more trouble than it's worth. ( IMH0 ) To build a bunch of dynamically linked packages that you have to find all the libs for. | + | |
- | + | ||
- | /scratch/dhcp-4.1.1b1/client/dhclient: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), not stripped <-- THIS IS BAD! | + | |