Install the VI Perl Toolkit on OS X: Difference between revisions
m Adding how-to setup using MacPorts (more details will follow... ) |
Completely removed the MacPorts steps as they didn't turn out to work |
||
(6 intermediate revisions by the same user not shown) | |||
Line 2: | Line 2: | ||
'' by Wil van Antwerpen '' | '' by Wil van Antwerpen '' | ||
This document describes the preferred way on how-to get the VI Perl Toolkit working on OS X. | |||
I will | We are doing this by using the CPAN functionality of Perl which is already installed on your Mac. | ||
I will walk you through how-to set this up from the start using the CPAN Network. | |||
''' We have also tried to do this by using [http://www.macports.org/ MacPorts]. but as it turns out MacPorts will give you problems due to it changing paths and installing its own complete perl environment. For now we are not aware of a way to use the toolkit using Macports. ''' | |||
== Installing Developer Tools == | == Installing Developer Tools == | ||
The VI Perl Toolkit needs to get a few extra modules added to the current perl setup that is by default installed on Mac OS X. In order to get these modules we use CPAN | The VI Perl Toolkit needs to get a few extra modules added to the current perl setup that is by default installed on Mac OS X. In order to get these modules we use CPAN. | ||
CPAN has some prerequisites of its own that we are going to have to satisfy first. | |||
The main issue is that your system must have "make" installed. | |||
The most straightforward way to get that package installed is to take your original OS X installation disk and install Developer Tools (XcodeTools.mpkg) which can be found under Option Installs on the DVD. | The most straightforward way to get that package installed is to take your original OS X installation disk and install Developer Tools (XcodeTools.mpkg) which can be found under Option Installs on the DVD. | ||
Just keep the default settings and you'll be fine. | Just keep the default settings and you'll be fine. | ||
It is a bit big though (over 2GB) so it is a steep requirement for just getting the VI Perl toolkit to work OK. If you don't have the space, the part that is needed is the BSD "make" command and a number of other commands. It should be sufficient to install the UNIX Development Support (or BSD SDK) sub-package of the Developer Tools. | It is a bit big though (over 2GB) so it is a steep requirement for just getting the VI Perl toolkit to work OK. If you don't have the space, the part from the developer tools that is needed is the BSD "make" command and a number of other commands. It should be sufficient to install the UNIX Development Support (or BSD SDK) sub-package of the Developer Tools. | ||
== Getting the Perl VI Toolkit SDK == | == Getting the Perl VI Toolkit SDK == | ||
Line 21: | Line 23: | ||
http://communities.vmware.com/community/developer/forums/vsphere_sdk_perl | http://communities.vmware.com/community/developer/forums/vsphere_sdk_perl | ||
for OS X Leopard I downloaded the 32 bits .tar.gz linux installer. | for both OS X Leopard and Snow Leopard I downloaded the same 32 bits .tar.gz linux installer. | ||
After downloading unpack the archive by running | |||
tar -xvzf VMware-vSphere-SDK-for-Perl-4.0.0-161974.i386.tar.gz | tar -xvzf VMware-vSphere-SDK-for-Perl-4.0.0-161974.i386.tar.gz | ||
from the command line. | from the command line. | ||
Line 36: | Line 38: | ||
Warning: prerequisite UUID 0.03 not found. | Warning: prerequisite UUID 0.03 not found. | ||
Writing Makefile for VIPerlToolkit | Writing Makefile for VIPerlToolkit | ||
The warnings we see here are the | The warnings we see here are the modules we need to install for perl that are missing in order for getting the toolkit to work. | ||
So we are going to install these modules first, before we can continue with our main installation. | |||
== Installing missing perl dependencies == | == Installing missing perl dependencies == | ||
So now we need to setup CPAN | So now we need to setup CPAN unless you already have CPAN working, in that case you can skip the installation part. | ||
=== CPAN: Is /usr/local setup? === | === CPAN: Is /usr/local setup? === | ||
By default cpan will try to install some documentation under the /usr/local folder, so this folder has to exist and it needs to have the correct ownership privileges setup. | By default cpan will try to install some documentation under the /usr/local folder, so this folder has to exist and it needs to have the correct ownership privileges setup. | ||
Check if the folder already exists: | |||
$ ls /usr/ | $ ls /usr/ | ||
X11 bin lib sbin standalone | X11 bin lib sbin standalone | ||
Line 53: | Line 56: | ||
$ sudo mkdir /usr/local | $ sudo mkdir /usr/local | ||
Password: | Password: | ||
So now we | So now we created the folder, but as you will see it is owned by root and we can't install our packages in there unless we allow our user. | ||
$ ls -alh /usr/local | $ ls -alh /usr/local | ||
total 0 | total 0 | ||
Line 66: | Line 69: | ||
=== CPAN: Configuration === | === CPAN: Configuration === | ||
With the developer tools setup now | With the developer tools setup you now have to configure CPAN. You can also use this step if you want to change your CPAN configuration. | ||
Configuring CPAN makes sure that the tools | Configuring CPAN makes sure that the tools find the necessary commands on your system (make et al). To do that, run: | ||
perl -MCPAN -e shell | perl -MCPAN -e shell | ||
Line 88: | Line 91: | ||
=== CPAN: Installing the VI Perl Toolkit dependencies === | === CPAN: Installing the VI Perl Toolkit dependencies === | ||
Now we'll get the missing dependencies by running them one by one. We could add all of these on a single line, but we want it to be easy to see if the install was successful | Now we'll get the missing dependencies by running them one by one. We could add all of these on a single line, but we want it to be easy to see if the install was successful. This is why we are running them one by one. | ||
cpan Class::MethodMaker | cpan Class::MethodMaker | ||
this should now end with: | this should now end with: | ||
Line 106: | Line 109: | ||
cpan UUID | cpan UUID | ||
Which down here installed fine too, so now we can finally get back to installing the VI Perl Toolkit. | Which down here installed fine too, so now we can finally get back to installing the VI Perl Toolkit. | ||
== Install VI Perl Toolkit == | == Install VI Perl Toolkit == | ||
Line 118: | Line 117: | ||
Writing Makefile for VIPerlToolkit | Writing Makefile for VIPerlToolkit | ||
That UUID is not yet version 0.03 seems to be OK | That UUID is not yet version 0.03 seems to be OK (On Snow Leopard it is 0.04) | ||
With this version of the toolkit, there are no tests defined for the make file so install it directly: | With this version of the toolkit, there are no tests defined for the make file so we are going to install it directly: | ||
sudo make install | sudo make install | ||
Line 143: | Line 142: | ||
If you want you can now delete your unpacked setup files and VI Perl tar.gz file. | If you want you can now delete your unpacked setup files and VI Perl tar.gz file. | ||
You may want to keep the makefile around if you later want to uninstall this. | |||
== Uninstall Developer Tools and cleaning up CPAN == | == Uninstall Developer Tools and cleaning up CPAN == |
Latest revision as of 10:15, 14 March 2010
Installing the VI Perl Toolkit on OS X
by Wil van Antwerpen
This document describes the preferred way on how-to get the VI Perl Toolkit working on OS X.
We are doing this by using the CPAN functionality of Perl which is already installed on your Mac. I will walk you through how-to set this up from the start using the CPAN Network.
We have also tried to do this by using MacPorts. but as it turns out MacPorts will give you problems due to it changing paths and installing its own complete perl environment. For now we are not aware of a way to use the toolkit using Macports.
Installing Developer Tools
The VI Perl Toolkit needs to get a few extra modules added to the current perl setup that is by default installed on Mac OS X. In order to get these modules we use CPAN. CPAN has some prerequisites of its own that we are going to have to satisfy first.
The main issue is that your system must have "make" installed. The most straightforward way to get that package installed is to take your original OS X installation disk and install Developer Tools (XcodeTools.mpkg) which can be found under Option Installs on the DVD. Just keep the default settings and you'll be fine.
It is a bit big though (over 2GB) so it is a steep requirement for just getting the VI Perl toolkit to work OK. If you don't have the space, the part from the developer tools that is needed is the BSD "make" command and a number of other commands. It should be sufficient to install the UNIX Development Support (or BSD SDK) sub-package of the Developer Tools.
Getting the Perl VI Toolkit SDK
First step is to download the latest perl SDK from: http://communities.vmware.com/community/developer/forums/vsphere_sdk_perl
for both OS X Leopard and Snow Leopard I downloaded the same 32 bits .tar.gz linux installer.
After downloading unpack the archive by running
tar -xvzf VMware-vSphere-SDK-for-Perl-4.0.0-161974.i386.tar.gz
from the command line. cd into the new vmware-vsphere-cli-distrib/ folder
cd vmware-vsphere-cli-distrib/
and run:
perl MakeFile.pl
this will most likely return the following warnings:
Warning: prerequisite Class::MethodMaker 2.08 not found. Warning: prerequisite Crypt::SSLeay 0.51 not found. Warning: prerequisite SOAP::Lite 0.67 not found. Warning: prerequisite UUID 0.03 not found. Writing Makefile for VIPerlToolkit
The warnings we see here are the modules we need to install for perl that are missing in order for getting the toolkit to work. So we are going to install these modules first, before we can continue with our main installation.
Installing missing perl dependencies
So now we need to setup CPAN unless you already have CPAN working, in that case you can skip the installation part.
CPAN: Is /usr/local setup?
By default cpan will try to install some documentation under the /usr/local folder, so this folder has to exist and it needs to have the correct ownership privileges setup. Check if the folder already exists:
$ ls /usr/ X11 bin lib sbin standalone X11R6 include libexec share
In my case it isn't there yet, so create it:
$ mkdir /usr/local mkdir: /usr/local: Permission denied
Ha!.. you can't create the folder unless you have elevated rights (of course)
$ sudo mkdir /usr/local Password:
So now we created the folder, but as you will see it is owned by root and we can't install our packages in there unless we allow our user.
$ ls -alh /usr/local total 0 drwxr-xr-x 2 root wheel 68B Feb 27 01:06 . drwxr-xr-x@ 12 root wheel 408B Feb 27 01:06 ..
In my case the username is "topaz", replace "topaz" with your username below:
$ sudo chown topaz:topaz /usr/local $ ls -alh /usr/local total 0 drwxr-xr-x 2 topaz topaz 68B Feb 27 01:06 . drwxr-xr-x@ 12 topaz topaz 408B Feb 27 01:06 ..
CPAN: Configuration
With the developer tools setup you now have to configure CPAN. You can also use this step if you want to change your CPAN configuration. Configuring CPAN makes sure that the tools find the necessary commands on your system (make et al). To do that, run:
perl -MCPAN -e shell cpan> o conf init
This throws up a bunch of questions.
/Users/topaz/.cpan/CPAN/MyConfig.pm initialized. CPAN is the world-wide archive of perl resources. It consists of about 100 sites that all replicate the same contents all around the globe. Many countries have at least one CPAN site already. The resources found on CPAN are easily accessible with the CPAN.pm module. If you want to use CPAN.pm, you have to configure it properly. If you do not want to enter a dialog now, you can answer 'no' to this question and I'll try to autoconfigure. (Note: you can revisit this dialog anytime later by typing 'o conf init' at the cpan prompt.) Are you ready for manual configuration? [yes]
You can take the defaults for pretty much all of them, so just press enter. It is fine if the configuration script doesn't find programs for things like lynx, wget, ncftp, ftp etcetera...
The main things to select are country to download from and the site(s) which you want to use for the repositories. Just make the most logical selections here.
CPAN: Installing the VI Perl Toolkit dependencies
Now we'll get the missing dependencies by running them one by one. We could add all of these on a single line, but we want it to be easy to see if the install was successful. This is why we are running them one by one.
cpan Class::MethodMaker
this should now end with:
Appending installation info to /Library/Perl/Updates/5.8.8/darwin-thread-multi-2level/perllocal.pod /usr/bin/make install -- OK
So continue with the next one:
cpan Crypt::SSLeay
Just choose the defaults if questions are asked. As long as it ends like the previous package you are fine.
Next up is:
cpan SOAP::Lite
Same same, choose defaults. In my setup it nagged that I missed out on some dependencies of its own and if I wanted to add those.. Sure.. let the installer add anything it suggests.
Finally:
cpan UUID
Which down here installed fine too, so now we can finally get back to installing the VI Perl Toolkit.
Install VI Perl Toolkit
Now go back to the folder where you unpacked the VI Perl Toolkit:
perl MakeFile.pl Warning: prerequisite UUID 0.03 not found. We have 0.020. Writing Makefile for VIPerlToolkit
That UUID is not yet version 0.03 seems to be OK (On Snow Leopard it is 0.04) With this version of the toolkit, there are no tests defined for the make file so we are going to install it directly:
sudo make install Password: Manifying blib/man3/VMware::VIM25Runtime.3pm Manifying blib/man3/VMware::VIM2Stub.3pm Manifying blib/man3/VMware::VIM25Stub.3pm Manifying blib/man3/VMware::VIM2Runtime.3pm Installing /Library/Perl/5.8.8/vmware-install.pl Installing /Library/Perl/5.8.8/VMware/VICommon.pm Installing /Library/Perl/5.8.8/VMware/VICredStore.pm .... many more lines here .... Installing /usr/share/doc/vmware-viperl/doc/samples/vm/vmregister.pl Installing /usr/share/doc/vmware-viperl/doc/samples/vm/vmunregister.pl Installing /usr/share/doc/vmware-viperl/doc/samples/WSMan/checksensorhealth.pl Installing /usr/share/doc/vmware-viperl/doc/samples/WSMan/firmwarerevisions.pl Installing /usr/share/doc/vmware-viperl/doc/samples/WSMan/listfrus.pl Installing /usr/share/doc/vmware-viperl/doc/samples/WSMan/listpowersupplies.pl
and that's how a successful Perl Toolkit install looks like.
If you want you can now delete your unpacked setup files and VI Perl tar.gz file. You may want to keep the makefile around if you later want to uninstall this.
Uninstall Developer Tools and cleaning up CPAN
If you want to uninstall the Developer Tools, you need to run the command:
/Developer/Library/uninstall-devtools --mode=all
Be aware that you can then no longer use CPAN or Macports to extend your system!
From CPAN you can remove an installed module by running a clean command. Such as:
cpan clean Class::MethodMaker
This is a troubleshoot step and sometimes needed if a module gets stuck while trying to install it. Again don't remove any module your install depends on.
If CPAN still gives problems, then you can remove your local CPAN configuration and cache directory by running:
rm -r ~/.cpan
External link
The following link turned out to be very helpful while I was trying to get this to work:
Managing VMware Infrastructure 3 (VI3) from OS X (10.5.1 Leopard)