x11/xlib с Microsoft Visual С++

Я копирую этот код из Википедии: http://en.wikipedia.org/wiki/Xlib

И я получаю эту ошибку:

fatal error C1083: Cannot open include file: 'X11/Xlib.h': No such file or directory

Я предполагаю, что это работает для С++, даже если код написан на С, или, по крайней мере, найти библиотеку x11?

Целый день застрял в этой проблеме ... кто-нибудь знает, что я здесь делаю неправильно?


person Alice    schedule 09.03.2014    source источник


Ответы (3)


Исходя из вашего использования Microsoft Visual C++, я предполагаю, что вы работаете на платформе Windows. Теперь из http://en.wikipedia.org/wiki/X_Window_System, на который ссылается http://en.wikipedia.org/wiki/Xlib:

Microsoft Windows не поставляется с поддержкой X, но существует множество сторонних реализаций, таких как бесплатное программное обеспечение с открытым исходным кодом, такое как Cygwin/X, и проприетарные продукты, такие как Exceed, MKS X/Server, Reflection X, X-Win32 и Xming. .

Вот почему компилятор не может найти заголовок "X11/XLib.h". Вам нужно будет либо установить одну из этих реализаций, либо иным образом использовать уровень абстракции, такой как один из упомянутых в http://en.wikipedia.org/wiki/Xlib (GTK+, Qt, SDL, ...)

person SleuthEye    schedule 09.03.2014

Вы должны установить X-Lib и X.org, если хотите что-то увидеть. Имейте в виду, что X11 изначально более распространен в Linux. Однако я не могу больше советовать использовать X-Lib. Часто настоятельно рекомендуется использовать SDK более высокого уровня, такие как Qt, GTK или WxWidgets. Это имеет много преимуществ:

  • Требуется меньше кода
  • Включено больше функций
  • Часто не зависит от ОС
  • Встраивание в темы/стили рабочего стола
person dgrat    schedule 09.03.2014

Windows не использует оконную систему X11, поэтому библиотека Xlib недоступна.

Что вы пытаетесь сделать? Почему вы считаете, что вам нужен Xlib в Windows?

person jalf    schedule 09.03.2014
comment
Я читаю эту книгу: Компьютерная графика: принципы и практика. Он использует библиотеку SRGP, которая включает библиотеку X11. - person Alice; 09.03.2014
comment
Интересно, эта книга 1996 года, но похоже, что она застряла в 80-х! Ищите лучшую книгу. - person dgrat; 10.03.2014
comment
Книгу по-прежнему стоит прочитать из-за теории, из-за ее объяснений компьютерной графики и рендеринга. Но с точки зрения кода это бесполезно. Не пытайтесь использовать скомпилированный фактический код из книги. Используйте его, чтобы понять основы компьютерной графики, рендеринга и растеризации, а затем напишите свой код, используя современный API. - person jalf; 10.03.2014
comment
Кстати. X11 не зависит от ОС, и библиотеку можно использовать в Windows. - person dgrat; 11.03.2014
comment
@dgrat конечно, может быть, но обычно он не используется в Windows, и для этого требуется гораздо больше сантехники, чем просто ссылка на библиотеку. - person jalf; 12.03.2014