> It is a common misconception that one needs to use the 10.4 SDK to
> create an executable that is compatible with 10.4. This is not so.
In most cases, you're right. However, we're linking to the iconv library. If
we don't specify the 10.4 SDK via isysroot, it will link to the wrong version
of libiconv.dylib and won't run on 10.4 with this error:
dyld: Library not loaded: /usr/lib/libiconv.2.dylib
Referenced from: <snip>
Reason: Incompatible library version: <snip> requires version 7.0.0 or
later, but libiconv.2.dylib provides version 5.0.0
Trace/BPT trap
The problem can be seen by inspecting the exe with otool:
/usr/lib/libiconv.2.dylib (compatibility version 7.0.0, current version
7.0.0)
/usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version
1.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current
version 111.1.4)
But if we use the 10.4 sdk, otool shows that we get the right "compatibility
version" of libiconv:
/usr/lib/libiconv.2.dylib (compatibility version 5.0.0, current version
5.0.0)
/usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version
1.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current
version 88.3.10)
which will run fine on 10.4.
Thanks,
aaron
_______________________________________________
Powered by www.kitware.com
Visit other Kitware open-source projects at
http://www.kitware.com/opensource/opensource.html
Please keep messages on-topic and check the CMake FAQ at:
http://www.cmake.org/Wiki/CMake_FAQ
Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake