Я хочу использовать protobuf (https://code.google.com/p/protobuf/) в своем проекте
Вы успешно скомпилировали protobuf с xCode 5, пожалуйста, помогите поделиться своим опытом?
Спасибо.
Я хочу использовать protobuf (https://code.google.com/p/protobuf/) в своем проекте
Вы успешно скомпилировали protobuf с xCode 5, пожалуйста, помогите поделиться своим опытом?
Спасибо.
Если вы не возражаете строить Google Protobuf самостоятельно, то хорошей альтернативой использованию Cocoapods является запуск bash script здесь.
https://gist.github.com/BennettSmith/7150245
Этот script создаст правильную сборку Google Protobuf, которая поддерживает архитектуры i386, armv7, armv7s, arm64 и x86_64. Он будет создавать статическую библиотеку, которая является универсальной. Он также будет создавать компилятор protoc для использования в OS X.
Вы можете добавить поддержку буферов протокола Google в проект Xcode 5 с использованием Cocoapods, добавив следующую строку в ваш подфайл.
pod 'GoogleProtobuf', '~> 2.5.0'
Это поместит версию протобуфа С++ в Pod для вашего проекта. Он также добавит компилятор protoc
в папку Pods/GoogleProtobuf/bin/protoc
в вашем проекте.
В проекте можно создать правило пользовательской сборки, которое автоматически преобразует файлы .proto
в файлы .ph.{h,cc}
. Вот как я это сделал:
Установите правило сборки для "Обработать исходные файлы с именами, соответствующими: *.proto Использование Custom Script". script должен включать следующее:
cd ${INPUT_FILE_DIR}
${SRCROOT}/Pods/GoogleProtobuf/bin/protoc --proto_path=${INPUT_FILE_DIR} ${INPUT_FILE_PATH} --cpp_out=${INPUT_FILE_DIR}/cpp
Задайте выходные файлы следующим образом:
$(INPUT_FILE_DIR)/cpp/$(INPUT_FILE_BASE).pb.h
$(INPUT_FILE_DIR)/cpp/$(INPUT_FILE_BASE).pb.cc
Любые .proto
файлы, которые вы включаете в свой проект, теперь будут автоматически преобразованы в С++ и затем скомпилированы как часть вашей сборки.