1

The point is that I try to build vlc-qt binding from source. I do the following:

  1. Get libvlc-qt_0.10.0_win32_msvc2013.7z sources
  2. Open my Qt5 Creator (from MVSC2013 version)
  3. Open /src/CMakeLists.txt with it
  4. Run CMake
  5. Press build

Should work, but instead I get the following:

C:\Program Files (x86)\VideoLAN\VLC\sdk\include\vlc\plugins\vlc_threads.h:403: ошибка: C3861: 'poll': identifier not found
C:\Program Files (x86)\VideoLAN\VLC\sdk\include\vlc\plugins\vlc_configuration.h:103: ошибка: C2146: syntax error : missing ';' before identifier 'config_GetIntChoices'
C:\Program Files (x86)\VideoLAN\VLC\sdk\include\vlc\plugins\vlc_configuration.h:103: ошибка: C4430: missing type specifier - int assumed. Note: C++ does not support default-int
C:\Program Files (x86)\VideoLAN\VLC\sdk\include\vlc\plugins\vlc_configuration.h:104: ошибка: C4430: missing type specifier - int assumed. Note: C++ does not support default-int
C:\Program Files (x86)\VideoLAN\VLC\sdk\include\vlc\plugins\vlc_configuration.h:105: ошибка: C2146: syntax error : missing ';' before identifier 'config_GetPszChoices'
C:\Program Files (x86)\VideoLAN\VLC\sdk\include\vlc\plugins\vlc_configuration.h:105: ошибка: C4430: missing type specifier - int assumed. Note: C++ does not support default-int
C:\Program Files (x86)\VideoLAN\VLC\sdk\include\vlc\plugins\vlc_configuration.h:106: ошибка: C4430: missing type specifier - int assumed. Note: C++ does not support default-int

The surprises are that this project searches for some files in the current VLC player installation (Program Files is likely not the best place to get the dependecies), also that nothing's told about this behavior on the repository page, at first sight at at least.

Currently I'm trying to remove/reinstall player, run CMake with some keys etc. By the way, downloading CMake with gui never helped.

Could anyone, please, point me at the mistake in building. Thanks in advance.


UPD: Thanks, krnekit, it helped to get the key! Ah, it occured to be even more complicated (msvc 2013 update 4 used).

Briefly:

  • It's pretty hard to build the binding from source via Qt Creator + nmake
  • Telling CMake with CMAKE_PREFIX_PATH variable, where qt required libraries are helps a lot
  • The problem of searching vlc player headers in sdk is solved similarly after some of the Cmake configuring
  • When I started building my sample with the vlc-qt sources included, instead of using the shared dll, I understood that /src/windows contains headers (poll.h and other) are requied to prevent the errors. Don't really know, why it didn't work with Cmake doing it instaed of me
4

1 回答 1

1

这是 vlc 的问题,而不是 vlc-qt 的问题。您的程序应该至少使用 VS 2013 Update 2(或者甚至更新)进行编译。

或者,快速而肮脏的解决方案是修改 vlc 包含,有关详细信息,请参阅此错误报告。您还应该提供 poll.h 包含文件。

于 2015-07-27T19:35:00.417 回答