0

LIBXLSというパッケージを作成中のMacOSXプログラムに編み込もうとすると、次のコンパイル/リンクメッセージが表示されます。

ld: warning: ignoring file /Users/joeruth/Documents/cocoa applications/TestExcel/libxls-0.2.0-i386/usr/local/libxls/lib/libxlsreader.dylib, 
file was built for unsupported file format ( 0xce 0xfa 0xed 0xfe 0x 7 0x 0 0x 0 0x 0 0x 3 0x 0 0x 0 0x 0 0x 6 0x 0 0x 0 0x 0 ) 
which is not the architecture being linked (x86_64): 
/Users/joeruth/Documents/cocoa applications/TestExcel/libxls-0.2.0-i386/usr/local/libxls/lib/libxlsreader.dylib

私が望んでいるのは、これを完全に間違って行い、このパッケージをプログラムにリンクする方法を調整する必要があるということです。私の恐れは、パッケージがXcodeおよびMacOSXと単に互換性がないことです。

このようなファイルを、プロジェクトのターゲットの「ビルドフェーズ」「バイナリとライブラリのリンク」タブに追加しました。気になるのはlibxlsreader.a、パッケージのドキュメントに従って名前が付けられたファイルにリンクしたところ、エラーが正しいライブラリ名にあることlibxlsreader.dylibです。この種のことは、私が正しいことをしたこと、そしてコンパイラーがファイルを見て、それがfubarであると判断したことを教えてくれます。

これがメッセージが私に伝えようとしていることであることを誰かが確認できますか?

4

1 に答える 1

2

表示されるエラーメッセージは、取得したライブラリファイルが(64ビットIntel)i386ではなく(32ビットIntel)アーキテクチャ用に構築されていることを示しています。x86_64チップオフは、ファイルの最初の4バイトです(CE FA ED FE)。

于 2013-01-28T02:51:19.310 に答える