Как скомпилировать libdvdcss на Mac с Xcode? - PullRequest
1 голос
/ 09 апреля 2011

Мне интересно, как скомпилировать исходный код libdvdcss, используя Xcode на Mac OS X? Файл bsdi_ioctl.c содержит операторы для /sys/dev/scsi/scsi.h и /sys/dev/scsi/scsi_ioctl.h.

Я запустил ./bootstrap и ./configure, чтобы сначала сгенерировать config.h, но у меня все еще есть проблема.

Может кто-нибудь пролить свет на это?

Ответы [ 2 ]

1 голос
/ 16 апреля 2011

Не позволяйте сообщениям отладки от ./configure обманывать вас:

checking dvd.h usability... no
checking dvd.h presence... no
checking for dvd.h... no
checking /sys/dev/scsi/scsi_ioctl.h usability... no
checking /sys/dev/scsi/scsi_ioctl.h presence... no
checking for /sys/dev/scsi/scsi_ioctl.h... no
checking sys/scsi/scsi_types.h usability... no
checking sys/scsi/scsi_types.h presence... no
checking for sys/scsi/scsi_types.h... no
checking sys/scsi.h usability... no
checking sys/scsi.h presence... no
checking for sys/scsi.h... no
checking IOKit/storage/IODVDMediaBSDClient.h usability... yes
checking IOKit/storage/IODVDMediaBSDClient.h presence... yes
checking for IOKit/storage/IODVDMediaBSDClient.h... yes

Это то, что я получил при создании библиотеки. Хотя некоторые сообщения могут вас беспокоить, некоторые из этих заголовков не важны для системы Mac. Во всяком случае, я попробовал следующее, и все работало хорошо. В настоящее время я использую Mac OS X 10.6.7, и, чтобы было ясно, libdvdcss должен быть собран из строки cmd . Забудьте XCode!

Первым шагом является загрузка самой последней версии библиотеки. Если вы проверите их домашнюю страницу , вы заметите, что они рекомендуют загружать исходные коды прямо из своего хранилища SVN:

svn co svn://svn.videolan.org/libdvdcss/trunk libdvdcs

Как только загрузка завершится и вы окажетесь в каталоге, выполнение этих команд должно успешно скомпилировать библиотеку:

./bootstrap
./configure
make

Если вы хотите проверить его, в каталоге test есть приложение с именем csstest . Во-первых, найдите, куда установлен ваш DVD (убедитесь, что у вас есть диск внутри компьютера):

$ mount
/dev/disk1 on /Volumes/DISK_NAME (udf, local, nodev, nosuid, read-only, noowners)

и затем выполните csstest :

$ ./csstest /Volumes/DISK_NAME/VIDEO_TS/VTS_01_1.VOB 1024
cool, I found libdvdcss version 1.2.10
requested sector: 000001ba...30107f1c04e03100c031223e0c01017c86c08fff88ff...
sector is not scrambled

Чтобы установить его в вашей системе, вы должны иметь права суперпользователя, чтобы выполнить:

make install
1 голос
/ 12 апреля 2011

Необычно, что ваш Makefile будет пытаться включить эти файлы, поскольку в файле autoconf есть инструкция для их поиска, прежде чем включать их в ваш Makefile. Но независимо от причины, у вас есть несколько вариантов компиляции:

  1. Редактировать src / Makefile. Найдите $(bsdi_sources) и удалите все вхождения, затем заново создайте (не перенастраивайте)
  2. или Редактировать файл configure.ac. Найдите AM_CONDITIONAL(SYS_BSDI и замените на SYS_BSDI='0'. Затем перезапустите ./bootstrap & ./configure
  3. или Запустите SYS_BSDI="0" ./configure (одиночная команда), чтобы выполнить повторную обработку без.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...