Charlie Zender wrote: > 2. Creating a new partition with RedHat just for this is the software > equivalent of building a second Taj Mahal because your wife does not > like the color of the first one.
You don't need a partition. Just a copy of the directory structure. These are the directories that you need. If I got the list right. bin dev etc lib opt root sbin tmp usr var root Copy those from your RH machine to your Debian machine and put them in an area to be chroot'd into. Say /rharea or some such. At that time you can install normally. After you are done you can copy the bits out. (This also works in reverse. You can have a Debian chroot area on the RH machine. But that is another story.) chroot /rharea rpm -qa But since you already have the bits installed on your other RH machines you can just copy the data over from there. > 3. I asked Intel if they would supply Debian-compatible compilers > to their customers. FYI, their rather helpful reply is below. Basically > they seem to be saying that I can do a manual install along the lines > of what I tried but using rpm2cpio instead of alien. Maybe this will > work better, I have not tried it yet. Using this information posted by Intel I can post more details of my own process. Because they wrap the rpm installer with their own script installer it is not even possible to create a rpm database and install it using rpm. There will be unsatisified dependencies. You can't even force the installation because the script installer isolates you from the rpm installer. > What is the recommended way to install the Intel Fortran and C/C++ > compilers on Debian? I have not yet seen much discussion on the lists specifically concerning the Intel compilers. Unfortunately you want to install one of the most confusing packages. I have installed the Intel compiler several times. PITA. > I suppose I could try to find where the RPMs want to install their > contents, and then try to install them myself manually. This sounds > dangerous and error-prone, however. Actually it is not so dangerous. This is basically what the alien program does. It takes apart the rpm and puts it back together again as a deb. I created my own debs this way manually. I am only commenting on their packaging of their compiler and not the compiler itself. The compiler software itself seems of fine quality. But they wrapped it in a burlap bag and threw it off of the delivery truck onto the doorstep without stopping the truck. The overall impression the user is left with is less than good. Okay, enough ranting. Here are the details. The compilers arrive as a compressed tar file. This is how the installation goes on an rpm based system. Untar the file into a directory. There you will see many files including install scripts, release notes and rpm files. They expect you to run the 'install' script. That script will install the rpm files onto your system using rpm. Okay so far. Then the install script will walk through a series of files and scripts which were installed and *edit them after the rpm installation*. This step renders the installation impossible to verify on an rpm system. The checksums are now different than the install database thinks they should be. They are really just using rpm as a tarfile style file splat onto your system and then doing fixup later outside of the install system. But the installation should still work regardless. Therefore if you have a RH system and have previously installed the compilers there you can simply copy the directory /opt/intel from that machine over to your Debian machine. You can make a snapshot of it with 'tar cvzf' and then untar it in place on the other system. That should work for the most painless way to transfer the bits. But if you do not have a RH machine at all nor a RH chroot area to unpack this in then you can pick things apart on your Debian system manually and achieve a working result. [This looks basically like what Intel has recommended that you do in the note that you posted. But perhaps I have a little more detail here. Note that I have been working with ia64 and not ia32 and therefore there may be some differences.] Here is what I recommend that you do on Debian. The compilers arrive as a compressed tar file. Untar the file into a directory. Then use rpm2cpio to extract the files that you need manually. You will want to unpack the three rpm files that match your architecture. for file in *.i386.rpm; do rpm2cpio < $file | cpio -idvm done That will unpack all of the files into a ./opt/ directory. You will now need to do what the script installer does. Decide where you are going to install the compiler. That could be the default /opt/intel directory. Or it could be /usr/local/ someplace. Here is the instructions in more script form. I install them in /opt but the normal recommendation is to install one off software in /usr/local someplace. In this case /opt/intel is the default and probably the best answer. Look for all files that have this installation directory tag in the script. find ./opt -type f -print0 | xargs -r0 grep -l INSTALLDIR That wil generate a list of files that need to be edited. You can edit them by hand. Or here is a script snippet which should do the right things to install the software. DESTINATION=/opt/intel for FILE in $(find ./opt -type f -print0 | xargs -r0 grep -l INSTALLDIR); do sed [EMAIL PROTECTED]<INSTALLDIR\>@[EMAIL PROTECTED] $FILE > $FILE.tmp mv $FILE.tmp $FILE chmod 0755 $FILE done They include an uninstall script. In all three rpm packages! That script tries to do several things including using 'rpm -e' which won't work since we are not using rpm. Find that script and remove it. It will eliminate confusion later. find ./opt -name uninstall -print0 | xargs -r0 rm -f They want to document what version you are using in a documentation file. This is not strictly required but does finish the installation off. COMBOPACKAGEID=$(grep COMBOPACKAGEID install | sed -e "s/ *#.*//" -e "s/^[^=]*=//") for FILE in $(find ./opt -name csupport -print); do sed 's@<INSTALLTIMECOMBOPACKAGEID>@[EMAIL PROTECTED]' \ $FILE > $FILE.tmp mv $FILE.tmp $FILE chmod 644 $FILE done Done. Almost. Lastly there are several shared libraries shipped as part of the package. It is *completely up to you* but I did not want to create DLL hell by creating binaries with unmanaged shared libraries. Therefore on my installation I disabled those shared libraries. The compiled bits will use the archive files instead. This makes the compiled binaries executable on systems without those shared libraries installed and avoids many problems. If you do not do this then compiled binaries will not run systems other than the one on which you installed the compiler. However, if you have already compiled binaries that require these shared libraries then you will need them to run those programs. In which case it is too late and you cannot do this step. So whatever you do don't get rid of them entirely! # Only if you wish to globally disable the shared libraries. # for FILE in $(find ./opt -name '*.so' -o -name '*.so.[0-9]*'); do # mv $FILE $FILE.disabled # done Done. Almost. Copy that directory to $DESTINATION, wherever you decided to put it. There are some other finishing touches if this were really going to be a package. But this is Good Enough. The compiler is in $DESTINATION/$compilerdir/$arch/bin/$compiler where the following applies. You will want the compiler in your path. Create a symlink from that location to /usr/bin so that it will be found in path. One for the compiler. One for the debugger if you desire. The debugger is called either 'ldb' or 'idb' depending on the version and time of day. $DESTINATION/$compilerdir/$arch/bin/$compiler DESTINATION -- where you installed it compilerdir -- compiler60 for the 6.0 compiler, compiler70 for the 7.0 compiler, etc. arch -- i386, ia64 compiler -- ecc on ia64, icc on i386 Done. Well, almost. Did you want the man pages available for the compiler? Create symlinks for that man page too. For some reason 7.0 did not ship with a man page for the debugger. But 6.0 did. If you have the 6.0 version around, keep it and use it for 7.0. Did I say done? Sorry. You still need a license file. Place your license file for the compiler in your $DESTINATION/licenses directory. The software will not operate without a proper license file. After doing all of this you should have a working compiler on your system. Go take a break. Bob -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]