English 中文(简体)
libtiff.3.dylib: unknown required load command 0x80000022
原标题:

Has anyone found a fix for this? I read that it has something to do with new dylib format in Snow Leopard...

(This is the lib I get back from MacPorts.)

Thanks, rui

最佳回答

What are you trying to use that library with? Chances are you have an old version of some build tool or app. Have you updated all of your MacPorts installation?

sudo port selfupdate
sudo port -u upgrade outdated

EDIT: Based on your additional information, more questions:

You have -I /sw/include and -L /sw/lib which are standard locations for Fink, not MacPorts (/opt/local/{include,lib}). In general, it s not a good idea to mix packages from Fink and MacPorts. Are you actually pulling in anything from Fink? If so, are all the Fink packages up-to-date?

If that doesn t resolve the issue, are you building on 10.5 and, if so, which 10.5? Or are you building on 10.6 an app targeted for 10.5 and 10.6? Make sure you have the latest Xcode in either case.

EDIT: It is very difficult to diagnose problems like this based on sketchy information. You say Leopard in your latest comment but then you say you are using the 10.6 SDK. At this point, all I can suggest is that you make sure you have the latest Xcode updates installed and, if you want more help, update the question with a more complete description of what you are trying to do and exactly how and where you are trying to do it, including versions of tools like gcc, et al. Good luck!

问题回答

We have this same problem whenever we try to run an executable compiled and linked on Snow Leopard without -isysroot /Developer/SDKs/MacOSX10.5.sdk -mmacosx-version-min=10.5 and then try to run it on Leopard. Note the -isysroot setting is different than in your comment above.

The application was incorrectly built on OS X 10.6 machine for a 10.5 machine. The developer can fix this by considering three things:

  1. Using the correct compiler parameters: gcc-4.2 -mmacosx-version-min=10.5 -isysroot /Developer/SDKs/MacOSX10.5.sdk ...
  2. Using the correct linker settings (setting environment variable before link command). This is required, so that the OS X 10.6 linker will not use the loader command LC_DYLD_INFO_ONLY (=0x80000022), because OS X 10.5 does not understand this command:

    export MACOSX_DEPLOYMENT_TARGET=10.5 (or setenv MACOSX_DEPLOYMENT_TARGET=10.5)

After this is fixed, one can check if the application was correctly built for OS X 10.5 by running otool :

otool -l binary

The correct binary should not contain any LC_DYLD_INFO_ONLY load commands (only LC_DYLD_INFO commands).

(also see my blog article http://grauonline.de/wordpress/?p=71 )





相关问题
Undefined reference

I m getting this linker error. I know a way around it, but it s bugging me because another part of the project s linking fine and it s designed almost identically. First, I have namespace LCD. Then I ...

C++ Equivalent of Tidy

Is there an equivalent to tidy for HTML code for C++? I have searched on the internet, but I find nothing but C++ wrappers for tidy, etc... I think the keyword tidy is what has me hung up. I am ...

Template Classes in C++ ... a required skill set?

I m new to C++ and am wondering how much time I should invest in learning how to implement template classes. Are they widely used in industry, or is this something I should move through quickly?

Print possible strings created from a Number

Given a 10 digit Telephone Number, we have to print all possible strings created from that. The mapping of the numbers is the one as exactly on a phone s keypad. i.e. for 1,0-> No Letter for 2->...

typedef ing STL wstring

Why is it when i do the following i get errors when relating to with wchar_t? namespace Foo { typedef std::wstring String; } Now i declare all my strings as Foo::String through out the program, ...

C# Marshal / Pinvoke CBitmap?

I cannot figure out how to marshal a C++ CBitmap to a C# Bitmap or Image class. My import looks like this: [DllImport(@"test.dll", CharSet = CharSet.Unicode)] public static extern IntPtr ...

Window iconification status via Xlib

Is it possible to check with the means of pure X11/Xlib only whether the given window is iconified/minimized, and, if it is, how?

热门标签