Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Amir_05_05
0 / 0 / 0
Регистрация: 06.06.2015
Сообщений: 240
#1

Ошибка: "Точка входа в процедуру gxx_personality_sj0 не найдена" при запуске приложения - C++

10.03.2016, 14:33. Просмотров 613. Ответов 13
Метки нет (Все метки)

имеется код:
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
#include <SFML/Graphics.hpp>
 
int main()
{
    sf::RenderWindow window(sf::VideoMode(200, 200), "test");
    sf::CircleShape shape(100.f);
    shape.setFillColor(sf::Color::Green);
 
    while (window.isOpen())
    {
        sf::Event event;
        while (window.pollEvent(event))
        {
            if (event.type == sf::Event::Closed)
                window.close();
        }
 
        window.clear();
        window.draw(shape);
        window.display();
    }
 
    return 0;
}
при компилировании никаких ошибок не возникает,но при запуске,появляется ошибка:Ошибка: "Точка входа в процедуру gxx_personality_sj0 не найдена" при запуске приложения
компилирую так:
g++ "<путь до исходника>\c++#3.cpp" -o"name" -IC:\MinGW\libs\SFML-2.3.2\include\ -LC:\MinGW\libs\SFML-2.3.2\lib\ -lsfml-graphics -lsfml-window -lsfml-system
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.03.2016, 14:33
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ошибка: "Точка входа в процедуру gxx_personality_sj0 не найдена" при запуске приложения (C++):

Точка входа в процедуру __gxx_personality_v0 не найдена - C++
Здравствуйте. Я пытаюсь сделать простейший пример библиотеки tgui (gui для sfml) Все компилируется, но при запуске приложения выскакивает...

Точка входа в процедуру не найдена в библиотеке dll - C++
пытаюсь подключить библиотеку вот такая ошибка, как бы поправить?

MinGW. Точка входа в процедуру __gxx_personality_v0 не найдена в библиотеке DLL /brut.exe - C++
Установил MinGW, создал батник, который компилирует файл. При запуске скомпилированного exe-шника выдаёт ошибку: Точка входа в процедуру...

Ошибка компиляции "LINK : fatal error LNK1561: точка входа должна быть определена" - C++
Подскажите пожалуйста где ошибка. При компиляции выдает LINK : fatal error LNK1561: точка входа должна быть определена #include&lt;iostream&gt;...

Точка входа в процедуру InterlockedCompareExchange64 не найдена в библиотеке DLL KERNEL32.DLL - C++
День добрый! При запуске моей программы (много моего кода + много разных сторонних dll) на WinXP SP2, получаем соответствующую ошибку...

Перегрузка оператора "++" и "--" , компилирует, но при запуске программы - ошибка - C++
#include &lt;iostream&gt; #include&lt;ctime&gt; #include&lt;stdio.h&gt; #include&lt;locale.h&gt; #include &lt;windows.h&gt; #include &lt;conio.h&gt; ...

13
DrOffset
7376 / 4453 / 1009
Регистрация: 30.01.2014
Сообщений: 7,304
10.03.2016, 14:38 #2
Amir_05_05, суть явления описана здесь: http://www.cyberforum.ru/cpp-beginners/thread1679283.html
Лечится аналогично.
Или можно поставить MSYS2, там все в одном флаконе и библиотеки и компилятор.
0
Amir_05_05
0 / 0 / 0
Регистрация: 06.06.2015
Сообщений: 240
10.03.2016, 14:45  [ТС] #3
почитал эту статью.Он решил проблему установкой правильной версии sfml.А у меня версия компилятора и sfml совпадают(4.8.1) но ошибка есть.
0
DrOffset
7376 / 4453 / 1009
Регистрация: 30.01.2014
Сообщений: 7,304
10.03.2016, 14:55 #4
Цитата Сообщение от Amir_05_05 Посмотреть сообщение
А у меня версия компилятора и sfml совпадают(4.8.1) но ошибка есть.
Совпадение версий - это еще не все. Модель исключений тоже должна быть одинаковая - именно к ней относится эта функция, которую он у тебя не находит. Может быть одна из seh/sjlj/dwarf. Вполне возможно, что SFML у тебя требует sjlj, а компилятор собран с dwarf или seh.
Надежнее - собрать самостоятельно своим компилятором, как советовали в той теме, или заменить весь комплект на комплект из MSYS2.
0
Amir_05_05
0 / 0 / 0
Регистрация: 06.06.2015
Сообщений: 240
10.03.2016, 15:48  [ТС] #5
можете объяснить или дать какую-нибудь статью по Модели исключений,seh,sjlj,dwarf
Цитата Сообщение от DrOffset Посмотреть сообщение
Надежнее - собрать самостоятельно своим компилятором
а как?
0
DrOffset
7376 / 4453 / 1009
Регистрация: 30.01.2014
Сообщений: 7,304
10.03.2016, 16:57 #6
Цитата Сообщение от Amir_05_05 Посмотреть сообщение
дать какую-нибудь статью
https://gcc.gnu.org/wiki/WindowsGCCImprovements

Цитата Сообщение от Amir_05_05 Посмотреть сообщение
а как?
http://www.sfml-dev.org/tutorials/2.0/compile-with-cmake.php
0
nd2
2384 / 1973 / 691
Регистрация: 29.01.2016
Сообщений: 6,421
10.03.2016, 17:03 #7
Цитата Сообщение от Amir_05_05 Посмотреть сообщение
а как?
Как-то собирал, записи остались:
Кликните здесь для просмотра всего текста
Сборка SFML из исходников, с помощью cmake и mingw32-make.
Запускаем cmd, прописываем путь к папке bin компилятора (если не прописана в path), например:

set PATH=D:\Programs\MingW\mingw32-gcc-4.6.3-release-c_c++_fortran-sjlj\mingw\bin (путь без кавычек!!!)

Переходим в папку SFML(например, I:\SFML-2.2-sources\SFML-2.2).

Открываем CMakeLists.txt и, для сборки debug, изменяем:

sfml_set_option(CMAKE_BUILD_TYPE Release STRING "Choose the type of build (Debug or Release)")
на
sfml_set_option(CMAKE_BUILD_TYPE Debug STRING "Choose the type of build (Debug or Release)")

Для сборки static изменяем:

sfml_set_option(BUILD_SHARED_LIBS TRUE BOOL "TRUE to build SFML as shared libraries, FALSE to build it as static libraries")
на
sfml_set_option(BUILD_SHARED_LIBS FALSE BOOL "TRUE to build SFML as shared libraries, FALSE to build it as static libraries")

Для выбора - собирать примеры или нет, меняем здесь:

sfml_set_option(SFML_BUILD_EXAMPLES FALSE BOOL "TRUE to build the SFML examples, FALSE to ignore them")

Собирать ли документацию API:

sfml_set_option(SFML_BUILD_DOC FALSE BOOL "TRUE to generate the API documentation, FALSE to ignore it")

Тут, что-то связанное с OpenGL реализацией:

# add an option for choosing the OpenGL implementation
sfml_set_option(SFML_OPENGL_ES ${OPENGL_ES} BOOL "TRUE to use an OpenGL ES implementation, FALSE to use a desktop OpenGL implementation")

Запускаем cmake с help:

"%CMake%/cmake" -help


Смотрим и выбираем параметры сборки makefile.
makefile для mingw:

Чтобы не засорять исходники временными файлами, создаём дополнительную папку (temp), переходим туда, и запускаем cmake, указав путь к папке с исходниками:

"%CMake%/cmake" -G "MinGW Makefiles" D:\Programs\SFML-2.2-sources\SFML-2.2

Если папка temp создана в папке и исходниками, то можно так:

"%CMake%/cmake" -G "MinGW Makefiles" ..\

После сборки makefile:

mingw32-make

Для сборки другой конфигурации (debug/release), удаляем makefile и всё добавленные файлы и папки (кроме lib), изменяем CMakeLists.txt, и повторяем действия.

Дополнительные зависимости (уже собранные библиотеки libfreetype.a, libglew.a и пр.), необходимые при использовании статических (-s) либ, лежат в папке extlibs.

Настройки Code Blocks, при использовании статически либ, здесь:

http://www.cyberforum.ru/cpp-beginne...ml#post7544495

Препроцессор:

GLEW_STATIC
SFML_STATIC
UNICODE

Линкер (для debug и release):

sndfile
openal32
jpeg
qlew
freetype
ws2_32
gdi32
opengl32
glu32
winmm

Возможно, какие-то и не нужны (например, openal32, ws2_32. Важен порядок подключений, в частности glew должна быть выше opengl32).

Линкер (для release):

sfml-graphics-s
sfml-window-s
sfml-system-s
0
Croessmah
Ушел
Эксперт CЭксперт С++
13553 / 7704 / 872
Регистрация: 27.09.2012
Сообщений: 19,006
Записей в блоге: 3
Завершенные тесты: 1
10.03.2016, 17:39 #8
Цитата Сообщение от Amir_05_05 Посмотреть сообщение
а как?
Цитата Сообщение от Amir_05_05 Посмотреть сообщение
почитал эту статью
Ага... там даже видео есть как собрать DLL
0
Amir_05_05
0 / 0 / 0
Регистрация: 06.06.2015
Сообщений: 240
10.03.2016, 19:32  [ТС] #9
Цитата Сообщение от Croessmah Посмотреть сообщение
Ага... там даже видео есть как собрать DLL
так я по ниму и собираю)

Добавлено через 27 минут
у меня один вопрос:где найти исходник sfml(папка sfml-sources на видео)
0
nd2
2384 / 1973 / 691
Регистрация: 29.01.2016
Сообщений: 6,421
10.03.2016, 19:39 #10
Цитата Сообщение от Amir_05_05 Посмотреть сообщение
у меня один вопрос:где найти исходник sfml
Там же, где и сборки.
0
DrOffset
7376 / 4453 / 1009
Регистрация: 30.01.2014
Сообщений: 7,304
10.03.2016, 19:40 #11
Цитата Сообщение от Amir_05_05 Посмотреть сообщение
где найти исходник sfml
http://www.sfml-dev.org/download/sfml/2.3.2/
Внизу страницы, source code.
0
Amir_05_05
0 / 0 / 0
Регистрация: 06.06.2015
Сообщений: 240
10.03.2016, 20:20  [ТС] #12
а,всё спс

Добавлено через 4 минуты
а что такое release и debug и в чем различие между ними?

Добавлено через 9 минут
собрал свою библиотеку,как на видео,но результат тот же
0
Croessmah
Ушел
Эксперт CЭксперт С++
13553 / 7704 / 872
Регистрация: 27.09.2012
Сообщений: 19,006
Записей в блоге: 3
Завершенные тесты: 1
10.03.2016, 20:21 #13
Amir_05_05, может у Вас два компилятора?
Собираете одним, а рантайм от другой версии подцепляется.
Проверьте пути в переменной path
0
Amir_05_05
0 / 0 / 0
Регистрация: 06.06.2015
Сообщений: 240
10.03.2016, 20:31  [ТС] #14
вот моя path:
Код
 %SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\MinGW\bin\;D:\amir\3d max\;C:\Program Files\Common Files\Autodesk Shared\;C:\Program Files\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files\Microsoft SQL Server\100\DTS\Binn\
0
10.03.2016, 20:31
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.03.2016, 20:31
Привет! Вот еще темы с ответами:

Нужно исправить ошибку "Точка входа должна быть определена" в OGL - C++
#include&lt;Windows.h&gt; #include&lt;gl\GL.h&gt; int mian() { glBegin(GL_QUADS); glColor3f(1.0, 1.0, 1.0); glVertex2i(250, 450); ...

Точка входа не найдена - C++
написал dll и создал приложение. Как проге показать эту самую точку входа?

Ошибка при запуске программы "vector iterator not incrementable" - C++
при запуске программы (без разницы какой функции) вылетает ошибка (заг. темы) как это исправить? мне кажется, что проблема в том, что я...

Ошибка при запуске "Example.exe не является внутренней или внешней командой" - C++
когда запускаю консольное приложение win32 появляется командная строка, и там пишет: &quot;&quot;C:\Users\Denis\documents\visual studio...


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru