“Dynamically-related files cannot be discovered because a testing server is not defined” bug in Adobe Dreamweaver CS5

March 12th, 2011  |  Published in Mind

UPDATE: This issue was apparently fixed in a recent update to Dreamweaver

Just got Adobe Web Premium CS5 installed on my laptop and noticed this immediately…

I like Dreamweaver CS5 so far, but this little bug is/was quite annoying (and a quick Google search will show that I’m not the only one).

Tags: , ,

How to install ColdFusion 9 Developer Edition in RHEL

February 18th, 2011  |  Published in Mind

Ok, I’ve been pulling my hair out for about a week on this stupid ColdFusion 9 installer. Seriously, it’s been a nightmare for me!

I’m running RHEL 5.5 32-bit, but I suspect this problem will happen to anyone downloading the free ColdFusion 9 installer from Adobe (until they fix it). The Developer and Trial versions get no support, even if you are trying to test before upgrading from a licensed version of MX 7. Luckily I put up enough stink on Twitter that I got around this ridiculous policy (thanks to @Adobe_Care). I know I was a bit of a troll, but seriously, when someone is tries to help your company fix your product, you should help them back. Maybe I should have used the secret phrase SHIBBOLEET to get past the basic support techs (hat tip: @jsternberg)… I’ve also gotta thank @cfjedimaster and @fymd for at least trying to help me out.

So here is the problem, the Cold Fusion installer scripts have historically set the BLOCKSIZE variable to 32768. I have no idea why people do this, BLOCKSIZE is a reserved variable in Unix/Linux for the filesystem. It’s not like the script needs to use the variable BLOCKSIZE… the script could use IGNORAMUS as the variable name. The problem with this script compared to the installer script from CF MX 7 (and probably 8) is that 9 compares the “needed space” with a blocksize set to 512 to a df without changing the blocksize to 512.

Basically this is what the free developer script does:

export LAX_DEBUG=true
./ColdFusion_9_WWE_linux.bin
Preparing to install...
Checking for POSIX df.
Found POSIX df.
Checking tail options...
Using tail -n 1.
True location of the self extractor: /home/layotte/ColdFusion_9_WWE_linux.bin
Creating installer data directory: /tmp/install.dir.27024
Creating installer data directory: /tmp/install.dir.27024/InstallerData
Gathering free-space information...
Space needed to complete the self-extraction: 2636600 blocks
Available space: 439115 blocks
Available blocks: 439115    Needed blocks: 2636600 (block = 512 bytes)
WARNING: /tmp does not have enough disk space!
         Attempting to use /home/layotte for install base and tmp dir.
Creating installer data directory: /home/layotte/install.dir.27024
Creating installer data directory: /home/layotte/install.dir.27024/InstallerData
Available blocks: 439114    Needed blocks: 2636600 (block = 512 bytes)

WARNING! The amount of /home/layotte disk space required to perform
this installation is greater than what is available.  Please
free up at least 1098743 kilobytes in /home/layotte and attempt this
installation again.  You may also set the IATEMPDIR environment
variable to a directory on a disk partition with enough free
disk space.  To set the variable enter one of the following
commands at the UNIX command line prompt before running this
installer again:

- for Bourne shell (sh), ksh, bash and zsh:

     $ IATEMPDIR=/your/free/space/directory
     $ export IATEMPDIR

- for C shell (csh) and tcsh:

     $ setenv IATEMPDIR /your/free/space/directory

You’ll see that I actually have plenty of space:

df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
                       28G   13G   14G  48% /
/dev/sda2              68G  1.5G   63G   3% /www
/dev/sda1              99M   25M   70M  26% /boot
tmpfs                 1.9G     0  1.9G   0% /dev/shm

The discrepancy is because the installer script runs df -P to calculate the free space after it sets the BLOCKSIZE to 32768 and then it compares it against a number with a BLOCKSIZE calculated at 512. Here’s a video I made for Adobe support…

I knew if I included -B 512 in the DF command, it would screw up all the checksums and mess up the file extraction points from the file. I opened up the file and tried renaming the BLOCKSIZE variable to ZLOCKSIZE, I knew this shouldn’t mess up the checksum’s for file extraction… but it did because after saving the new file, the file size increased by 1 byte.

Then it struck me, what if I piped the script through sed and did a search/replace. This was the key to success for my issue. This was the command I used:

cat ColdFusion_9_WWE_linux.bin | sed "s/BLOCKSIZE/IGNORAMUS/" \
	> ColdFusion_9_WWE_linux.new.bin

Note the IGNORAMUS has just as many characters (and thus bytes) as BLOCKSIZE. Ultimately this renamed the variable, $BLOCKSIZE and $OS_BLOCKSIZE… but that doesn’t matter, because neither one of these variable names are important to the script, as long as they are consistent with each other. The file size remained the same after doing this, which gave me a little hope.

Then I set the BLOCKSIZE system variable to 512 to match the original OS_BLOCKSIZE variable, now OS_IGNORAMUS. This way, when the df command runs, it is compared against the same blocksizes.

export BLOCKSIZE=512
./ColdFusion_9_WWE_linux.new.bin
Preparing to install...
Checking for POSIX df.
Found POSIX df.
Checking tail options...
Using tail -n 1.
True location of the self extractor: /home/layotte/ColdFusion_9_WWE_linux.new.bin
Creating installer data directory: /tmp/install.dir.16822
Creating installer data directory: /tmp/install.dir.16822/InstallerData
Gathering free-space information...
Space needed to complete the self-extraction: 2636600 blocks
Available space: 29210664 blocks
Available blocks: 29210664    Needed blocks: 2636600 (block = 512 bytes)
Computed number of blocks to extract: 1877
Extracting the JRE from the installer archive...
Extracting JRE from ./ColdFusion_9_WWE_linux.new.bin to /tmp/install.dir.16822/Linux/resource/jre_padded ...
Extracting done, exit code = 0
Extracting JRE from /tmp/install.dir.16822/Linux/resource/jre_padded to /tmp/install.dir.16822/Linux/resource/vm.tar.Z ...
 Extracting done, exit code = 0
Unpacking the JRE...
Unpacking the JRE...
gzip is /bin/gzip
 GZIP done.
 TAR done.
Extracting the installation resources from the installer archive...
Extracting install.zip from ./ColdFusion_9_WWE_linux.new.bin to /tmp/install.dir.16822/InstallerData/installer.padded ...
Extracting to padded done, exit code = 0
Extracting from padded to zip done, exit code = 0
Creating disk1 data directory: /tmp/install.dir.16822/InstallerData/Disk1
Creating instdata data directory: /tmp/install.dir.16822/InstallerData/Disk1/InstData
Extracting resources from ./ColdFusion_9_WWE_linux.new.bin to /tmp/install.dir.16822/InstallerData/Disk1/InstData/Resource1.zip ...
Extracting done, exit code = 0
Configuring the installer for this system's environment...

And there you have it, the installer ran like a beaut, no errors and now I have the development version of ColdFusion running without any issues (I did have to go in an change the group of the CFIDE dir, but that’s fine). I haven’t messed around with it yet, I wanted to post this first. Apparently I am the only person to have this problem. Hopefully Adobe will fix their installer script so no one else has to go through this.

Tags: ,

Notable Tech Posts – 2009.09.13

September 13th, 2009  |  Published in Mind

15 great jquery plugins for better table manipulation

27 useful logo design tutorials and tips

22 very useful adobe illustrator tutorials

10 incredible jquery navigation menus

speed up sites with htaccess caching

50 useful resources for web designers and developers

11 classic css techniques made simple with css3

20 fresh jquery plugins to enhance your user interface

wordpress anti spam 12 great wordpress plugins to help you fight spam

50 jquery plugins for form enhancements

Learning Rails

10 css lifesavers for efficient web design

Tags: , , , , , , , , ,