Ошибка неопределенных символов: «_compress» с классом загрузки изображений - PullRequest
1 голос
/ 14 февраля 2010

я хочу использовать этот класс Как я могу загрузить фотографию на сервер с iPhone? , чтобы загрузить изображение из приложения iPhone на мой веб-сервер.

Ive Скопировал заголовок и основной файл и добавил "#import" EPUploader.m "" в мой ViewControler, где я вызываю метод EPUploader.

Сообщение об ошибке:

Ld build/Release-iphonesimulator/PhotoApp.app/PhotoApp normal i386
cd /Users/phil/PhotoApp
setenv MACOSX_DEPLOYMENT_TARGET 10.5
setenv PATH "/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -arch i386 -isysroot /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator3.0.sdk -L/Users/phil/PhotoApp/build/Release-iphonesimulator -F/Users/phil/PhotoApp/build/Release-iphonesimulator -filelist /Users/phil/PhotoApp/build/NaoUp.build/Release-iphonesimulator/PhotoApp.build/Objects-normal/i386/PhotoApp.LinkFileList -mmacosx-version-min=10.5 -framework Foundation -framework UIKit -framework CoreGraphics -o /Users/phil/PhotoApp/build/Release-iphonesimulator/PhotoApp.app/PhotoApp

Undefined symbols:
  "_compress", referenced from:
      -[EPUploader(Private) compress:] in EPUploader.o
ld: symbol(s) not found
collect2: ld returned 1 exit status

Извините, если вопрос нуби ... я новичок в этом:)

Ответы [ 2 ]

6 голосов
/ 02 ноября 2010

Вы должны добавить libz.dylib framework в ваш проект.

1 голос
/ 14 февраля 2010

Вопрос, на который вы ссылаетесь, показывает этот комментарий для метода compress: (отредактировано для краткости):

* -[Uploader(Private) compress:] --
*      Uses zlib to compress the given data.

А внутри метода вызов compress():

int error = compress([destData mutableBytes],
                     &destSize,
                     [data bytes],
                     [data length]);

Мне кажется, вы не связываете zlib со своим приложением, поэтому компоновщик не может понять, как вызвать compress() На домашней странице zlib есть все необходимое для интеграции библиотеки с вашим приложением.

Также - это немного странно #import "EPUploader.m". Обычно вы бы только #import заголовочный файл.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...