Mac Problem: unknown required load command 0x80000022

classic Classic list List threaded Threaded
10 messages Options
Reply | Threaded
Open this post in threaded view
|

Mac Problem: unknown required load command 0x80000022

Jarl Haggerty
I've been trying to get my program to run in multiple environments, so far it works in Windows 7 and Ubuntu but on the iMac I've gotten hold of I get this Exception.  I've found posts about similar problems which suggested using -d32, but then Java just says it can't run in 32 bit mode and will continue with 64 bit.

[INFO] Exception in thread "main" java.lang.UnsatisfiedLinkError: /Users/jarl/felidae/libgluegen-rt.jnilib:  no suitable image found.  Did find:  /Users/jarl/felidae/libgluegen-rt.jnilib: unknown required load command 0x80000022
[INFO] at java.lang.ClassLoader$NativeLibrary.load(Native Method)
[INFO] at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1823)
[INFO] at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1738)
[INFO] at java.lang.Runtime.loadLibrary0(Runtime.java:823)
[INFO] at java.lang.System.loadLibrary(System.java:1045)
[INFO] at com.jogamp.gluegen.runtime.NativeLibLoader.loadLibraryInternal(NativeLibLoader.java:102)
[INFO] at com.jogamp.gluegen.runtime.NativeLibLoader.access$000(NativeLibLoader.java:51)
[INFO] at com.jogamp.gluegen.runtime.NativeLibLoader$1.run(NativeLibLoader.java:70)
[INFO] at java.security.AccessController.doPrivileged(Native Method)
[INFO] at com.jogamp.gluegen.runtime.NativeLibLoader.loadGlueGenRT(NativeLibLoader.java:68)
[INFO] at com.jogamp.common.jvm.JVMUtil.<clinit>(JVMUtil.java:56)
[INFO] at javax.media.opengl.GLProfile.<clinit>(GLProfile.java:1141)
[INFO] at org.curious.felidae.media.Graphics.<clinit>(Graphics.java:70)
[INFO] at org.curious.felidae.Game.<init>(Game.java:25)
[INFO] at org.curious.felidae.Main.main(Main.java:14)
Reply | Threaded
Open this post in threaded view
|

Re: Mac Problem: unknown required load command 0x80000022

Wade Walker
Administrator
What version of OS X are you using? This may be a consequence of our .jnilibs being compiled for a later version than you have.
Reply | Threaded
Open this post in threaded view
|

Re: Mac Problem: unknown required load command 0x80000022

Jarl Haggerty
"About this Mac" says the OS is Version 10.5.8.  I clicked on update software and the only update that seemed to be relevant was an update to Java and it hasn't fixed anything.  Here's some more info

System Software Overview:

  System Version: Mac OS X 10.5.8 (9L30)
  Kernel Version: Darwin 9.8.0
  Boot Volume: W
  Boot Mode: Normal

Hardware Overview:

  Model Name: iMac
  Model Identifier: iMac7,1
  Processor Name: Intel Core 2 Duo
  Processor Speed: 2.8 GHz
  Number Of Processors: 1
  Total Number Of Cores: 2
  L2 Cache: 4 MB
  Memory: 4 GB
  Bus Speed: 800 MHz
Reply | Threaded
Open this post in threaded view
|

Re: Mac Problem: unknown required load command 0x80000022

Wade Walker
Administrator
Doing some more Googling, it looks like compiling on 10.6 may produce libraries that won't work on 10.5 if you don't set the flags right (see http://stackoverflow.com/questions/1440456/static-libraries-in-version-cross-compiled-program).

We have two options:

1. You can try the version I compiled just now on 10.6 with the -no_compact_linkedit flag described in the Stack Overflow post above (zip file at jogl-no-compact-linkedit.zip).

2. You can build JOGL on your 10.5.8 machine and try using the .jnilib files that come out of that build. I recently updated the instructions at http://jogamp.org/wiki/index.php/Building_JOGL_on_the_command_line to cover the Mac, so if you've already got Xcode installed, it should be easy.

Either way, please let me know what works -- if we need to change our build flags that would be good for us to know
Reply | Threaded
Open this post in threaded view
|

Re: Mac Problem: unknown required load command 0x80000022

Jarl Haggerty
Sorry to have such poor turn around, anyway, I ending up having to compile my own binaries.
Reply | Threaded
Open this post in threaded view
|

Re: Mac Problem: unknown required load command 0x80000022

Wade Walker
Administrator
Jarl Haggerty wrote
... I ending up having to compile my own binaries.
Did my custom binaries not work for you? Please let me know; I'd like to make sure our distributed binaries will work on Mac OS X 10.5.x as well as 10.6.x.
Reply | Threaded
Open this post in threaded view
|

Re: Mac Problem: unknown required load command 0x80000022

Sven Gothel
Administrator
In reply to this post by Wade Walker
On Monday, March 21, 2011 04:40:55 Wade Walker [via jogamp] wrote:

>
> Doing some more Googling, it looks like compiling on 10.6 may produce
> libraries that won't work on 10.5 if you don't set the flags right (see
> http://stackoverflow.com/questions/1440456/static-libraries-in-version-cross-compiled-program).
>
> We have two options:
>
> 1. You can try the version I compiled just now on 10.6 with the
> -no_compact_linkedit flag described in the Stack Overflow post above (zip
> file at  http://forum.jogamp.org/file/n2708643/jogl-no-compact-linkedit.zip
> jogl-no-compact-linkedit.zip ).
>
> 2. You can build JOGL on your 10.5.8 machine and try using the .jnilib files
> that come out of that build. I recently updated the instructions at
> http://jogamp.org/wiki/index.php/Building_JOGL_on_the_command_line to cover
> the Mac, so if you've already got Xcode installed, it should be easy.
>
> Either way, please let me know what works -- if we need to change our build
> flags that would be good for us to know

what are the downsides of '-no_compact_linkedit' ?

None ?
Shall we add this to gluegen then ?
I personally don't care that much ..

Nice findings Wade ..

~Sven
Reply | Threaded
Open this post in threaded view
|

Re: Mac Problem: unknown required load command 0x80000022

Wade Walker
Administrator
Sven Gothel wrote
what are the downsides of '-no_compact_linkedit' ?

None ?
Shall we add this to gluegen then ?
I'm hesitant to make any change, no matter how small it seems, unless we're very sure it fixes a problem. Trying to get something as complex as JOGL working across so many platforms is very difficult (as you know better than anyone ), so I don't want to risk changing something at random and possibly introducing a bug somewhere else. Hopefully Jarl will respond and then we'll know for sure.
Reply | Threaded
Open this post in threaded view
|

Re: Mac Problem: unknown required load command 0x80000022

Derek Manwaring
Have any changes been made to fix this? I am seeing the same problem on a Macbook Pro with Mac OS 10.5.8. I start my application from a jnlp file using Java web start. The jnlp file has an extension tag that goes to get the latest native libraries from http://jogamp.org/deployment/jogamp-current/jogl-all-awt.jnlp. Then the UnsatisfiedLinkError is thrown as described above. I do not see this problem on my Macbook Pro with OS 10.6.8.

Any updates on the situation would be appreciated, and thanks for all the work you guys do on this.

Derek
Reply | Threaded
Open this post in threaded view
|

Re: Mac Problem: unknown required load command 0x80000022

gouessej
Administrator
Please fill a bug report about this bug to help us to keep a track of it.
Julien Gouesse | Personal blog | Website