Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблема с компоновкой. Компоновщи не видит библиотеку X11 
:(
    Опции темы
grisWall
Дата 30.5.2015, 18:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 28.4.2013

Репутация: нет
Всего: нет



При вводе в консоль 
Код

gcc -o foo foo.c -lX11


выдает такую ошибку: 
Код

ld: Library not found for -lX11


подскажите как этого избежать. При этом объектный файл foo.o, создается на ура. А вот как создать исполняемый файл? Программка простая абсолютно создание пустого окна в библиотеке Xlib. 

Это сообщение отредактировал(а) grisWall - 1.6.2015, 22:07
PM MAIL   Вверх
xvr
Дата 1.6.2015, 15:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 60
Всего: 223



Запятая после -lX11 действительно есть? Если да, то совершенно напрасно  smile 

PM MAIL   Вверх
grisWall
Дата 1.6.2015, 22:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 28.4.2013

Репутация: нет
Всего: нет



Цитата

Запятая после -lX11 действительно есть?


Конечно же нет запятой он выдал бы другую ошибку


Это сообщение отредактировал(а) grisWall - 1.6.2015, 22:04
PM MAIL   Вверх
xvr
Дата 2.6.2015, 12:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 60
Всего: 223



Посмотрите, где у вас лежат библиотеки X11 (у меня они например лежат в /usr/lib64/, там должны быть либо libX11.a либо libX11.so либо обе) и добавьте путь к ним в компиляцию (через опцию -L)

А в общем это довольно странно - X11 библиотеки должны быть вместе с системными библиотеками, а gcc путь к ним берет по умолчанию.  smile 


PM MAIL   Вверх
tzirechnoy
Дата 3.6.2015, 18:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1173
Регистрация: 30.1.2009

Репутация: 2
Всего: 16



Собственно, довольно странно это потому, что симлинк /usr/lib/libX11.so -- ставится вместе с X11/Xlib.h, и находится в том жэ самом пакете XXXXX-devel.

Потому как ты умудрился сделать так, что этот исходник собирается в .o, но не находит libX11 -- это непонятно. Рассказывай, что за дистрибутив, что делал, что за исходник.
PM MAIL   Вверх
grisWall
Дата 22.6.2015, 00:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 28.4.2013

Репутация: нет
Всего: нет



Цитата(tzirechnoy @ 3.6.2015,  18:52)
Рассказывай, что за дистрибутив, что делал, что за исходник.

Код

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <errno.h>
#include <X11/Xlib.h>

extern int errno;

int main( void ) {

    Display *d;
    Window w;
    XEvent e;
    char *msg= "Hallo, World!";
    int s;

    if ( (d = XOpenDisplay( getenv( "DISPLAY" ) ) ) == NULL ){
    printf ( "Can't connect X server: %s\n", strerror( errno ) );
    exit( 1 );
    }

    s = DefaultScreen( d );
    w = XCreateSimpleWindow( d, RootWindow( d, s ),
                 10, 10, 200, 200, 1,
                 BlackPixel( d, s ), WhitePixel( d, s ) );
    XSelectInput( d, w, ExposureMask | KeyPressMask );
    XMapWindow( d, w);
    while( 1 ){
    XNextEvent( d, &e );
    if( e.type == Expose){
        XFillRectangle( d, w, DefaultGC( d, s ), 20, 20, 10, 10 );
        XDrawString( d, w, DefaultGC( d, s ), 50, 50, msg, strlen( msg ) );
    }
    if( e.type == KeyPress )
        break;
    }
    XCloseDisplay( d );
    return 0;   
}


Решил поработать с графикой на системном уровне, никогда не работал раньшк...походу с этой сборкой у меня не получится...
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0486 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.