Fedora Linux Support Community & Resources Center

Go Back   FedoraForum.org > Fedora Resources > Guides & Solutions (No Questions)
FedoraForum Search

Forgot Password? Join Us!

Guides & Solutions (No Questions) Post your guides here (No links to Blogs accepted). You can also append your comments/questions to a guide, but don't start a new thread to ask a question. Use another forum for that.

Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old 16th January 2005, 02:14 PM
owakroeger Offline
Registered User
 
Join Date: Apr 2004
Location: Yuma, Arizona
Posts: 431
HowTo install Win4Lin on FC3

Win4Lin is a commercial product by NeTraverse which will prepare a linux kernel to install Windows 95,98, or ME. NeTraverse provides various precompiled kernels. Frequently, hardware issues make using one of their precompiled kernels nearly impossible.
The solution is to download and patch a 'vanilla' kernel from http://kernel.org . The following is, hopefully, a helpful, step-by-step process.

1. First, boot to FC3 on a good, working kernel. Make sure you have all the bugs worked out of it before you try to build your new kernel, as problems with your existing kernel will probably be passed on to the new kernel.

2. Download a kernel from http://kernel.org . They will come in a zipped package, either BZIP or GZIP. Make a separate directory to do your work in, so that your kernels and patches don't get lost in the clutter. I called mine /kernels. Open a terminal, and change to the '/' directory.

$su
password
#cd /
mkdir kernels

Just so that we don't accidentally do damage to our working system, we'll do as much as we can as 'user'.

#exit
$

Download your kernel to the directory you just prepared, or move it from where ever you downloaded it to the new directory

$mv linux-2.6.10.tar.bz2 /kernels

3. Go to http://www.netraverse.com and download the appropriate patches for your kernel. For the 2.6.10 kernel, you'll need Kernel-Win4Lin3-2.6.10.patch and mki-adapter26_1_3_10.patch . Download your patches to /kernels

4. Go to the /kernel directory.

$cd /kernels

5. If your Linux sources are in BZIP format, i.e. end in a .bz2 extension, use the following;

$tar xfvj linux-2.6.10.tar.bz2

If your linux sources are in GZIP format, use the following;

$tar xfvz linux-2.6.10.tar.gz

6. Copy the patches into your new kernel.

$cp Kernel-Win4Lin3-2.6.10.patch linux-2.6.10
$cp mki-adapter26_1_3_10.patch linux-2.6.10

7. You'll need to be in the kernel to apply the patches, and to do all the rest of the work.

$cd linux-2.6.10
$patch -p1 <Kernel-Win4Lin3-2.6.10.patch> patch.log 2>&1
$patch -p1 <mki-adapter26_1_3_10.patch>> patch.log 2>&1

8. Let's check the patch log to make sure the patches applied cleanly.

$less patch.log

The file message HUNK FAILED means that specific code lines of the file being patched differ from what the patch program expected to find. If you receive this message, you cannot proceed till the changes specified by the HUNK FAILED message are applied. You'll either need to get a new patch, or make the changes to the kernel source.

9. Once we have all the patches applied cleanly, without ANY errors, we'll need to change the EXTRAVERSION in the Makefile, so that it doesn't conflict with your distribution's working kernel.

$gedit Makefile

Find the EXTRAVERSION line, a few lines down from the top, and insert the curser right after EXTRAVERSION. Give it a unique name that you'll recognize, and use throughout the rest of this build process. You'll have to be consistant with the naming process, so be kind to yourself. I use this; -W4L011405ak, where W4L represents Win4Lin, the date of the build, and my initials.
Click on 'Save' and exit gedit.

10. Your new kernel won't have a .config file, if you've never made any changes to it. The following is what I copied. Make the appropriate changes for your own situation.

$cp /boot/config-2.6.9-1.667 linux-2.6.10/.config
$cp .config config.save
$make mrproper
$cp config.save .config

11. Our next step is to run the configuration utility. On the 2.6.x kernels there are four main frontend programs; config, menuconfig, and xconfig, and oldconfig.
config is the least user-friendly. Each possibility is presented, sequentially, as a question. If you make a mistake, you have to start over from the top. I sit on where this pains me!
oldconfig will read the defaults from an existing .config and rewrite necessary links and files. This is a quick way to tinker with minor changes to a configuration you've already built.
menuconfig uses ncurses as a frontend. You'll have to have the ncurses-devel libraries installed to use this utility. There is a help menu at the top of the screen. Use the arrow keys to navigate, Enter to highlight, and Y or N to make your selections. Kinda reminds me of DOS6.0, but it works, and it's pretty easy.
xconfig is a graphical frontend, using gconf. You'll need the qt and X libraries to use this. Most of the later 2.6.x distributions come with the necessary libraries for either this or the menuconfig. The xconfig is my personal favorite. It just seems quick, and straight forward to me. Just click on the boxes and move on.
In addition to your system specific configurations, you MUST make the following configuration settings for your kernel to work with Win4Lin.

Enable loadable module support
Enable module unloading
Networking support
System V IPC
Kernel support for ELF binaries
TCP/IP networking
ISO 9660 CD-ROM filesystem support
Include NeTraverse Win4Lin Support.

Make sure REGPARM is NOT selected. Win4Lin wil NOT work with REGPARM.
The newer Win4Lin patches claim to support PREMPTABLE kernel. I have not tried it, as I haven't seen a slow-down of performance to make me want to try it.
SELINUX is a big unknown. I've tried it both ways, and haven't had problems which I could identify as being caused by it. But, I've heard of other issues related to it, though not having anything to do with Win4Lin. I choose NOT to enable it, as my firewall works fine without it, and my primary objective, here, is to get Win4Lin going.

Don't get carried away. Just make the changes you really need to make. If your working kernel IS working, you'll only need to make the above changes. "If it ain't broke, don't fix it."

Once you have made all your selections, EXIT.
Choose YES to save your changes.

12. Now, we actually build the kernel. $make dep is NOT necessary with the 2.6.x kernel tree.

$make clean 2>&1 | tee make.log
$make bzImage 2>&1 | tee make.log

On my AMD Duron 1.3G processor, the bzImage takes about 10 - 13 minutes.

$ls -l arch/i386/boot

This will show you your freshly built bzImage.

13. Now, we build the modules.

$make modules 2>&1 | tee make.log

14. The next step, we have to log in as root. This is where we actually install our new kernel.

$su
password
#make modules_install 2>&1 tee mkmodinst.log

Our fresh-baked modules will be copied into /lib/modules/linux-2.6.10

15. As we near the end, we'll make initial RAMDisk.

#/sbin/mkinitrd /boot/initrd-2.6.10-W4L011405ak.img 2.6.10

(Note the naming convention I referred to when we modified the Makefile. This is IMPORTANT. Be consistant.)

16. Once your kernel is created, we can prepare it for use. From the linux-2.6.10 directory, copy the kernel and System.map to /boot Remember the naming convention.

#cp arch/i386/boot/bzImage /boot/bzImage-2.6.10-W4L011405ak
#cp System.map /boot/System.map-2.6.10-W4L011405ak
#ln -s /boot/System.map-2.6.10-W4L011405ak /boot/System.map

17. Once you have copied the bzImage and System.map to /boot, we'll edit the grub configuration file located in /boot/grub/menu.lst

#cd /boot/grub
#gedit menu.lst

title Fedora Core 3 ( 2.6.10-W4L011405ak)
root (hd0,0)
kernel /bzImage-2.6.10-W4L011405ak ro root=LABEL=/ quiet
initrd /initrd-2.6.10-W4L011405.img
title Fedora Core 3 (2.6.9-1.667)
root (hd0,0)
kernel /vmlinuz-2.6.9-1.667 ro root=LABEL=/ quiet
initrd /initrd-2.6.9-1.667.img

Menu.lst is the symbolic link to grub.conf. Changes you make to menu.lst are written to grub.conf. I personally want to see things as they load, so I remove the 'rhgb' before quiet. Also, I want to see the menu, so I comment out the hiddenmenu. You could also change the default at this time, if you wanted to.
Click on 'Save'
Exit form gedit.

Troubleshooting build failures.... most of my build failures have been a result of mistakes in my configuration file. Either I neglected to enable something, or I left something enabled which needed to be disabled. Or, I used the default config from the wrong working kernel. I thought I was booted to one kernel, and was actually booted to another one.

18. Now, if your new kernel boots without errors, you can safely install your NeTraverse Win4Lin package, using the instructions on the screen, after you launch the win4lin-install program.

I hope this helps. Send feedback via this forum, or by email to owaugly@xmission.com

owa
__________________
owa

Last edited by owakroeger; 16th January 2005 at 02:55 PM. Reason: additional information
Reply With Quote
  #2  
Old 5th April 2005, 11:46 AM
owakroeger Offline
Registered User
 
Join Date: Apr 2004
Location: Yuma, Arizona
Posts: 431
If you get the error message, while installing NeTraverse, "this is not a NeTraverse enabled kernel...." or something like that, open a terminal. From a command line, type uname -rs .
The results should look something like this;
$ uname -rs
Linux 2.6.10-fc3w4l032705
where 2.6.10-fc3w4l032705 is the name you gave to the kernel you just built. If this is not the name of the kernel you just built, you'll need to check your /boot/grub/grub.conf file, and edit it appropriately. Mine looks like this. Yours may be a bit different, but approximately the same, depending on your particular setup.
$ cat /boot/grub/grub.conf
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
# all kernel and initrd paths are relative to /boot/, eg.
# root (hd0,0)
# kernel /vmlinuz-version ro root=/dev/hda2
# initrd /initrd-version.img
#boot=/dev/hda
default=0
timeout=10
splashimage=(hd0,0)/grub/splash.xpm.gz
title Fedora Core 2 (2.6.5-1.358)
root (hd0,0)
kernel /vmlinuz-2.6.5-1.358 ro root=LABEL=/ rhgb quiet
initrd /initrd-2.6.5-1.358.img
title Fedora Core 3 (2.6.10-fc3w4l032705)
root (hd0,0)
kernel /bzImage-2.6.10-fc3w4l032705 ro root=LABEL=/1 rhgb quiet
initrd /initrd-2.6.10-fc3w4l032705.img
If uname -rs shows that you are booted to the correct terminal, from a command line, type;
$ /sbin/modprobe mki-adapter
$ cat /proc/mki-adapter/version
1.3.10
You should see the mki-adapter version for the kernel you built. If this comes up blank, the kernel did'nt build correctly. Go through the 'make.log' and the 'mkmodinst.log' to find errors.
owa
__________________
owa
Reply With Quote
  #3  
Old 4th May 2005, 09:27 AM
Pery Offline
Registered User
 
Join Date: Apr 2005
Location: Slovenia
Posts: 20
CC [M] arch/i386/mki-adapter26/mki-main.o
arch/i386/mki-adapter26/mki-main.c: In function `mkia_remap_page_range':
arch/i386/mki-adapter26/mki-main.c:97: warning: implicit declaration of function `remap_page_range'
CC [M] arch/i386/mki-adapter26/mki26.o
arch/i386/mki-adapter26/mki26.c: In function `mkia_pgvfree':
arch/i386/mki-adapter26/mki26.c:647: warning: passing arg 1 of `pmd_offset' from incompatible pointer type
arch/i386/mki-adapter26/mki26.c:668: warning: passing arg 1 of `pmd_offset' from incompatible pointer type
arch/i386/mki-adapter26/mki26.c: In function `mkia_alloc_idt':
arch/i386/mki-adapter26/mki26.c:792: warning: passing arg 1 of `pmd_offset' from incompatible pointer type
arch/i386/mki-adapter26/mki26.c:796: warning: passing arg 1 of `pmd_offset' from incompatible pointer type
arch/i386/mki-adapter26/mki26.c: In function `mkia_virt_to_phys':
arch/i386/mki-adapter26/mki26.c:1358: warning: passing arg 1 of `pmd_offset' from incompatible pointer type
arch/i386/mki-adapter26/mki26.c: In function `mkia_add_page_ref':
arch/i386/mki-adapter26/mki26.c:1478: warning: passing arg 2 of `pmd_alloc' from incompatible pointer type
CC [M] arch/i386/mki-adapter26/mkivnet.o
CC [M] arch/i386/mki-adapter26/timer.o
LD [M] arch/i386/mki-adapter26/mki-adapter.o

I used kernel 2.6.11.5 with Kernel-Win4Lin3-2.6.11.5.patch and mki-adapter26_1_3_11.patch.
I get this error in the make.log file. Kernel is working perfectly only mki-adapter isn't working.

Can anybody help?
Reply With Quote
  #4  
Old 4th May 2005, 12:24 PM
owakroeger Offline
Registered User
 
Join Date: Apr 2004
Location: Yuma, Arizona
Posts: 431
I think you have the wrong mki-adapter patch. I just patched and built the 2.6.11.7 vanilla kernel using the Kernel-Win4Lin3-2.6.11.5.patch and the mki-adapter26_1_3_12.patch.
If you go to the kernel you untarred, look to see what patches you have. and then cat the contents of the patch.log;

$ cd linux-2.6.11.7
[al@localhost linux-2.6.11.7]$ dir
arch kernel mki.h scripts
config.save Kernel-Win4Lin3-2.6.11.5.patch mki-main.c security
COPYING lib mkiversion.h sound
CREDITS LICENSE mkivnet.c System.map
crypto MAINTAINERS mm timer.c
Documentation Makefile Module.symvers usr
drivers mki26.c net vmlinux
fs mki-adapter26_1_3_12.patch patch.log vneteth.h
include mki-adapter26.h patch.log.not vnetint-pub.h
init mki.c README
ipc mkifunc.h REPORTING-BUGS

[al@localhost linux-2.6.11.7]$ cat patch.log
patching file kernel/exit.c
patching file kernel/fork.c
patching file kernel/sched.c
patching file mm/vmscan.c
patching file arch/i386/Kconfig
patching file arch/i386/kernel/entry.S
patching file arch/i386/kernel/head.S
patching file arch/i386/kernel/process.c
patching file arch/i386/kernel/signal.c
patching file arch/i386/kernel/vm86.c
patching file arch/i386/Makefile
patching file arch/i386/mki/Makefile
patching file arch/i386/mki/mki.c
patching file arch/i386/mm/fault.c
patching file include/asm-i386/mki.h
patching file include/asm-i386/mkiversion.h
patching file include/asm-i386/segment.h
patching file include/asm-i386/thread_info.h
patching file include/linux/init_task.h
patching file include/linux/sched.h
patching file arch/i386/Makefile
patching file arch/i386/mki-adapter26/LICENSE
patching file arch/i386/mki-adapter26/Makefile
patching file arch/i386/mki-adapter26/README
patching file arch/i386/mki-adapter26/mki-adapter26.h
patching file arch/i386/mki-adapter26/mki-main.c
patching file arch/i386/mki-adapter26/mki26.c
patching file arch/i386/mki-adapter26/mkifunc.h
patching file arch/i386/mki-adapter26/mkivnet.c
patching file arch/i386/mki-adapter26/timer.c
patching file arch/i386/mki-adapter26/vneteth.h
patching file arch/i386/mki-adapter26/vnetint-pub.h

If you used the correct patches, your patch.log should look pretty much like this. If I'm not mistaken, the mki-adapter patch you used is not the correct one.
The list of patches on Win4Lin download patches site is pretty confusing, as the patches required for the various kernels are not clearly identified.
As I said, I used the mki-adapter26_1_3_12.patch for the 2.6.11.7 kernel.

Post the contents of your patch.log from the kernel you're building. The answer might be in there.

owa
__________________
owa

Last edited by owakroeger; 4th May 2005 at 12:27 PM. Reason: clarification
Reply With Quote
  #5  
Old 4th May 2005, 02:31 PM
Pery Offline
Registered User
 
Join Date: Apr 2005
Location: Slovenia
Posts: 20
Here is the patch log. It should be OK!

patching file kernel/exit.c
patching file kernel/fork.c
patching file kernel/sched.c
patching file mm/vmscan.c
patching file arch/i386/Kconfig
patching file arch/i386/kernel/entry.S
patching file arch/i386/kernel/head.S
patching file arch/i386/kernel/process.c
patching file arch/i386/kernel/signal.c
patching file arch/i386/kernel/vm86.c
patching file arch/i386/Makefile
patching file arch/i386/mki/Makefile
patching file arch/i386/mki/mki.c
patching file arch/i386/mm/fault.c
patching file include/asm-i386/mki.h
patching file include/asm-i386/mkiversion.h
patching file include/asm-i386/segment.h
patching file include/asm-i386/thread_info.h
patching file include/linux/init_task.h
patching file include/linux/sched.h
patching file arch/i386/Makefile
patching file arch/i386/mki-adapter26/LICENSE
patching file arch/i386/mki-adapter26/Makefile
patching file arch/i386/mki-adapter26/mki26.c
patching file arch/i386/mki-adapter26/mki-adapter26.h
patching file arch/i386/mki-adapter26/mkifunc.h
patching file arch/i386/mki-adapter26/mki-main.c
patching file arch/i386/mki-adapter26/mkivnet.c
patching file arch/i386/mki-adapter26/README
patching file arch/i386/mki-adapter26/timer.c
patching file arch/i386/mki-adapter26/vneteth.h
patching file arch/i386/mki-adapter26/vnetint-pub.h

What is the next step?
Let me remind you that I was totally following instructions from the previous posts, only thing I have changed from the previous kernel configuration was switching the processor type from pentium pro to Athlon. Should this be the wrong choice?
And ofcourse I took the REGPARM out and also SELinux.
Reply With Quote
  #6  
Old 4th May 2005, 11:37 PM
owakroeger Offline
Registered User
 
Join Date: Apr 2004
Location: Yuma, Arizona
Posts: 431
I would try building it again with the mki-adapter26_1_3_12.patch instead of the mki-adapter26_1_3_11.patch. Though it appears to have successfully patched the 2.6.11.5 kernel, the mki*_1_3_11.patch was written for the 2.6.10 kernel, not the 2.6.11 kernel.
You might also try the Win4Lin support site if that doesn't help.
owa
__________________
owa
Reply With Quote
  #7  
Old 5th May 2005, 10:17 PM
Pery Offline
Registered User
 
Join Date: Apr 2005
Location: Slovenia
Posts: 20
Yes now it works, thanks!
Which version of win4lin do you use with this mki-adapter? I have 5.1.1 and it doesn't work!
__________________
2.6.17-1.2157_FC5
Reply With Quote
  #8  
Old 5th May 2005, 11:38 PM
Pery Offline
Registered User
 
Join Date: Apr 2005
Location: Slovenia
Posts: 20
I tried once again to install win4lin 5.5.2. I get this error:

Installing Win4Lin files. Please wait...
Configuring Win4Lin files. Please wait...


grep: /proc/ksyms: No such file or directory
Failed to insert the mki-adapter module. Please install the
mki-adapter kernel module that matches this kernel:
2.6.11.7

I guess I forgot to unable something when I was compiling kernel. What could that be?
I think the problem was in that I couldn't find everything in xconfig that I should unable. Would it be possible to give more spec instructions?
__________________
2.6.17-1.2157_FC5
Reply With Quote
  #9  
Old 6th May 2005, 11:31 AM
owakroeger Offline
Registered User
 
Join Date: Apr 2004
Location: Yuma, Arizona
Posts: 431
I have Win4Lin 5.0, which has been updated regularly.... now 5.1.7 After I have the kernel installed and verify that the mki-adapter has successfully installed;
[root@localhost netraverse_installer]# /sbin/modprobe mki-adapter
[root@localhost netraverse_installer]# cat /proc/mki-adapter/version
1.3.12
I'm ready to install Win4Lin. Then, first as root, I invoke the installer;
[al@localhost netraverse_installer]$ dir
linux_relnote.html W4L5.0_guide.pdf win4lin-install
[al@localhost netraverse_installer]$ su
Password:
[root@localhost netraverse_installer]# ./win4lin-install

The installer opens a window, and continues the installation from there. I'm afraid I can't answer your questions. I can only say that I have compiled and installed Win4Lin adapted kernels by this method since the 2.6.5 kernel, using the correct patches for each kernel downloaded from the NeTraverse (now Win4Lin) site with no problems.
I would recommend that you contact Win4Lin support for help with your problem.
http://www.netraverse.com/support
owa
__________________
owa
Reply With Quote
  #10  
Old 6th May 2005, 10:00 PM
Pery Offline
Registered User
 
Join Date: Apr 2005
Location: Slovenia
Posts: 20
[root@cs136208 peter]# uname -r
2.6.11.7
[root@cs136208 peter]# cat /proc/mki-adapter/version
1.3.12

I have this, but installer still says that it doesn't know my system. I have also second kernel on the sytem, which was installed from RPM file. I think installer is reading that data. How can I fix it?
BtW before I was using a win4lin rpm file, that is why I had that error.
__________________
2.6.17-1.2157_FC5
Reply With Quote
Reply

Tags
fc3, howto, install, win4lin

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
win4lin pro on fc6 kelxso Using Fedora 4 21st January 2007 06:28 AM
Win4Lin and FC6 mbramble Using Fedora 0 19th November 2006 05:55 PM
Win4Lin install emotional Using Fedora 5 7th February 2005 10:19 PM
Win4Lin on FC3 owakroeger Using Fedora 1 16th January 2005 03:02 PM


Current GMT-time: 23:47 (Friday, 24-05-2013)

TopSubscribe to XML RSS for all Threads in all ForumsFedoraForumDotOrg Archive
logo

All trademarks, and forum posts in this site are property of their respective owner(s).
FedoraForum.org is privately owned and is not directly sponsored by the Fedora Project or Red Hat, Inc.

Privacy Policy | Term of Use | Posting Guidelines | Archive | Contact Us | Founding Members

Powered by vBulletin® Copyright ©2000 - 2012, vBulletin Solutions, Inc.

FedoraForum is Powered by RedHat