Создание и использование буферов протокола Google - PullRequest
1 голос
/ 14 декабря 2011

В настоящее время я работаю над проектом и пытаюсь внедрить буферы протокола для работы в качестве формата сериализации для хранения данных на локальном компьютере, а затем для последующего чтения. Некоторые функции буферов протокола кажутся идеальными для этого проекта, поэтому мне не терпелось проверить его, но я столкнулся с некоторыми проблемами.

Пока что я даже не смог пройти достаточно далеко, чтобы протестировать буфер протокола. Я загрузил самый последний zip-файл (версия 2.4.1) на мой компьютер с Windows. Я прочитал install.txt, расположенный в корне папки, но это было для систем на основе Unix. Затем я увидел, что он идет с папкой vsprojects и прочитал инструкции, перечисленные там. По сути, все, что мне сказали, это открыть решение, а затем собрать все решение либо в Debug, либо в Release. Я сразу же получил несколько ошибок о том, что «config.h» не найден.

Я снова проверил инструкции Unix, и первый шаг был ...

  1. cd' to the directory containing the package's source code and type './configure' to configure the package for your system. If you're using csh 'в старой версии System V, вам может потребоваться ввести sh ./configure' instead to prevent csh 'от попытки выполнить Сам "настроить".

Запуск `configure 'занимает некоторое время. Во время работы он печатает некоторые сообщения о том, какие функции он проверяет.

Итак, я загрузился в Ubuntu, которым редко пользуюсь, и попытался следовать этим инструкциям. Перечисленный выше шаг прошел нормально, и я даже смог перейти к следующему шагу и «сделать» проект, но затем, когда пришло время использовать «make install», я получил следующие ошибки:

ross@ubuntu:~/Desktop/protobuf-2.4.1$ make install
Making install in .
make[1]: Entering directory `/home/ross/Desktop/protobuf-2.4.1'
make[2]: Entering directory `/home/ross/Desktop/protobuf-2.4.1'
make[2]: Nothing to be done for `install-exec-am'.
test -z "/usr/local/lib/pkgconfig" || /bin/mkdir -p "/usr/local/lib/pkgconfig"
/bin/mkdir: cannot create directory `/usr/local/lib/pkgconfig': Permission denied
make[2]: *** [install-pkgconfigDATA] Error 1
make[2]: Leaving directory `/home/ross/Desktop/protobuf-2.4.1'
make[1]: *** [install-am] Error 2
make[1]: Leaving directory `/home/ross/Desktop/protobuf-2.4.1'

make: * [install-recursive] Ошибка 1

Я в основном использую windows для разработки, и весь проект, с которым я сейчас работаю, выполняется в windows, поэтому я немного обеспокоен. Кому-нибудь повезло с созданием Protocol Buffers в Windows или Linux?

Спасибо

1 Ответ

3 голосов
/ 15 декабря 2011

Вы не можете сделать make install своим собственным пользователем, когда пытаетесь установить его для всей системы. Либо используйте sudo make install, если у вас есть права sudo, либо станьте пользователем root любым другим возможным способом, а затем запустите его.

Если у вас нет прав администратора, вы можете запустить ./configure --prefix=$HOME/protobuffers, скомпилировать и запустить make install снова, он установит их в вашем домашнем каталоге в подкаталоге protobuffers. Обратите внимание, что после этого вы можете настроить LD_LIBRARY_PATH в профиле, чтобы иметь возможность находить библиотеки. Если вам нужен только protoc, это должно сработать.

--- редактировать ---

Кстати, Protoc также доступен для Windows, и вы можете использовать их там же. Вы можете скачать его здесь .

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