EyeLink 64bit library installation
You may install directly from the SR Research website (you will need a login), see instructions below or if you are a GRU member you can download the files directly following the instructions below (note that the libraries are SR Research proprietary so we cannot distribute them to non-lab members).
Make sure that you have already installed the EyeLink_Developers_Kit_For_MacOSX (you should have eyelink frameworks in /Library/Frameworks).
Double-click on the .tar files to open them (or from a terminal use tar xfv *.tar).
Replace the Frameworks edfapi.framework and eyelink_core.framework from the downloaded files above into your directory /Library/Frameworks.
Compile using mglMake('eyelink') in matlab. If you run into errors see below
Downloading from SR Research
As of Jun 25, 2013 the installation procedure is as follows:
Download an installer and two additional files from here
. I mean all the files.
Remove the following frameworks from /Library/Frameworks, as they will be replaced by the next steps: edfapi, eyelink_core, eyelink_core_graphics, SDL, SDL_mixer, SDL_image, SDL_ttf, SDL_gfx if you have them.
Start installation with “Eyelink_Developers_Kit_For_MacOSX.dmg”. The goal is to install frameworks into /Library/Frameworks.
Make sure that the frameworks in the SDL directory and Frameworks get copied to /Library/Frameworks
unzip “edfapi_mac_osxuniversal.zip”. Copy “edfapi.frameworks” to /Library/Frameworks.
run mglMake('eyelink') and check below
if you run into any errors.
Eyelink compile errors
If mglMake('eyelink') says that everything is “up to date” then you should go and delete all the *.mexmaci64 files in mgl/mgllib/mglEyelink
You may also need the SDL frameworks (although these can be the old ones which should have been installed when you first installed eyelink: SDL.framework, SDL_ttf.framework, SDL_mixer.framework, SDL_image.framework, SDL_gfx.framework). Check in /Library/Frameworks for these frameworks. If they are not there, you should install them from the install disk.
If you see errors like the following
ld: framework not found edfapi
collect2: ld returned 1 exit status
mex: link of ' "mglEyelinkIsConnected.mexmaci64"' failed.
Error compiling mglEyelinkIsConnected.c
Error using mex (line 206)
Unable to complete successfully.
-- or --
mglEyelinkIsConnected.c:18:21: error: eyelink.h: No such file or directory
mglEyelinkIsConnected.c: In function 'mexFunction':
mglEyelinkIsConnected.c:26: error: 'INT16' undeclared (first use in this function)
mglEyelinkIsConnected.c:26: error: (Each undeclared identifier is reported only once
mglEyelinkIsConnected.c:26: error: for each function it appears in.)
mglEyelinkIsConnected.c:26: error: expected ';' before 'connectionStatus'
mglEyelinkIsConnected.c:29: error: 'connectionStatus' undeclared (first use in this function)
It probably means the compiler/linker cannot find the Framework properly. Make sure of the following:
/Library/Frameworks has both edfapi.framework and eyelink_core.framwork (just ls the directory and check)
Make sure that those two frameworks are properly installed. You should be able to ls the directory and get something like this
terranova:/Library/Frameworks> ls /Library/Frameworks/edfapi.framework/
Headers@ Resources@ Versions/ edfapi@
terranova:/Library/Frameworks> ls /Library/Frameworks/eyelink_core.framework/
Headers@ Resources@ Versions/ eyelink_core@
Now make sure that the mexopts file you are using checks the correct directory. For example, if you are using mexopts.10.8.xcode.4.5 (found in the mgl/mgllib/mglEyelink directory) It should have the flag “-F/Library/Frameworks” in LDFLAGS.
Finally, if that does not work and you cannot get the compiler to find the frameworks, go to the directory where the frameworks are being loaded from (which may be in the Developer SDK e.g. /Developer/SDKs/MacOSX10.6.sdk/Library/Frameworks or /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks) and put links to the two frameworks there
terranova:/Users/justin> cd /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks
terranova:/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks> sudo ln -s /Library/Frameworks/eyelink_core.framework .
terranova:/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks> sudo ln -s /Library/Frameworks/edfapi.framework .