kipus, для сборки
MPC от clsid'а VS 2008 не подойдет, надо собирать в VS 2005, так же надо использовать Microsoft Windows SDK v6.0, с v6.1 собираться не будет, и надо заменить Microsoft DirectX SDK (июнь 2008) на Microsoft DirectX SDK (август 2007)
MPC от clsid'а собираем в VS 2005, [more=а MPC-HC в VS 2008]
Компоненты необходимые для сборки MPC-HC. Microsoft Visual C++ 2008, полная версия (На Express Edition собирать не пробовал, и не смогу сказать точно, будет работать или нет).
Microsoft® Windows® Software Development Kit Update for Windows Vista 6.1.6000.16384.10 - Если планируете собирать проект MPC-HC x64, то обязательно выбираем компоненты х64 при установке.
BaseClasses из Microsoft® Windows® Software Development Kit Update for Windows Vista 6.1.6000.16384.10.
DirectX SDK (июнь 2008) – устанавливаем в папку, которая предлагается по умолчанию инсталлятором. Качаем набор файлов из предыдущего DirectX SDK (август 2007),
тут (105kB), начиная с ноябрьского выпуска 2007 DirectX SDK эти файлы исключены из набора, но они требуются для сборки MPC-HC.
Microsoft Data Access Components (MDAC) 2.8 Software Development Kit Для сборки libavcodec_gcc.lib потребуется MINGW с GCC 4.2.4. Рабочий MINGW с GCC 4.2.4, моей сборки,
берем вот тут.
Для сборки с использованием MS VC++ 2008 надо скачать исходники
ATL Server.
Ссылку для получения исходников берем
тут, качаем их с помощью программы
TortoiseSVN, или любой аналогичной.
Качаем NASM последней версии
тут.
Настройка путей в Microsoft Visual C++ 2008, для сборки проекта
MPC-HC x86:
В настройках VS2008, в VC++
Directories->Platform выбераем
Win32, и указываем следующие пути
В Executable files указываем пути: C:\dev\nasm – папка в которой размещается NASM
C:\Program Files\Microsoft SDKs\Windows\v6.0\bin
C:\Program Files\Microsoft DirectX SDK (June 2008)\Utilities\Bin\x86
В Include files указываем пути: C:\dev\ATL_Server_Source\include – папка в которой размещается ATL Server
C:\work\mpc-hc.vc9\src\filters\BaseClasses – путь к папке BaseClasses, которая размещается в исходниках, в нее надо скопировать содержимое папки BaseClasses из c:\Program Files\Microsoft SDKs\Windows\v6.0\Samples\Multimedia\DirectShow\BaseClasses\ кроме двух файлов
baseclasses.sln и baseclasses.vcproj.
C:\Program Files\Microsoft SDKs\Windows\v6.0\Include
C:\Program Files\Microsoft SDKs\Windows\v6.0\Include\gl
C:\Program Files\Microsoft DirectX SDK (June 2008)\Include
C:\dev\inkl_dx_sdk - недостающие компоненты из
Microsoft DirectX SDK (август 2007) C:\Program Files\Microsoft Data Access SDK 2.8\Inc
В Library files указываем пути: C:\msys\mingw\lib – путь к библиотекам GCC
C:\msys\mingw\lib\gcc\mingw32\4.2.4 – путь к библиотекам GCC
C:\Program Files\Microsoft SDKs\Windows\v6.0\Lib
C:\Program Files\Microsoft DirectX SDK (June 2008)\x86
C:\dev\lib_dx_sdk - недостающие компоненты из
Microsoft DirectX SDK (август 2007) C:\Program Files\Microsoft Data Access SDK 2.8\Libs\x86
В Exclude files указываем пути: C:\Program Files\Microsoft SDKs\Windows\v6.0\Include
C:\Program Files\Microsoft SDKs\Windows\v6.0\Include\gl
Настройка путей в Microsoft Visual C++ 2008, для сборки проекта
MPC-HC x64:
В настройках VS2008, в
VC++ Directories->
Platform выбераем
х64, и указываем следующие пути
В Executable files указываем пути: C:\dev\nasm – папка в которой размещается NASM
C:\Program Files\Microsoft SDKs\Windows\v6.0\bin
C:\Program Files\Microsoft DirectX SDK (June 2008)\Utilities\Bin\x86
В Include files указываем пути: C:\dev\ATL_Server_Source\include – папка в которой размещается ATL Server
C:\work\mpc-hc.vc9\src\filters\BaseClasses – путь к папке BaseClasses, которая размещается в исходниках, в нее надо скопировать содержимое папки BaseClasses из c:\Program Files\Microsoft SDKs\Windows\v6.0\Samples\Multimedia\DirectShow\BaseClasses\ кроме двух файлов
baseclasses.sln и baseclasses.vcproj.
C:\Program Files\Microsoft SDKs\Windows\v6.0\Include
C:\Program Files\Microsoft SDKs\Windows\v6.0\Include\gl
C:\Program Files\Microsoft DirectX SDK (June 2008)\Include
C:\dev\inkl_dx_sdk - недостающие компоненты из
Microsoft DirectX SDK (август 2007) C:\Program Files\Microsoft Data Access SDK 2.8\Inc
В Library files указываем пути: C:\Program Files\Microsoft SDKs\Windows\v6.0\lib\x64
C:\Program Files\Microsoft DirectX SDK (June 2008)\Lib\x64
C:\dev\lib_dx_sdk - недостающие компоненты из
Microsoft DirectX SDK (август 2007) C:\Program Files\Microsoft Data Access SDK 2.8\Libs\amd64
В Exclude files указываем пути: C:\Program Files\Microsoft SDKs\Windows\v6.0\Include
C:\Program Files\Microsoft SDKs\Windows\v6.0\Include\gl
Сборка проекта MPC-HC х86 1. В любом месте диска создаем рабочую папку для сборки MPC-HC, например
C:\work\mpc-hc.vc9, и экспортируем туда исходники. (эта папка общая, для проектов х86 и х64)
2. Из папки
c:\Program Files\Microsoft SDKs\Windows\v6.0\Samples\Multimedia\DirectShow\BaseClasses\ копируем все, кроме двух файлов
baseclasses.sln и baseclasses.vcproj, в папку
C:\work\mpc-hc.vc9\src\filters\BaseClasses.
3. Запускаем Microsoft Visual C++ 2008, и в первую очередь создаем библиотеку
strmbaseRU.lib, открываем
c:\work\ mpc-hc.vc9\trunk\src\filters\BaseClasses\baseclasses.vcproj, переключаем проект в
Release Unicode lib - Win32 и компилируем библиотеку.
4. Затем для создания
libavcodec_gcc.lib запускаем MINGW, открываем командой
cd /c/work/ mpc-hc.vc9/trunk/src/filters/transform/mpcvideodec/ffmpeg/ папку, и выполняем
MAKE.
5. После этого в Microsoft Visual C++ 2008 открываем файл
c:\work\ mpc-hc.vc9\trunk\mpc-hc.sln, переключаемся в режим
Release Unicode - Win32 и компилируем проект. Готовый файл будет находится в этой папке
c:\work\ mpc-hc.vc9\trunk\src\apps\mplayerc\Release Unicode\.
6. Затем открываем в Microsoft Visual C++ 2008 файл
mpcresources.sln, переключаемся в режим
Release Unicode - Win32 и компилируем по необходимости ленгвапаки.
Сборка проекта MPC-HC х64 1. В любом месте диска создаем рабочую папку для сборки MPC-HC, например
C:\work\mpc-hc.vc9, и экспортируем туда исходники. (эта папка общая, для проектов х86 и х64)
2. Из папки
c:\Program Files\Microsoft SDKs\Windows\v6.0\Samples\Multimedia\DirectShow\BaseClasses\ копируем все, кроме двух файлов
baseclasses.sln и baseclasses.vcproj, в папку
C:\work\mpc-hc.vc9\src\filters\BaseClasses.
3. Запускаем Microsoft Visual C++ 2008, и в первую очередь создаем библиотеку
strmbaseRU.lib, открываем
c:\work\ mpc-hc.vc9\trunk\src\filters\BaseClasses\baseclasses.vcproj, переключаем проект в
Release Unicode lib - x64 и компилируем библиотеку.
4. Открываем из папки
c:\work\ mpc-hc.vc9\trunk\src\filters\transform\mpcvideodec\ffmpeg в Microsoft Visual C++ 2008 файл
libavcodec.vcproj, переключаем проект в
Release - x64 и компилируем библиотеку.
5. После этого в Microsoft Visual C++ 2008 открываем файл
c:\work\ mpc-hc.vc9\trunk\mpc-hc.sln, переключаемся в режим
Release Unicode - х64 и компилируем проект. Готовый файл будет находится в этой папке
c:\work\ mpc-hc.vc9\trunk\src\apps\mplayerc\x64\Release Unicode\.
6. Затем открываем в Microsoft Visual C++ 2008 файл
mpcresources.sln, переключаемся в режим
Release Unicode - х64 и компилируем по необходимости ленгвапаки.
[/more]