中堂薗と申します。 FreeBSD7.2(i386)(VMWare上)で、自作QTプログラムのプロファイルを取ろうとしてい るのですが、 -pgつきでコンパイルすると、コアダンプ(Segmentation fault)してしまいます。 どなたかQTのプロファイルできてる方いらっしゃらないでしょうか。
QString変数を宣言するだけのプログラムではコアダンプしませんでした。 コンパイラをgcc34,gcc45と変えて試しても同じ状況でした。 QTもver4.4.3、4.5.1と試しましたが同じ状況でした。 テスト用コード(QtTest.cpp)--------------------------------------- #include <QtGui> int main(int argc, char *argv[]) { QApplication app(argc, argv); QMainWindow mainWin; mainWin.show(); return app.exec(); } ------------------------------------------------------ コンパイル方法 1.QtTestディレクトリを作成 2.QtTest.cppをQtTestディレクトリにコピー 3.QtTestディレクトリ内で、「qmake-qt4 -project」を実行 →QtTest.proが出来 る 4.QtTest.proの最後に下記を追記(行頭タブは削除してください) CONFIG += debug QMAKE_CFLAGS_DEBUG += -pg QMAKE_LFLAGS_DEBUG += -pg 5.「qmake-qt4 QtTest.pro」を実行 →Makefileが出来る 6.「gmake」を実行 7.「./QtTest」を実行→「Segmentation fault (core dumped)」になる gdbの結果 --------------------------------------------------------------------- > gdb ./QtTest GNU gdb 6.1.1 [FreeBSD] Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i386-marcel-freebsd"... (gdb) b main Breakpoint 1 at 0x80500a0: file QtTest.cpp, line 4. (gdb) r Starting program: /usr/home/machiyuta/QtTest/QtTest [New LWP 100175] [New Thread 0x49201040 (LWP 100175)] [Switching to Thread 0x49201040 (LWP 100175)] Breakpoint 1, main (argc=100175, argv=0x0) at QtTest.cpp:4 4 int main(int argc, char *argv[]) (gdb) s main (argc=1, argv=0xbfbfe504) at QtTest.cpp:6 6 QApplication app(argc, argv); (gdb) Program received signal SIGSEGV, Segmentation fault. 0x48be8ec5 in QFSFileEnginePrivate::doStat () from /usr/local/lib/qt4/libQtCore.so.4 (gdb) ---------------------------------------------------------------------------- ------ どうぞよろしくお願いいたします。