Форум программистов, компьютерный форум, киберфорум
SFML
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.77/22: Рейтинг темы: голосов - 22, средняя оценка - 4.77
0 / 0 / 0
Регистрация: 07.11.2013
Сообщений: 8
1

Ошибка при подключении SFML к проекту в QT

25.09.2014, 17:39. Показов 4238. Ответов 14
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
LNK1104: не удается открыть файл sfml-audio-d.lib
Помогите исправить, делал все инструкции, на оф. сайте смотрел, как исправить не нашел...
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
25.09.2014, 17:39
Ответы с готовыми решениями:

Ошибка при подключении sfml
Всем привет,пытаюсь подключить библиотеку sfml но не выходит,выдает такие ошибки(на данный момент...

При подключении к проекту БД, происходит ошибка error: 50
Когда подключаю БД, сначала зависает ненадолго а потом выскакивает следующее сообщение:

Ошибка при подключении базы данных к проекту
Здравствуйте, можете пожалуйста помочь. У меня возникает ошибка при подключении базы данных к...

Ошибка при подключении MySql БД к проекту Visual Studio
Добрый день! Подключила БД к проекту ASP NET MVC, при попытке доступа к табл и видам выдает...

14
317 / 179 / 73
Регистрация: 18.01.2014
Сообщений: 387
25.09.2014, 18:20 2
Цитата Сообщение от Chilimovpasha Посмотреть сообщение
Помогите исправить, делал все инструкции
Какой инструкции? На офф. сайте нет инструкций для QtCreator'а. Напишите, как и что вы делали, иначе на ваш вопрос только телепаты смогут ответить.

Цитата Сообщение от Chilimovpasha Посмотреть сообщение
LNK1104: не удается открыть файл sfml-audio-d.lib
Правильные пути к дополнительным библиотекам надо настроить.
0
0 / 0 / 0
Регистрация: 07.11.2013
Сообщений: 8
25.09.2014, 18:22  [ТС] 3
Так выглядит .pro
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
TEMPLATE = app
CONFIG -= app_bundle
CONFIG -= qt
 
SOURCES += main.cpp
 
include(deployment.pri)
qtcAddDeployment()
 
LIBS += -LD:\LibraryForQT\SFML-2.1\lib
 
CONFIG(release, debug|release): LIBS += -lsfml-audio -lsfml-graphics -lsfml-main -lsfml-network -lsfml-window -lsfml-system
CONFIG(debug, debug|release): LIBS += -lsfml-audio-d -lsfml-graphics-d -lsfml-main-d -lsfml-network-d -lsfml-window-d -lsfml-system-d
 
INCLUDEPATH += D:\LibraryForQT\SFML-2.1\include
DEPENDPATH += D:\LibraryForQT\SFML-2.1\include
Так же я соответственно добавил папку bin со всеми файлами .dll в папку с проектом, ну и соответственно подключил библиотеку #include <SFML\Graphics.hpp>
0
317 / 179 / 73
Регистрация: 18.01.2014
Сообщений: 387
25.09.2014, 18:47 4
Цитата Сообщение от Chilimovpasha Посмотреть сообщение
Так выглядит .pro
Это ни о чем не говорит.
Тупо просто скопировал ваш .pro и подправил пути:
Код
TEMPLATE = app
CONFIG += console
CONFIG -= app_bundle
CONFIG -= qt

SOURCES += main.cpp

LIBS += -Lc:\home\SFML-2.1\lib

CONFIG(release, debug|release): LIBS += -lsfml-audio -lsfml-graphics -lsfml-main -lsfml-network -lsfml-window -lsfml-system
CONFIG(debug, debug|release): LIBS += -lsfml-audio-d -lsfml-graphics-d -lsfml-main-d -lsfml-network-d -lsfml-window-d -lsfml-system-d

INCLUDEPATH += c:\home\SFML-2.1\include
Все компилируется.

Цитата Сообщение от Chilimovpasha Посмотреть сообщение
Так же я соответственно добавил папку bin со всеми файлами .dll в папку с проектом
Зачем?
А где сами библиотеки (.lib файлы) у вас лежат?
0
0 / 0 / 0
Регистрация: 07.11.2013
Сообщений: 8
25.09.2014, 19:48  [ТС] 5
Эмм, хороший вопрос. Я по всей скаченной папке полазил и не нашел .lib файлы...
А на счет .dll файлов, об этом я читал на разных сайтах, советуют для корректной работы.
0
317 / 179 / 73
Регистрация: 18.01.2014
Сообщений: 387
25.09.2014, 19:57 6
Цитата Сообщение от Chilimovpasha Посмотреть сообщение
Эмм, хороший вопрос. Я по всей скаченной папке полазил и не нашел .lib файлы...
Как понял, вы пользуетесь IDE QtCreator, видимо вы поставили с какой-то из сборок Qt, которые для винды могут быть и для Visual C++ (который тоже надо предварительно поставить) и для MinGW (компилятор идет вместе набором Qt).
В общем, узнаем, какой компилятор используется, идем на http://sfml-dev.org/download/sfml/2.1/ и качаем сборку для нужного компилятора, распаковываем в D:\LibraryForQT\ , в папке D:\LibraryForQT\SFML-2.1\lib должны быть *.lib файлы (для Visual C++) или *.a файлы (для MinGW).
0
0 / 0 / 0
Регистрация: 07.11.2013
Сообщений: 8
25.09.2014, 20:12  [ТС] 7
Я в соответствии с инструкциями по установки для qt качал для MinGW, т.е. у меня не .lib а тогда .a
Это не может быть связано с тем, что я пользуюсь бесплатным оф. qt?
0
317 / 179 / 73
Регистрация: 18.01.2014
Сообщений: 387
25.09.2014, 20:21 8
Цитата Сообщение от Chilimovpasha Посмотреть сообщение
в соответствии с инструкциями по установки для qt качал для MinGW
Цитата Сообщение от Chilimovpasha Посмотреть сообщение
LNK1104: не удается открыть файл sfml-audio-d.lib
А такое сообщение выдает микросовтовский компилятор. Т.е. получается, что QtCreator для компиляции программ использует компилятор Visual C++.
Разберитесь сначала, что и как у вас там поставлено и настроено.
0
0 / 0 / 0
Регистрация: 07.11.2013
Сообщений: 8
25.09.2014, 20:28  [ТС] 9
Спасибо за советы, я скачивал через онлайн инсталлятор с оф. сайта qt. И понял, что у меня использует VC2013. В общем скачиваю с MinGW. Потому что библиотеки только до 2011 есть. SFML для 2013 нет
0
317 / 179 / 73
Регистрация: 18.01.2014
Сообщений: 387
25.09.2014, 20:30 10
Цитата Сообщение от Chilimovpasha Посмотреть сообщение
В общем скачиваю с MinGW
Зачем? http://sfml-dev.org/download/s... 32bits.zip прекрасно работает с Visual C++ 12 (Visual Studio 2013).
0
0 / 0 / 0
Регистрация: 07.11.2013
Сообщений: 8
25.09.2014, 20:43  [ТС] 11
sfml-graphics-d.lib(sfml-graphics-d-2.dll):-1: ошибка: LNK1112: тип компьютера модуля "X86" противоречит типу целевого компьютера "x64"
Скачал для 64 - запускается консоль и все.
0
317 / 179 / 73
Регистрация: 18.01.2014
Сообщений: 387
25.09.2014, 20:50 12
Цитата Сообщение от Chilimovpasha Посмотреть сообщение
sfml-graphics-d.lib(sfml-graphics-d-2.dll):-1: ошибка: LNK1112: тип компьютера модуля "X86" противоречит типу целевого компьютера "x64"
Вы помните, что в первом ответе написано было про телепатов? Ну откуда мог знать, что вы для x64 программу будете делать?

Цитата Сообщение от Chilimovpasha Посмотреть сообщение
Скачал для 64 - запускается консоль и все.
А может быть программа только консоль открывает и все? Исходного кода вы не показали.

Все *.dll рядом с исполняемым файлом надо положить или добавить D:\LibraryForQT\SFML-2.1\bin в переменную окружения PATH. Второй способ предпочтительней, т.к. если вы будете делать несколько проектов с использованием этих библиотек, то без прописывания пути к библиотекам в PATH, придется каждый раз так копировать.
0
0 / 0 / 0
Регистрация: 07.11.2013
Сообщений: 8
25.09.2014, 20:58  [ТС] 13
Цитата Сообщение от BlackIce Посмотреть сообщение
А может быть программа только консоль открывает и все? Исходного кода вы не показали.
Нет, должен быть зеленый круг в окне 200 на 200.
Цитата Сообщение от BlackIce Посмотреть сообщение
Все *.dll рядом с исполняемым файлом надо положить или добавить D:\LibraryForQT\SFML-2.1\bin в переменную окружения PATH. Второй способ предпочтительней, т.к. если вы будете делать несколько проектов с использованием этих библиотек, то без прописывания пути к библиотекам в PATH, придется каждый раз так копировать.
Как прописать этот путь?
0
317 / 179 / 73
Регистрация: 18.01.2014
Сообщений: 387
25.09.2014, 21:03 14
Win7: Пуск -> Компьютер -> ПКМ Свойства -> Дополнительные параметры системы -> Вкладка "Дополнительно" -> Переменные среды -> Переменные среды пользователя -> Найти Path (если нет, то создать) -> Отредактировать, т.е. добавить в "Значение переменной" нужный путь, пути разделяются ';' (точкой с запятой)
После этого желательно перезагрузить комп или перелогинится.

А если просто скопировать *.dll, работает?
0
0 / 0 / 0
Регистрация: 07.11.2013
Сообщений: 8
25.09.2014, 21:18  [ТС] 15
Цитата Сообщение от BlackIce Посмотреть сообщение
А если просто скопировать *.dll, работает?
Консоль пустая выводится

Добавлено через 4 минуты
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <SFML\Graphics.hpp>
 
using namespace sf;
 
int main()
{
    RenderWindow window(VideoMode(200, 200), "Test");
 
    CircleShape MyCircle(100.f);
    MyCircle.setFillColor(Color::Green);
 
    while (window.isOpen())
    {
        Event event;
        while (window.pollEvent(event))
        {
            if (event.type == Event::Closed)
                window.close();
        }
        window.clear();
        window.draw(MyCircle);
        window.display();
    }
    return 0;
}
Вот код программы, все равно выводится только консоль даже с MinGW
0
25.09.2014, 21:18
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.09.2014, 21:18
Помогаю со студенческими работами здесь

Проблема при подключении библиотеки SFML
Добрый день! Возникли неполадки при подключении библиотеки sfml на Visual Studio 2017. sfml скачан...

Ошибки при подключении библиотеки SFML
Знаю тема уже заезжана, но никак не могу разобратся в чём проблема. 1) IDE visual studio 2015...

При подключении библиотеки к проекту не видит namespace
Доброго времени суток. Интересная возникла проблема... Есть solution. В нем есть проект...

При подключении к проекту классу QTextStream Qt не находит его в директории
Всем доброго времени суток, дело в том, что при работе с Qt понадобилось использовать класс...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru