LINUX.ORG.RU

KDevelop. Почти всё сегфолтит.


0

0

Проблема такого рода, очень многие, в том числе и мои, функции сегфолтят. Передача массива (ссылки на него), возврат обьектов как моих классов так и обьектов QT (qstring, qpixmap и.т.д.) . Т.е. это происходит только в проектах КДевелопа, тот же код набранный в текст. редакторе и собранный просто через g++ работает нормально. Простым. примером такого является пример из qt - ТUX. Из него я выявил как делать фон прозрачным

QString fn="tux.png";

if ( argc >= 2 )
fn = argv[1];

if ( ! QFile::exists( fn ) )
exit( 1 );

QImage img( fn );
QPixmap p;
p.convertFromImage( img );
if ( !p.mask() )
if ( img.hasAlphaBuffer() ) {
QBitmap bm;
bm = img.createAlphaMask();
p.setMask( bm );
} else {
QBitmap bm;
bm = img.createHeuristicMask();
p.setMask( bm );
}
MoveMe w(0,0,Qt::WStyle_Customize|Qt::WStyle_NoBorder);
w.setBackgroundPixmap( p );
w.setFixedSize( p.size() );
if ( p.mask() )
w.setMask( *p.mask() );
w.show();

Если его собирать так: qmake tux.pro && make && ./tux
то всё нормально.

Если же его перекинуть в проект КДевелопа то вылезает жопа с сегфолтом.

Не могли бы вы подсказать что такого делает Кдевелоп с кодом или с мэйкфайлом, что вызывает сегфолт.

★★★★★
Ответ на: комментарий от Sveta_F

Короче разобрался. А отладчик ксатати не работает, даже после краха в окне отладки пишется что кадр стека повреждён и отладочная информация бесполезна.

cyclon ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.