Выпустить файл компиляции с X11 - PullRequest
2 голосов
/ 13 марта 2019

Я пытался скомпилировать этот файл сервера X11:

https://github.com/dnschneid/crouton/blob/master/src/fbserver.c

Я выполнил 'gcc fbserver.o -lXtst -lX11', что приводит к следующим ошибкам:

/ usr / bin / ld: fbserver.o: неопределенная ссылка на символ 'XShmGetImage' //usr/lib/x86_64-linux-gnu/libXext.so.6: ошибка при добавлении символов: DSO отсутствуетиз командной строки collect2: ошибка: ld вернул 1 состояние выхода

Однако, если я включу - lXext - 'gcc fbserver.o -lXext -lXtst -lX11', он не скомпилируется:

fbserver.o: In function `register_damage':
fbserver.c:(.text+0x260e): undefined reference to `XDamageCreate'
fbserver.o: In function `init_display':
fbserver.c:(.text+0x26d9): undefined reference to `XDamageQueryExtension'
fbserver.c:(.text+0x2713): undefined reference to `XFixesQueryExtension'
fbserver.c:(.text+0x2824): undefined reference to `XFixesSelectCursorInput'
fbserver.o: In function `write_cursor':
fbserver.c:(.text+0x3b68): undefined reference to `XFixesGetCursorImage'
collect2: error: ld returned 1 exit status

Спасибо за ваше время

1 Ответ

2 голосов
/ 13 марта 2019

У меня работает эта команда:

gcc fbserver.c -lX11 -lXext -lXdamage -lXfixes -lXtst

XDamageCreate требует -lXdamage, а XFixesQueryExtension требует -lXfixes.

...