Wine Mac Os Lion




This is the current development branch of Wine. The name is a bit misleading as it is superior to the stable build in most aspects. If your program is laking some functionality under wine, this is the version to go with, as it is evolving very fast. Check back often to download the most recent version. One of the big news is, that it does not need X11 anymore.
The current stable branch of Wine. It is usually very static and only receiving very few updates. If your program runs with it, it is a great way of having a solid base to use your apps on.
This is the last 'complete' version of Wine for OS X Tiger. You can use this version of WineBottler together with the 1.4.0 and the 1.4.1 No-Audio-Build on OS X Tiger (see below). Wine is no longer actively developed for OS X Tiger.
Run your Windows based Programs on your Mac with these vanilla Wine Builds. They are compiled from the sources of winehq.org and they come as a neat .app with my custom starter. For more info on how these Wine.app Builds are generated, have a look at the Tech Specs. If you need something more powerful, try WineBottler.

The OS I am referring to in this article is OSX Mountain Lion. Wine can be ran on OSX (intel Macs) with a little bit of work using Xcode and MacPort. If you would like a rundown on how to run Wine on OSX you can head over to another great site ran by a fellow geek/nerd David Baumgold, he has step-by-step instructions on how to run Wine on OSX. Lots of games run fine in Lion. Check the Mac App Store for plenty of options. (If you're looking for indie games, I've made a list of some of the best indie games on the Mac App Store.) Also, there's Steam. Lots of Mac-compatible games there, and more being added all the time. Just check system requirements.


nxtOSEK Installation in Mac OS X Lion






By Dmitry Prokhorov

DISCLAIMER: This installation procedure is provided “as is” with no guarantees.



1. Installing LEGO Fantom driver for Mac OS


http://mindstorms.lego.com/en-us/support/files/Driver.aspx


2. Downloading GNU ARM toolchain

Download YAGARTO GNU ARM toolchain (http://www.yagarto.de/):

to standard download folder ~/Download

Note that Toolchain contains new arm gcc 4.6.2 compiler. All standard libraries in package were built under EABI 5,

so we’ll need to rebuild nxtOSEK libraries (as shown later) which were built under EABI 0:

libecorobotc++.a

libecorobotc.a

libnxtway_gs_balancer.a

nxtOSEKecrobotbiosnxt_bios_rom.rfw


3. Installing GNU ARM toolchain

To unpack toolchain (as described at YAGARTO Readme file):

1)Create directory “yagarto” (without quotes) in home folder (~/yagarto).


2)Mount downloaded .dmg file.


3)Move installer yagarto-4.6.2 from .dmg to ~/yagarto


4)Run installer. It will create directory yagarto-4.6.2 in ~/yagarto folder and install toolchain to it.


If you don’t want to place toolchain at ~/yagarto/yagarto-4.6.2 and would like to move it after unpacking, for example to /opt directory, do the following:

1)Run terminal


2)If you haven’t /opt folder, create it:

sudomkdir /opt


3)Move YAGARTO GNU ARM toolchain to /opt

sudo mv ~/yagarto/ yagarto-4.6.2/arm-non-eabi /opt

If you don’t need .dmg file and installer, feel free to delete it.


4. Installing Wine

Download and install WineBottler (Wine port for Mac OS X) from:

http://winebottler.kronenberg.org/


5. Add path to .bash-profile

export $PATH =$PATH:/Applications/Wine.app/Contents/MacOS

Logout and login again to update environment variables.


6. Installing nxtOSEK

Download nxtOSEK v2.161 and unpack it.

http://sourceforge.net/projects/lejos-osek/files/nxtOSEK/nxtOSEK_v2161.zip/download


Note that the GNU ARM toolchain described in the section 3 requires a patch for linker script file.

Download sam7_ecrobot.lds and replace with the one in nxtOSEK/ecrobot/c



7. Installing & building native tools

Note that tools for Windows (NeXTTool.exe, appflash.exe and ramboot.exe) doesn’t work in Wine under Lion so we don’t need them.

We’ll use native version of:

nexttool(for Mac OS X) by John Hansen,

appflash (sources included in nxtOSEK, re-builded in Mac OS X)

fwflash by David Anderson (instead of ramboot)


Note that fwexec and appflash binaries are stored in nxtOSEK/bin directory

nexttool

Download native nexttool for Mac OS X:

http://bricxcc.sourceforge.net/nexttool_osx.zip

Unpack and move nexttool to nxtOSEK/bin directory.

Also you can download GUI NeXT Tools utility (it is not nessesary):

http://bricxcc.sourceforge.net/nexttools_osx.zip

fwexec

Download libusb 0.1 for Mac OS X Lion and install it.

http://www.anyma.ch/blogs/research/2011/08/13/libusb-for-macosx-lion-10-7/

Download libnxt-0.3 and unpack it

http://libnxt.googlecode.com/files/libnxt-0.3.tar.gz

Download scons

http://www.scons.org/

Install scons:

sudo python setup.py install

Go to linnxt-0.3 directory and run:

scons

to build fwexec

appflash

Install NI-VISA for Mac OS from here (registration needed, free of charge):

http://joule.ni.com/

Download NXT++ from here:

http://nxtpp.clustur.com/

Copy all *.h files from fantom directory to nxtcommfantom/fantom

Go to nxtOSEK/nxtcommfantom

Create makefile as shown at the end of this letter (this makefile is attached to this letter).

You should change FANTOM, OSEK and DEPLOY variables to your settings.

Run:make



8. Editingtool_gcc.mak

Specify GNU ARM directory and nexttool directory and tools names.

Just for example:

GNUARM_ROOT = /opt/arm

NEXTTOOL_ROOT = /Users/your_home_dir/nxtOSEK/bin

NEXTTOOL = nexttool

APPFLASH = appflash

RAMBOOT = fwexec

Set up prefix:

TARGET_PREFIX = arm-none-eabi

If arm-elf-gcc 4.4.2 have been installed specify:

TARGET_PREFIX = arm-elf

Note that BIOSFLASH variable is not used, you can safely delete it.

Wine Mac Os Lion


9. Re-building nxtOSEK libraries

1)Go to nxtOSEK/ecrobot/c++ and run:

make all

Wine

make release


2)Go to nxtOSEK/ecrobot/c and run:

make all

make release


3)Go to nxtOSEK/ecrobot/bios and run:

make all

make release


4)Go to nxtOSEK/ecrobot/nxtway_gc_balancer and run:

make all

make release

Install Wine On Mac Os

Wine

Warnings about impossibility of inlining can be emitted during compilation.


10. Installing John Hansen's Enhanced NXT Firmware


Install John Hansen's Enhanced NXT running Windows as described in nxtOSEK official tutorial:

http://lejos-osek.sourceforge.net/installation_windows.htm#ENF_inst

Wine Mac Os Lion 10.8




11. Testing


  1. Go to nxtOSEK/samples_c++/cpp/Helloworld/

  2. Build helloworld:
    make all

  3. Run brick and download helloworld:
    ./rxeflash.sh

  4. Run downloaded helloword via brick’s menu.

In some case of using pure virtual function in classes, it may be necessary to define function __cxa_pure_virtual() to avoid of linker error. For example:

extern 'C' void __cxa_pure_virtual() { while (1); }


Summary (differences from Augusto Ribiero’s way):

  • Pre-build GNU ARM toolchain, no Mac Port needed
  • New GNU ARM compiler (4.6.2) instead of old 4.0.2, 4.2.x, etc

  • Support for global C++ object's constructor and destructor calls according ARM EABI
  • No annoying warnings from wineconsole
  • Full set of native tools (to avoid problem with Windows tools & Wine)
  • Universal scripts that can be added to future release (of course, after test on Cygwin, Linux, Mac OS X etc)
  • Less disk space requirements (because no Mac Port)
  • Compatible with Mac OS X Lion

Wine For Mac