Author Archives: Norm

NBA 2018 Bracket

Okay, the NBA bracket challenge has a horrible interface! As a reminder for future years, don’t use this! Go with ESPN or someone else. Having said that, here’s my NBA bracket. I think it shows my picks except for the Blazers, who got their asses swept by the Pelicans, so zero points there! Amazing that was the series with a sweep.

Go Warriors!

NHL 2018 Playoff Bracket

Here it is. Haven’t followed much hockey this year but going with the heart!

P.S. I do have a second bracket with Tampa Bay taking the east and the Preds winning it all but I’m not posting that one 🙂

Sending email with PHPMailer

It appears most of the examples out there relate to version 5.2. The current version is 6 and I had to make the following change in order to get it to work. Everything else from the examples worked.

Change:

$mail = new PHPMailer();

To:

$mail = new PHPMailer\PHPMailer\PHPMailer();

I’ll post (or edit this post) a full example shortly.

FTP on macOS High Sierra

As you may have noticed, FTP is no longer a part of macOS High Sierra. If you are in the Terminal, you’ll get something like this:

Norms-iMac-Pro:~ norm$ ftp
-bash: ftp: command not found

An Apple Forum’s post has this reasoning.

Fortunately, there is Homebrew to the rescue. As pointed out in that post, you can install the `inetutils`, which includes FTP. All you need to do is:

brew install inetutils

Unfortunately, for me, this resulted in a linking error, as the directory `/usr/local/share/man/man8` is not writeable. You can solve this by by issuing the following command:

sudo chown -R $(whoami) /usr/local/share/man/man8

Then run the link command again:

brew link inetutils

I hope this is helpful and happy FTPing!

Installing GCC-7.3.0 on macOS High Sierra

I talked about getting GCC-5.3.0 running in a previous post. As part of some benchmark testing I’m doing for a new computer build, which I hope to write about in a future post, I ventured back into the world of parallel programming. I used the excellent instructions from Solarian Programmer found here to get GCC-7.3.0 running on macOS High Sierra 10.13.3.

Strictly speaking, the link above points to instructions for compiling GCC-7.1.0. While it’s not a big deal to modify these instructions for 7.3.0, here’s a text document with just the command line instructions to get 7.3.0 up.

Note: I did have to make one small deviation from the instructions provided in the link (as noted in the text document attached). I tried to “make” GCC7.3.0 with “make -j 4” but it failed, stating it couldn’t fine “<ctime>”. I retried the make using “make -j 1”, which took a LONG time but worked. I would try 4 first and only if it doesn’t work, try 1.

My previous post also talked about getting OpenMP/Clang running in Xcode and the link provided there works. I did try the steps but couldn’t get it to work. Maybe I’ll try again later but for now, I’m using the command line to compile the OpenMP code.

Allowing different orientations by device (iPad vs iPhone)

I’ve been watching the Developing iOS 11 Apps with Swift podcast (yes, iTunes U content is now available as podcasts, which is cool because you can view them on your Mac) and playing around the Concentration app. This app really wants to be Portrait on an iPhone but Portrait or Landscape on an iPad, given the whole master/detail thing.

I searched for ways to do this and while apparently you can do this in code, this method is super simple. You can add another Custom iOS Target Property to your Info.plist under the Info tab of your project’s target, specifically for iPad. The main one is:

Supported interface orientations

The iPad specific one is:

Supported interface orientations (iPad)

Here’s a screen shot to show it in action.

Hope this helps!

Installing Octave 4.2.1 on macOS Sierra

I’ve been using version 4.0.3 of Octave for some time, installed via the binary available from SourceForge. It works reasonably well, with the exception of having to return to Terminal to enter commands for paged output. I wanted to move up to the current version and managed to get version 4.2.1 installed using HomeBrew. In case you are interested, here are the steps I followed:

  1. Open Terminal
  2. Enter the command: /usr/bin/ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)”
  3. Press RETURN
  4. Install homebrew/science using the following command: brew tap homebrew/science
  5. Octave requires XQuartz, install using: brew cask install XQuartz
  6. Install Octave using the following command: brew install octave
  7. Wait for a bit, then installation finishes

At this point, I “cd’ed” to the bin directory and attempted to run Octave with the following command:

cd /usr/local/Cellar/octave/4.2.1_2/bin/
./octave

Sadly, this produced the following error:

dyld: Library not loaded: /usr/local/opt/hdf5/lib/libhdf5.100.dylib
  Referenced from: /usr/local/Cellar/octave/4.2.1_2/libexec/octave/4.2.1/exec/x86_64-apple-darwin16.5.0/octave-gui
  Reason: image not found
octave exited with signal 6

After some poking around Brew’s install of Octave, I noticed the library in question (located at: /usr/local/opt/hdf5/lib/) had been updated to version 101 (libhdf5.101.dylib), instead of the expected 100 version. I also noticed there was a symlink from libhdf5.dylib to libhdf5.101.dylib. So I just duplicated that symlink, renamed it libhdf5.100.dylib and reran the ./octave command. Everything works!

 

P.S. I made a small text file that contains the following:

#!/bin/bash
# Runs Octave 4.2.1

/usr/local/bin/octave

and saved it to the Desktop with the filename Octave.command. Then in Terminal, I made it executable by running the following: chmod +x Octave.command

You can now double-click this file to run Octave!

NBA 2017 Playoff Bracket

The #NBA in general and the #Warriors in particular are the only league/team I’ve really followed this year. So, here are my picks. I feel good about the first round, although picking the #Bucks hurt. The second round, especially in the East, was a little trickier. #WarriorsGround