Mac OS X

From Moto4Lin

Jump to: navigation, search

Mac OS X support was recently added to moto4lin. Here's a rundown of what you'll need to do to get up and running from source. I used Mac OS X 10.4.2, but these instructions may work on earlier versions as well. Or you could Just download the binary from the link below.

Contents

Download the Binary moto4lin

If you'd rather not have to build it yourself, a full binary version is offered (unofficially).

moto4lin Mac OS X binary download: Moto4Mac.zip -- Link Fixed as of 00:04 CEST May 1, 2007

Expand the zip and then download and install Qt-Mac. You should now be able to run moto4lin.

I have used this on Mac OS X 10.4.6, 10.4.7, 10.4.8, 10.4.9 x86 and PPC with developer tools installed.

Note: The cdc_acm issue in newer phones (cited on the main page by dion) does not seem to be resolved in this build, as the issue was raised in May and the ZIP file in the download was created in March.

Obtaining libusb source

Download the latest release here.

Compiling libusb

Expand the archive either using gnutar or by double clicking it in the Finder. Then, in Terminal:

cd libusb
./configure
make
sudo make install

libusb will be installed into /usr/local/lib/libusb*.

Obtaining Qt for Mac OS X

Download a binary installer of Qt 3.3 here. You'll have to dig around a bit on the site, but it's there. You need the "application development framework" to compile moto4lin.

After downloading, run the installer package. Qt for Mac OS X will be installed in /Developer/Qt/.

You can also download QT from here. There are subtle changes in how to compile moto4lin using this package that I'll explain below.

Obtaining moto4lin source from Subversion

 svn co https://svn.sourceforge.net/svnroot/moto4lin moto4lin

Compiling moto4lin

You will need to add /Developer/qt/bin/ to your PATH, and set QTDIR to /Developer/qt/ first. Or, /usr/local/qt as QTDIR and /usr/local/qt/bin as PATH if you are using QT from KDE on Darwin. If your shell is bash, do this:

QTDIR=/Developer/qt
export QTDIR
PATH=$PATH:/Developer/qt/bin
export PATH

or this, if you are using QT from KDE on Darwin:

QTDIR=/usr/local/qt
export QTDIR
PATH=$PATH:/usr/local/qt/bin
export PATH


If your shell is tcsh, do this:

setenv QTDIR /Developer/qt
setenv PATH $PATH:/Developer/qt/bin

or

setenv QTDIR /usr/local/qt
setenv PATH $PATH:/usr/local/qt/bin

Then CD into the directory with the moto4lin source, and type the following:

qmake
make

In order to compile I needed to modify moto_ui/moto_ui.pro, adding "-lz" to the end of the "LIBS += -lusb" line. I also modified the generated makefile to set QMAKE = /Developer/qt/bin/qmake rather than just qmake. After compiling successfully, the resulting app is stored in moto4lin/moto_ui/moto4lin.app.

When running the app, you will likely need to change the device name. In my case, my phone shows up as /dev/cu.usbmodem1911. You can find out what the device name is by comparing the contents of /dev before and after plugging the phone in, like so:

ls -la /dev > temp
*plug phone in*
ls -la /dev > temp2
diff temp temp2
rm temp temp2

There should be two extra lines... one which is /dev/tty.* and one which is /dev/cu.*. You want to use the /dev/cu.* name in the moto4lin preferences.

My Experience Building moto4lin on 10.4.5

I had some trouble getting moto4lin built and running with MacOS 10.4.5 and the kde.opendarwin.org QT following the above instructions and needed to take some additional steps. The default C/C++ compiler on my system is gcc 4.0.0 and it would not link moto4lin. I modified moto_ui/Makefile to explicitly use gcc-3.3 as the C compiler and g++-3.3 as the C++ compiler. This got the code built and linked. Next I had a problem with it crashing on program startup. This was caused by the system not finding the libqt libraries at runtime. I needed to set the DYLD_LIBRARY_PATH environment variable to /usr/local/qt/lib. This was accomplished by editing ~/.MacOSX/environment.plist and then logging out and then back in. At this point it worked for me!

Building moto4lin if you use darwinports

You can use darwinports to deal with some of the dependencies. Here's what I did to get moto4lin built on 10.4.7. After adding -lz to the LIBS line in moto_ui/moto_ui.pro,

sudo port install libusb
sudo port install qt3-mac
qmake -after INCPATH+=/opt/local/include LFLAGS+=-L/opt/local/lib
make

The extra args to qmake are needed in order to get the compiler and linker to search darwinports' installed directories.

However, the above directions didn't quite work for me as of 2006-09-20, I had to do:

sudo port install libusb
sudo port install qt3-mac
qmake -after INCPATH+=/opt/local/include LFLAGS+=-L/opt/local/lib LIBS+=-lz
make QTDIR=/opt/lib

Other software: Java app loader

The program linjal works on OS X after a few minor modifications (the developer will probably include these soon).

Also note that on some phones which have a memory card, such as the V360, you can just copy jar files to the kjava directory of the memory card, and then choose "Install New" from the Games & Apps menu on the phone (you may first need to hit the middle menu key and "Switch Storage Device" to the memory card).

Personal tools