Russian Qt Forum
Ноябрь 02, 2024, 01:31
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Установка, сборка, отладка, тестирование
>
Ошибка при сборки qt из исходников
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Ошибка при сборки qt из исходников (Прочитано 8356 раз)
invasion
Гость
Ошибка при сборки qt из исходников
«
:
Июль 26, 2012, 13:47 »
Здравствуйте!
Добрались руки собрать qt из исходников, всё было бы хорошо но почти в самом конце сборки вылетает ошибка:
c:/mingw/bin/../lib/gcc/mingw32/4.6.1/../../../../mingw32/bin/ld.exe: out
of mem
ory allocating 125660256 bytes
collect2: ld returned 1 exit status
mingw32-make[2]: *** [..\..\lib\QtGuid4.dll] Error 1
mingw32-make[2]: Leaving directory
`C:\QT\4.8.2\src\gui'
mingw32-make[1]: *** [debug-all] Error 2
mingw32-make[1]: Leaving directory
конфигурация qt: configure -debug-and-release -I C:\OpenSSL-Win32\include -L C:\OpenSSL-Win32
ос win 7 (x64)
сборку запускал с помощью mingw32-make (никаких дополнительных ключей не указывал).
нагуглив нашёл некоторые советы, но каждый говорит своё, а на каждый эксперимент отдавать по 2 часа как-то не очень...
может кто сталкивался?
Записан
Serr500
Гость
Re: Ошибка при сборки qt из исходников
«
Ответ #1 :
Июль 26, 2012, 14:11 »
Цитировать
out of memory allocating 125660256 bytes
Памяти линкеру не хватает. Сколько памяти на машине? 256?
Записан
kambala
Джедай : наставник для всех
Offline
Сообщений: 4746
Re: Ошибка при сборки qt из исходников
«
Ответ #2 :
Июль 26, 2012, 14:20 »
сомневаюсь, что на машине с win 7 (x64) всего 256 мб памяти
скорее свободной столько было.
Записан
Изучением C++ вымощена дорога в Qt.
UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
invasion
Гость
Re: Ошибка при сборки qt из исходников
«
Ответ #3 :
Июль 26, 2012, 14:22 »
Цитата: Serr500 от Июль 26, 2012, 14:11
Цитировать
out of memory allocating 125660256 bytes
Памяти линкеру не хватает. Сколько памяти на машине? 256?
на машине 4гб, свободной было около 1.5 - 2 гб
Записан
invasion
Гость
Re: Ошибка при сборки qt из исходников
«
Ответ #4 :
Июль 26, 2012, 14:30 »
так проблема только в памяти? или ещё что нибудь? память то я почищу...
Записан
Serr500
Гость
Re: Ошибка при сборки qt из исходников
«
Ответ #5 :
Июль 26, 2012, 15:00 »
Судя по выводу линкера, ему не хватило памяти. Впрочем, может быть, ему не хватило не оперативной памяти, а дисковой.
Записан
sergey_ulyanov
Гость
Re: Ошибка при сборки qt из исходников
«
Ответ #6 :
Июль 26, 2012, 20:06 »
Какая версия qt, mingw-gcc?
Вообще вопрос довольно известнен. В интернете полно обсуждений.
Если gcc 4.6+, решением данной проблемы будет выбор mkspec win32-g++-4.6 (там добавлен флаг -fno-keep-inline-dllexport).
Записан
invasion
Гость
Re: Ошибка при сборки qt из исходников
«
Ответ #7 :
Июль 26, 2012, 22:45 »
попробовал ещё раз... ситуация аналогичная, память высвободил по максимуму, выключил всё что только можно, оставил только диспетчер задач и тупо мониторил память. в один прекрасный момент процесс ld.exe начал очень сильно есть память а именно 1700мб но при всём это на момент возникновения ошибки было свободно 800 мб... посоветуйте, что можно сделать? (в офф документации нигде не написано что ему нужно более 4гб озу
)
ещё раз код ошибки:
-DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2
g++ -mthreads -shared -Wl,--out-implib,c:\QT\4.8.2\lib\libQtGuid4.a -o ..\..\lib
\QtGuid4.dll object_script.QtGuid.Debug -L"c:\QT\4.8.2\lib" -L"c:\QT\4.8.2\lib"
-lgdi32 -lcomdlg32 -loleaut32 -limm32 -lwinmm -lwinspool -lws2_32 -lole32 -luui
d -luser32 -ladvapi32 tmp\obj\debug_shared\QtGuid_resource_res.o -LC:\OpenSSL-Wi
n32 -lmsimg32 -lshell32 -lQtCored4
c:/mingw/bin/../lib/gcc/mingw32/4.6.2/../../../../mingw32/bin/ld.exe: out of mem
ory allocating 132594520 bytes
collect2: выполнение ld завершилось с кодом возврата 1
mingw32-make[2]: *** [..\..\lib\QtGuid4.dll] Error 1
mingw32-make[2]: Leaving directory `C:/QT/4.8.2/src/gui'
mingw32-make[1]: *** [debug-all] Error 2
mingw32-make[1]: Leaving directory `C:/QT/4.8.2/src/gui'
mingw32-make: *** [sub-gui-make_default-ordered] Error 2
«
Последнее редактирование: Июль 26, 2012, 22:50 от invasion
»
Записан
invasion
Гость
Re: Ошибка при сборки qt из исходников
«
Ответ #8 :
Июль 26, 2012, 23:28 »
Цитата: sergey_ от Июль 26, 2012, 20:06
Какая версия qt, mingw-gcc?
Вообще вопрос довольно известнен. В интернете полно обсуждений.
Если gcc 4.6+, решением данной проблемы будет выбор mkspec win32-g++-4.6 (там добавлен флаг -fno-keep-inline-dllexport).
Если честно я не знаю какая версия Mingw, датируется как 20012 04 26, в логах написано что beta, версия qt 4.8.2.
Можно поподробнее про выбор mkspec win32-g++-4.6 ? я знаю в mkspec\win32-g++ есть файл конфигураций...
Записан
sergey_ulyanov
Гость
Re: Ошибка при сборки qt из исходников
«
Ответ #9 :
Июль 26, 2012, 23:43 »
gcc у вас 4.6.2-1
При сборке (QtGui наверное) линковщик выкидывает приведенное вами сообщение, даже при наличии достаточного количества оперативной памяти. Данная проблема решается установкой соответствующего QMAKESPEC (
win32-g++-4.6
) при конфигурации: ./configure -platform win32-g++-4.6
Записан
invasion
Гость
Re: Ошибка при сборки qt из исходников
«
Ответ #10 :
Июль 27, 2012, 13:57 »
Цитата: sergey_ от Июль 26, 2012, 23:43
gcc у вас 4.6.2-1
При сборке (QtGui наверное) линковщик выкидывает приведенное вами сообщение, даже при наличии достаточного количества оперативной памяти. Данная проблема решается установкой соответствующего QMAKESPEC (
win32-g++-4.6
) при конфигурации: ./configure -platform win32-g++-4.6
сделал вот так: configure -platform win32-g++-4.6 -debug-and-release -I C:\OpenSSL-Win32\include -L C:\OpenSSL-Win32
и все равно такая же ошибка...
Записан
Serr500
Гость
Re: Ошибка при сборки qt из исходников
«
Ответ #11 :
Июль 27, 2012, 15:21 »
Цитата: invasion от Июль 26, 2012, 23:28
Mingw, датируется как 20012 04 26, в логах написано что beta
Возьмите версию посвежее. Или наоборот, старую но стабильную с сайта нокии -
ftp://ftp.qt.nokia.com/misc/MinGW-gcc440_1.zip
Записан
invasion
Гость
Re: Ошибка при сборки qt из исходников
«
Ответ #12 :
Август 31, 2012, 23:14 »
Лучше отписатья поздно чем никогда
. пост выше помог)
Записан
niXman
Гость
Re: Ошибка при сборки qt из исходников
«
Ответ #13 :
Сентябрь 02, 2012, 21:03 »
Цитировать
ld.exe: out of memory allocating 132594520 bytes
стандартный баг.
говорит о том, что binutils`ы входящие в состав используемого MinGW собраны без опции '--large-address-aware'
Записан
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...