[newbie] Building the source to reflect current config
Title: Message Hello, I am running Mandrake 9.2 and I am trying to install VMware Workstation 4 on it (http://www.vmware.com/products/desktop/ws_features.html). This software requires the header files of the Linux kernel since it makes some changes to them. When I downloaded the 3 disks of Mandrake 9.2, I did not see the Linux source included in them. It's not appearing in the RPM packages either. I downloaded the source from one of the Cooker mirrors and extracted it. VMware is looking for the header files under /usr/src/linux/include and there is nothing there out of the box. So I unpacked the downloaded source files in there and ran a make. Unfortunately, VMware detects differences between the make results and the current running kernel, so it fails. Here is finally my question: short of recompiling the kernel from the source so that my running kernel matches the source, is there a way to grab my current kernel configuration and pass it as a parameter to the "make" command so that I can build the source files to reflect my exact current configuration (version number included)? Thank you in advance for your time. -GS
Re: [newbie] Building the source to reflect current config
On Wed, 31 Dec 2003 07:00, George P. Stathis wrote: Firstly, please lose the Reply-to address. It causes replies to go directly to you rather than the list. Thanks. When I open my KDE control center, the release number is 2.4.22-10mdk and the machine is i686. OK, that is the standard kernel that comes with 9.2 on the disks. Even though your machine is a x686, the rpms you're using are compiled for x586 and makes no difference. Just FYI, it is possible to compile all rpms for x686 but not only does it take a very long time, there is little or no performance gain. So just stick with x586 rpms. The source rpm that I had already found was called kernel-2.4.22.10mdk-1-1mdk.src.rpm. That is NOT the package you want. That is a source rpm that you have to rebuild. The FTP link that you sent is for i596. I looked in the RPMS folder and there is a file called kernel-source-2.4.22-10mdk.i586.rpm. How do I know which source is the right one for me? Yep, this is the package you're after (kernel-source). Install this one if you do not intend to first update your system. I have also been trying to get the Software Media Manager to recognize a local folder under root where I have been downloading the rpm files so that the packages show up in RpmDrake but without success. Does RpmDrake offer something better when compared to simply running the rpm packages standalone? You can add sources using urpmi.addmedia at the command line. Open a terminal, su to root and type (ignore the #, it merely denotes the root console prompt): # urpmi.addmedia options name file://path [ with relative path of synthesis/hdlist ] ***EXAMPLE 1*** I have downloaded rpms which are stored in /shared/downloads/9_2/general. There is no synthesis or hdlist for this directory of rpms: # urpmi.addmedia general file://shared/downloads/9_2/general/ Rpmdrake will now list these under the general source repository. If you prefer to use the gui Software Media Manager: Click Add. Select Type of Medium: Local files Enter a name in Name: eg. general Click Browse. Navigate to the directory containing your downloaded rpms. Click OK. Rpmdrake will now list these under the general source repository. == ***EXAMPLE 2*** I have downloaded all the security/bug fixes and the relative hdlist which are stored in /shared/downloads/9_2/updates (hdlist.cz in same directory): # urpmi.addmedia --update updates file://shared/downloads/9_2/updates/ with ./hdlist.cz The --update option tells urpmi and rpmdrake to treat this source as the update source. Rpmdrake will now list these under the updates source repository. Rpmdrake will now list these under the updates source repository. If you prefer to use the gui Software Media Manager: Click Add. Select Type of Medium: Security updates The name update_source is automatically entered in the Name field. Type in path to the directory containing the downloaded update rpms: file://shared/downloads/9_2/updates Tick the checkbox next to Relative path to synthesis/hdlist: and enter the RELATIVE path to hdlist (in my case, same directory): ./hdlist.cz Click OK Rpmdrake will now list these under the update_source source repository. == ***EXAMPLE 3*** To use an ftp updates mirror (make sure you are connected to the internet.): # urpmi.addmedia --update updates ftp://ftp.rediris.es/pub/linux/distributions/mandrake/updates/9.2/RPMS/ with ../base/hdlist.cz Wait while the list is downloaded. Rpmdrake will now list these under the updates source repository. If you prefer to use the gui Software Media Manager: Click Add. Select Type of Medium: Security updates The name update_source is automatically entered in the Name field. Click Choose a mirror, click Yes and select a mirror from the list. Click OK and wait while the list is downloaded. Rpmdrake will now list these under the update_source source repository. == There is a website that makes it very easy to find the various sources (updates, contrib, plf, etc) and the relative commands for urpmi. Check out http://urpmi.org/easyurpmi/index.php Sorry for the newbie questions...Linux is obviously not my main OS but I do need to use it for some academic development pusposes (that's why right now, I don't really need all the security updates, I just want that silly VMware to work). Thank you for your time! No problemo! We all have to start somewhere. I've been using Linux for 2-1/2 years now and I'm still learning... gotta love it! Sharrea --- Sharrea Day [EMAIL PROTECTED] wrote: On Wed, 31 Dec 2003 04:50, George P. Stathis wrote: Here is finally my question: short of recompiling the kernel from the source so that my running kernel matches the source, is there a way to grab my current kernel configuration and pass it as a parameter to the make command so that I
Re: [newbie] Building the source to reflect current config
Wow, if this isn't excellent help, I don't know what is. Thank you for taking the time. The difference between the two packages is apparent immediately after I unpack them. The kernel-source package installs the built source directly under /usr/src/linux. After installing it, I was able to configure VMware without any further problems. -GS --- Sharrea Day [EMAIL PROTECTED] wrote: On Wed, 31 Dec 2003 07:00, George P. Stathis wrote: Firstly, please lose the Reply-to address. It causes replies to go directly to you rather than the list. Thanks. When I open my KDE control center, the release number is 2.4.22-10mdk and the machine is i686. OK, that is the standard kernel that comes with 9.2 on the disks. Even though your machine is a x686, the rpms you're using are compiled for x586 and makes no difference. Just FYI, it is possible to compile all rpms for x686 but not only does it take a very long time, there is little or no performance gain. So just stick with x586 rpms. The source rpm that I had already found was called kernel-2.4.22.10mdk-1-1mdk.src.rpm. That is NOT the package you want. That is a source rpm that you have to rebuild. The FTP link that you sent is for i596. I looked in the RPMS folder and there is a file called kernel-source-2.4.22-10mdk.i586.rpm. How do I know which source is the right one for me? Yep, this is the package you're after (kernel-source). Install this one if you do not intend to first update your system. I have also been trying to get the Software Media Manager to recognize a local folder under root where I have been downloading the rpm files so that the packages show up in RpmDrake but without success. Does RpmDrake offer something better when compared to simply running the rpm packages standalone? You can add sources using urpmi.addmedia at the command line. Open a terminal, su to root and type (ignore the #, it merely denotes the root console prompt): # urpmi.addmedia options name file://path [ with relative path of synthesis/hdlist ] ***EXAMPLE 1*** I have downloaded rpms which are stored in /shared/downloads/9_2/general. There is no synthesis or hdlist for this directory of rpms: # urpmi.addmedia general file://shared/downloads/9_2/general/ Rpmdrake will now list these under the general source repository. If you prefer to use the gui Software Media Manager: Click Add. Select Type of Medium: Local files Enter a name in Name: eg. general Click Browse. Navigate to the directory containing your downloaded rpms. Click OK. Rpmdrake will now list these under the general source repository. == ***EXAMPLE 2*** I have downloaded all the security/bug fixes and the relative hdlist which are stored in /shared/downloads/9_2/updates (hdlist.cz in same directory): # urpmi.addmedia --update updates file://shared/downloads/9_2/updates/ with ./hdlist.cz The --update option tells urpmi and rpmdrake to treat this source as the update source. Rpmdrake will now list these under the updates source repository. Rpmdrake will now list these under the updates source repository. If you prefer to use the gui Software Media Manager: Click Add. Select Type of Medium: Security updates The name update_source is automatically entered in the Name field. Type in path to the directory containing the downloaded update rpms: file://shared/downloads/9_2/updates Tick the checkbox next to Relative path to synthesis/hdlist: and enter the RELATIVE path to hdlist (in my case, same directory): ./hdlist.cz Click OK Rpmdrake will now list these under the update_source source repository. == ***EXAMPLE 3*** To use an ftp updates mirror (make sure you are connected to the internet.): # urpmi.addmedia --update updates ftp://ftp.rediris.es/pub/linux/distributions/mandrake/updates/9.2/RPMS/ with ../base/hdlist.cz Wait while the list is downloaded. Rpmdrake will now list these under the updates source repository. If you prefer to use the gui Software Media Manager: Click Add. Select Type of Medium: Security updates The name update_source is automatically entered in the Name field. Click Choose a mirror, click Yes and select a mirror from the list. Click OK and wait while the list is downloaded. Rpmdrake will now list these under the update_source source repository. == There is a website that makes it very easy to find the various sources (updates, contrib, plf, etc) and the relative commands for urpmi. Check out http://urpmi.org/easyurpmi/index.php Sorry for the newbie questions...Linux is obviously not my main OS but I do need to use it for some academic development pusposes (that's why right now, I don't really need all the security updates, I just want that silly