..
[2ch|▼Menu]
2:Z Studio MotionBuilder、RealFlow、Nuke、LuxRender、Mathematica、Kindle、VirtualBox、 RuviEdit、さくさくエディタ など ■前スレ 【Win/Mac/Linux/Android/iOS】 Qt 総合スレ 17 http://echo.2ch.net/test/read.cgi/tech/1438593408/



3:デフォルトの名無しさん
17/03/08 13:49:56.47 jMX+hATM.net
■リンク
・Qt Project
 URLリンク(qt-project.org)
・Qtユーザー会
 URLリンク(planet.qt-users.jp)
・Qt Users Forum Japan
 URLリンク(qtusersforum.s2.zmx.jp)
・Qt Creator を日本語化するプロジェクト(非公式)
 URLリンク(qt-creator-jp.sourceforge.jp)
・PyQt4(GPL。定番)
 URLリンク(www.riverbankcomputing.co.uk)
・PySide(LGPL。)
 URLリンク(www.pyside.org)

■ライセンス関連まとめ
各ライセンスでの自作アプリのソース公開/頒布
Qtのライセンス   アプリのライセンス     Qtの頒布/(変更部分のソース公開)
GPL           GPL(ソース公開必須)      必須
LGPL         任意(ソース公開不要)      必須
商用          任意(ソース公開不要)      不要
*: LGPLは動的リンク時
実際には他にも条件(リバースエンジニアリング関係とか)あるので、
きちんとライセンスの条文を読むこと。

4:デフォルトの名無しさん
17/03/08 13:52:03.95 +aRKIsxC.net
|....,,__
|_::;; ~"'ヽ
| //^''ヽ,,)
|  i⌒"
| ∀`) < 誰もいない きのこるならいまのうち
|⊂
| ノ
      _,,,......,,__
  /_~ ,,...:::_::;; ~"'ヽ
 (,, '"ヾヽ  i|i //^''ヽ,,)
   ^ :'⌒i    i⌒"
      |( ´∀`) < きのこ のこーのこ げんきのこ ♪
      |(ノ   |つ
      |     |
     ⊂ _ ノ
       ""U
      _,,,......,,__
  /_~ ,,...:::_::;; ~"'ヽ
 (,, '"ヾヽ  i|i //^''ヽ,,)
   ^ :'⌒i    i⌒"
     (´∀` )| < エリンギ まいたけ ブナシメジ ♪
    ⊂|  (ノ |
      |     |
      ヽ _ ⊃
      .U""
|
| ミ
| ミ  サッ!
| ミ
|

5:デフォルトの名無しさん
17/03/08 14:06:29.43 koTwgl9J.net
>1 いちもつ

6:デフォルトの名無しさん
17/03/08 16:20:39.27 TtwIMs9c.net
Linux 上で Qt のアプリをターミナルから起動すると
Qt: Session management error: None of the authentication protocols specified are supported
というメッセージが出るんだけど、これって何でしょう?
動作自体は問題ないようです
新しいプロジェクトで作成して手を入れていない Qt ウィジットアプリケーションでも表示されます

7:デフォルトの名無しさん
17/03/08 16:22:51.74 TtwIMs9c.net
いろいろ確かめていたところ root で起動すると出るようです
root 権限必要なプログラムなのですが、このメッセージがでちゃうのは回避できないのかな

8:デフォルトの名無しさん
17/03/10 17:44:14.87 zeNpj7c/.net
商用の機械の制御ソフトをLGPLで開発し、
機械を売った場合、ソースコードの開示を
求められたら応じなければなりませんか?
ソフト単体で売ることはありません。

9:デフォルトの名無しさん
17/03/10 18:02:55.02 wwCDmvkp.net
そのつもりでどうぞ

10:デフォルトの名無しさん
17/03/10 19:40:39.40 5DSaPQcd.net


11:デフォルトの名無しさん
17/03/10 20:47:21.60 p+EiIwky.net
>>7
LGPL v2ならそのソースコードの開示が必要。
LGPL v3ならさらに機械にインストールする情報の開示が必要。
開示を求められたら応じなければならない。
ソフト単位で売るかどうかは無関係。
LGPLなものを使っているのを明記しないのもだめ。

12:デフォルトの名無しさん
17/03/10 21:19:55.69 GznH2wqv.net
それGPLじゃね

13:デフォルトの名無しさん
17/03/10 21:32:35.64 me9gH5Or.net
ウィキペディアでは、「LGPLなプログラムを利用する著作物が二次的著作物か
否かは法的な問題である。ライブラリに動的リンクする単体の実行
ファイルは、法的に二次的著作物ではないと解釈される可能性がある」
とありこの場合は、exeのソースコード開示はしなくてはよいのでしょうか?

14:デフォルトの名無しさん
17/03/10 21:48:48.96 KILlqnei.net
でも実は特許でも侵害していない限り、開示しなくても訴えられる事はないんだよな。

15:デフォルトの名無しさん
17/03/11 00:02:14.43 xh0+7vv8.net
>>11 >>10 のそのソースコードはLGPLなものを指す。アプリは開示の必要はない。
>>13 実際バレれば評判が落ちるくらい

16:デフォルトの名無しさん
17/03/11 01:08:38.71 L+vpLJJZ.net
>>7を自然な日本語として解釈する場合、制御ソフトをLGPLにする
という前提だから、求められれば制御ソフトのソースを開示する必要がある

17:デフォルトの名無しさん
17/03/11 06:35:34.82 OoMQO9eG.net
PC用のソフトじゃないし、別に特殊なロジックを書いてるわけでもないから別に構わんけどな
公開してマズいのはデータだけでさ

18:デフォルトの名無しさん
17/03/11 09:14:34.53 xh0+7vv8.net
>>16
LGLP v3 なQtはインストール情報の開示が必須なので中のデータを見られたり、
Qtにファイルアクセス内容をダンプするコードを埋め込んだのをインストールされてデータを抜き取られるかもしれない。

19:デフォルトの名無しさん
17/03/11 09:49:37.06 OoMQO9eG.net
>>17
自分の端末に入ってる自分のデータなんざ好きに見ればいい

20:デフォルトの名無しさん
17/03/11 10:01:54.94 xh0+7vv8.net
>>18
機械に入っている見られたくないデータを見られてしまう

21:デフォルトの名無しさん
17/03/11 10:14:15.76 OoMQO9eG.net
>>19
たとえば?

22:デフォルトの名無しさん
17/03/11 16:38:34.12 yNsFk+g5.net
そんな正規のインストール手順が必要なレベルのやつが
解析だの抽出だの、高が知れてる

23:デフォルトの名無しさん
17/03/11 18:18:00.45 /v3Qrvkv.net
禁止されていても無視してリバースエンジニアリングすればいいだけの事さ

24:デフォルトの名無しさん
17/03/12 01:43:56.29 U65Hgm+K.net
>>21
正規なんか関係ない、インストール手順が出るというだけでだめ
>>22
LGPLではリバースエンジニアリングを禁止してはいけないとなっている

25:デフォルトの名無しさん
17/03/12 08:52:02.19 XFVxjLdI.net
無法者なら禁止されていたからと言って律儀に守るわけ無いだろう
禁止しようがしまいが結果は同じ
不正アクセス禁止法や著作権法に引っ掛かる行為は訴える事もできるし

26:デフォルトの名無しさん
17/03/22 18:33:11.32 ipSO+JK0.net
オワコン

27:デフォルトの名無しさん
17/03/25 02:39:46.56 8oBnA/MO.net
そもそもQtをLGPLでライセンス利用する形で実行プログラムを別ファイルとして自分で書くなら、
LGPLからくる制限は、リバースエンジニアリングを拒絶できない、という部分くらいだよ。
自分が作るプログラム部分はソースコード開示の必要はない。
それにQtは年30000円ぐらいで商用ライセンスもらえるから、
企業がアプリ作るならそっちのほうが手っ取り早いかもしれないよ。
こっちならLGPL版と違ってexeに静的リンクだってできちゃうし。
昔からSkypeのPC版がこれで作られてるのは有名な話(MSに買われて以降は知らないけど)

28:デフォルトの名無しさん
17/03/25 05:22:00.24 4Aiq2mHR.net
年30000円どころじゃない話を前スレ辺りで見た気がしたんだが

29:デフォルトの名無しさん
17/03/25 10:48:10.47 zKWPJ1ip.net
>>26
リバースエンジニアリングに加えてLGPL v3 なので組み込みで機器にインストールする方法を開示しなければならないのが制限が大きい。
30000円ではない、安い商用のStart-upsは$948/年で、総収入$100,000未満が条件。

30:デフォルトの名無しさん
17/03/25 11:36:54.16 GiAuLLWQ.net
消費者向けじゃないのなら公開の義務は無いらしいが
それって何処までなのやら

31:デフォルトの名無しさん
17/03/25 13:40:57.96 8oBnA/MO.net
今は年$3540 らしいね。昔はこんなにしなかったんだがなあ。
URLリンク(www.qt.io)
組み込み機器にLGPLのソフトウェアを組み込む際について議論してるのは、日本語の範囲だとここくらいかなあ。
URLリンク(srad.jp)
『組み込みで機器にインストールする方法を開示しなければならない』って何条の話?
通常の用途だとLGPLでQtを利用するだけで十分じゃん? て感じだな。

32:デフォルトの名無しさん
17/03/25 15:10:06.45 zKWPJ1ip.net
>>30
4.結合された作品(e)の条項

33:デフォルトの名無しさん
17/03/25 16:10:36.20 8oBnA/MO.net
>>31
なるほどで。これ通常はブートローダとCランタイムとこのスレの場合Qtのソースコードを公開すれば済む話だよね。
インストールの手順までは示されないのが通常。ソースコードを提供したんだから自分でやれ、ということになる。

34:デフォルトの名無しさん
17/03/25 18:49:00.53 zKWPJ1ip.net
>>30
月あたり約3万なら安いな

35:デフォルトの名無しさん
17/03/30 15:28:39.36 2QpRLh8T.net
no demand
no future
no developer

36:デフォルトの名無しさん
17/03/31 10:57:54.27 eR9vk9No.net
>>34
indeed
URLリンク(trends.google.co.jp)

37:デフォルトの名無しさん
17/04/01 11:26:12.63 2jOooiMj.net
Developer Survey Results
URLリンク(stackoverflow.com)
no Qt Creator, no Qt
URLリンク(stackoverflow.com)
Qt Creator 0.7%, no Qt
URLリンク(stackoverflow.com)
no Qt Creator, no Qt

38:デフォルトの名無しさん
17/04/01 11:28:20.06 7j4tGaMv.net
なんなのこいつ

39:デフォルトの名無しさん
17/04/01 15:25:27.85 gxLU90hA.net
日本語じゃないと読めないんだが

40:デフォルトの名無しさん
17/04/01 22:55:45.83 2jOooiMj.net
The evidences you have to realize what Qt is.

41:デフォルトの名無しさん
17/04/03 05:17:44.36 nCcApgYs.net
Qtはやめておけ

42:デフォルトの名無しさん
17/04/04 11:11:46.87 QuScGEjO.net
QtはPC向けとしては使いやすい。
Win/Mac/Linux対応のプログラムが簡単に書けるし、
ライブラリはよく整備されてると言っていい。
GUIベースのIDEもあるから特にLinuxではありがたみが増すだろう。
.NETじゃ動作速度が不満、っていうならいい選択肢なんじゃないか。
boostやSTLとも共存できるし。
一方でスマフォやタブレット向けにはGPL/LGPLの制約がかかってきて、
事実上OSS開発にするか商用ライセンス買うかの2択にならざるを得ない。

43:デフォルトの名無しさん
17/04/04 12:27:23.26 /rkaPKwN.net
PC向けはそう思う。
スマフォやタブレット向けには、プラットフォームネイティブと比べて、操作と見栄え、機能のどれもがひどく劣化していて使う気になれない。

44:デフォルトの名無しさん
17/04/04 19:30:52.49 NpOpvMWO.net
スマホきらい

45:デフォルトの名無しさん
17/04/04 19:34:50.15 vS0Kb9uV.net
ライセンス高杉

46:デフォルトの名無しさん
17/04/04 20:36:40.05 C6EbrKkE.net
はっきり言って、Qt使うとすっげえ作りにくい

47:デフォルトの名無しさん
17/04/04 22:23:01.82 /rkaPKwN.net
>>44
PC向けに使う分には楽になるので高くない。
>>45
スマフォやタブレット向けにはそう思う。

48:デフォルトの名無しさん
17/04/05 10:08:26.26 olEtu4E5.net
Visual Studio 2017にはいつごろ対応予定?

49:デフォルトの名無しさん
17/04/05 17:27:39.79 ESf1g3HA.net
>>47
URLリンク(wiki.qt.io)
対応予定はまだない

50:デフォルトの名無しさん
17/04/09 13:35:32.94 pzAQL0ut.net
UbuntuのCanonical、「Unity 8」開発打ち切りを発表 スマホの取り組みも終了
URLリンク(ascii.jp)

51:デフォルトの名無しさん
17/04/09 21:39:12.11 Y5hPZequ.net
gnome > kde

52:デフォルトの名無しさん
17/04/13 19:06:20.79 SP+NYsBy.net
>>50
C++のままでうまくやっていればgnome<kdeだっただろう。
QMLなんかにするからUnity8とKDE5はしょぼくて役立たずになってしまった。

53:デフォルトの名無しさん
17/04/13 20:34:44.50 5u+1re/V.net
QMLヤバいくらい使えないな

54:デフォルトの名無しさん
17/04/13 22:05:07.49 9mIMnCIv.net
LINEのデスクトップ版でQtが使われているという記述を見たんだけどマジ?

55:デフォルトの名無しさん
17/04/13 22:58:45.02 UIwcSd5k.net
>>53
qtのdllインストールするからマジだと思うよ

56:デフォルトの名無しさん
17/04/13 23:01:41.23 5u+1re/V.net
QStringの使いにくさは凄いな

57:デフォルトの名無しさん
17/04/13 23:12:39.84 pV4Ht5xx.net
>>55
むしろC/C++の文字列処理が頭おかしいくらい何も考えてないのであって、
Qt上でQStringとQByteArrayを使うだけならノーストレスで何も考えずに使えるよ。
QString <-> std::string/std::u16string
QString <-> const char*
の相互変換については基本的にQString側のメソッドを呼び出せばいいが、
C++特有のインスタンスの寿命問題があるので気を使う必要があるな。

58:デフォルトの名無しさん
17/04/14 01:51:50.38 d5lRjKPg.net
>>53
かなり頑張ってよく作ってある。
だけど、Qt自体の問題でテキスト入力のキー操作がブラウザなど他のアプリと同じようではないのでとても使いにくいし、
日本語入力中に文節区切りがわかるように表示されないので入力がしにくい。
そんなだからChromeからLINE使った方が格段に使いやすい。

59:デフォルトの名無しさん
17/04/14 01:58:29.04 d5lRjKPg.net
>>56
楽なんだけれどUTF-16の並びでしかないから絵文字などがあると面倒なコード書かなくちゃならない。
Qt5.10のQStringViewで使いやすくなるように思えない。
URLリンク(doc-snapshots.qt.io)

60:デフォルトの名無しさん
17/04/14 03:41:28.57 GOqxwiVe.net
>>58
そんな特殊な環境知らんわ。
機能が足りないなら自分で実装してフォーラムに投げればいいんじゃね。

61:デフォルトの名無しさん
17/04/14 06:35:20.63 EGtRRMj1.net
なるほどね。サロゲートペアが含まれると、QString::length()の言うところの
戻り値は文字の数ですよ、という前提が崩れるわけか。
文字の数にこだわるならtoUcs4()やtoStdU32String()で他の形式に変換する必要があるわな。
ここはもういっそQChar を UTF-16からUcs4に変えてしまったほうが全体的に楽になりそうなものだが、
現状では頑なに内部16ビットを固守してるようにみえる。
まあ頑張れ。

62:デフォルトの名無しさん
17/04/14 19:32:36.93 /GRVqW8H.net
今話題のAnimeEffectsってのがQt製みたいね

63:デフォルトの名無しさん
17/04/15 02:14:03.71 F/Tbf849.net
>>61
動かしてみた。Qtで作ってこんな情けないUIというのはあんまりだ。

64:デフォルトの名無しさん
17/04/15 04:40:46.80 isspK6A7.net
>>62
どうせゴチャゴチャしてりゃ偉いと思ってるだけだろ

65:デフォルトの名無しさん
17/04/15 16:47:27.06 IfgJlU6t.net
そもそもQt製でまとまなUIを見たことがない

66:デフォルトの名無しさん
17/04/15 16:59:49.97 R/Ce5off.net
君の言う、まともなUIって定義はなんだ?
そもそもKDE自体がQtで作られてるわけだが。

67:デフォルトの名無しさん
17/04/15 19:19:20.78 F/Tbf849.net
>>65
Linuxで動いているKDEはKDE4まではよくできている。他のプラットフォームがひどい。
AnimeEffectsは、
QGroupBoxのタイトルテキストが枠にくっついて隙間がなかったり、枠に重なってしまっている。
QPushButtonがプラットフォームスタイルでない。
フォーカス枠が細く正しい太さでない。
QComboBoxの大きさが小さすぎて正しくない、テキスト上下位置もずれている。
ヘルプで表示されるダイアログのクローズボタンをクリックしてもクローズされない。OKはクローズされる。
タイムラインゲージのテキストが欠けたりハンドルとテキストが重なっていたりする。

68:デフォルトの名無しさん
17/04/15 19:43:09.27 F/Tbf849.net
>>65
>まともなUIって定義はなんだ?
動作しているプラットフォームで、そのプラットフォームネイティブなUIと同じ見栄えと同じ操作感で違和感なく動作すること。
以前はよかったが最近のQtはそれがだめになっている。QMLになってさらにだめでQMLでデスクトップアプリケーションは作る気にならない。

69:デフォルトの名無しさん
17/04/15 20:02:23.24 R/Ce5off.net
QMLは、あくまでもJavaScriptの柔軟性でUIデザインと応答の同時作り込みをやりたいというのが主眼で、
OSのルックアンドフィールを遵守するという目的ではないと思う。
どちらかというとスマフォやタブレット対応で必要になりそうな技術。
それとQt5.6でアプリを公開してるけどネイティブ実装と違って困った、なんてことはまだ一度もない。
ただしQtがネイティブOSで何をやってるかソースコードを読んで全部理解しながら作る必要がある。

70:デフォルトの名無しさん
17/04/16 05:02:15.93 li4MoJhs.net
>>66
最後二つはまだしも他のはただのお前の好みだろ
ボタンがネイティブスタイルじゃないと駄目って
UIデザイナもスタイルシートも全否定だな

71:デフォルトの名無しさん
17/04/16 21:13:11.77 Qz/seIpF.net
ここには低年収の頭の弱いおっさんしかいないからしゃーない

72:デフォルトの名無しさん
17/04/17 00:28:54.68 TJWzc2hl.net
>>70
自己紹介乙

73:デフォルトの名無しさん
17/04/17 18:27:29.58 1xI019jx.net
>>68 QMLは、あくまでもJavaScriptの柔軟性でUIデザインと応答の同時作り込みをやりたいというのが主眼で、
UIデザインもUnity8とKDE5で失敗している。
応答はだめ、Qt Quick Controls 1がほとんどQMLで実装して応答がダメでC++で実装しなおされて2になった。
さらに1でのデスクトップ対応より格段の劣化。
>>どちらかというとスマフォやタブレット対応で必要になりそうな技術。
両方で失敗をし続けている。Ubuntu Phoneなど失敗続き。
>>ネイティブ実装と違って困った、なんてことはまだ一度もない。
困らない程度の実装なんだろう。

74:デフォルトの名無しさん
17/04/17 19:12:38.00 oNN5T3Q3.net
>>72
あくまでアプリで適用できるレベルの技術であって、
デスクトップ環境そのものをQMLに置き換えるのは流石に無茶が過ぎるだろう。
MSだってVisual StudioをWPFに置き換えるのに発表後10年ぐらいかかったわけだし。
>困らない程度の実装なんだろう。
正確にはQtの標準実装で正常に動かないことを確認した段階でWin32APIに
処理を差し替えて解決してるから困ってないと書いている。
普通の開発者なら困ってるかもわからんな。
具体的に言うと
ファイル名のソート、ウィンドウのStayOnTop、ゴミ箱に削除、
タイトルバーのコンテキストメニューにメニュー追加、指定したファイルをExplorerで表示する、あたりかな。
Qtを使うことで大半のコードはOS非依存にできるんだが、この辺になるとOSごとに書かないとしょうがないみたいだ。

75:デフォルトの名無しさん
17/04/17 21:23:53.65 3ZB/SzGu.net
QMLで何かを作ろうと思ったら
いろんな常識を捨てる覚悟と、ややこしい設計の覚悟が必要だな。
しかもビルドが通っても期待通りに動かないことだらけ。
代案探しの方が時間がかかる。

76:デフォルトの名無しさん
17/04/18 17:46:15.64 Yf8MszTw.net
Electronでおk

77:デフォルトの名無しさん
17/04/18 17:46:38.43 loFmBv2J.net
>>※正確には通常「LGPL+商用利用向きの例外条項」を選ぶことにな7ります(Qtインストール先の「LGPL_EXCEPTION.txt」を参照)。
LGPLv3だからLGPL_EXCEPTION.txtは削除されるべきだとメーリングリストに書かれている。

78:デフォルトの名無しさん
17/04/18 17:53:16.05 loFmBv2J.net
>>75
Electronのやり方はダメ

79:デフォルトの名無しさん
17/04/22 21:05:26.66 xNVgWxyC.net
新しいGoogle EarthはQtをやめてChromeベースになった。

80:デフォルトの名無しさん
17/04/22 22:03:07.27 ognfWHjL.net
Google Earthだと、Chrome Book向けにウェブベースのものを作らないとしょうがないだろうし、当然の結末だろうなあ。
Chromeで作っておけば作り分けも要らなくなるわけだし。
今はもうWebkit+JavaScriptでテキストエディタやIDEが作られる時代だからね。

81:デフォルトの名無しさん
17/04/22 23:27:44.99 3dW6OEKx.net
VisualStudioCode >>> QtCreator

82:デフォルトの名無しさん
17/04/23 00:16:16.27 jaDGW72z.net
>>80
やればわかるが、node-webkitやelectronはUIセットがないから、
ツールキットに相当するものを自分で作らないといけないぞ。
それ自体が大変すぎて個人にはとても扱えない代物だと感じたな。

83:デフォルトの名無しさん
17/04/23 00:23:05.29 jaDGW72z.net
補足すると、
VisualStudioCodeはMicrosoft、
BracketsはAdobe、
AtomはGitHubと、どこもIT業界の大手ばかりなことがわかる。
膨大な開発コストを費やさないと使いものにならないということだ。
逆にアプリ本体がほぼウェブブラウザで済むような内容だと比較的小さなコストでアプリが作れる。
だがそういうアプリもQtで作れることは言うまでもない。

84:デフォルトの名無しさん
17/04/23 01:33:50.84 rs4Ya4LF.net
デバッグ中にブレークポイント貼るとデバッガがおかしくなる

85:デフォルトの名無しさん
17/04/23 18:24:01.05 kQYEtztA.net
>>83
Qt Creatorはいろいろバグがあってはまる。

86:デフォルトの名無しさん
17/04/23 18:26:05.58 kQYEtztA.net
>>82
Qtで作るよりもプラットフォームに用意されているツールで作った方がちゃんと動くものを作りやすいのが現実だ。

87:デフォルトの名無しさん
17/04/23 18:43:28.46 jaDGW72z.net
>>85
それは狭い了見だな。
少なくとも俺が作ってるOpenGLで画面を描画して各種画像の読み込みに
対応して読み込みの先読み機構を付けた
ウィンドウズアプリを作るには、素で作るより遥かに楽だ。

88:デフォルトの名無しさん
17/04/23 20:06:13.40 kQYEtztA.net
>>86
大したことをしていないのだろう。その先をしようとするかどうかだ。

89:デフォルトの名無しさん
17/04/23 20:26:20.29 jaDGW72z.net
>>87
大したことってなんだよw

90:デフォルトの名無しさん
17/04/25 08:05:36.41 L1Jp1/og.net
>>87
たかがGUI Toolkitに何を求めているのだお前はw

91:デフォルトの名無しさん
17/04/29 22:17:59.25 Dzf++W11.net
エラー: : No such file or directory
#include <QLoggingCategory>
となってしまいます。
公式サイトからダウンロードしてインストールしたのに
QLoggingCategoryがないとなるのは何故でしょうか?
皆様はQLoggingCategoryを別途追加されていますか
それともQtを再インストールしたほうがよいでしょうか

92:デフォルトの名無しさん
17/04/29 23:57:16.41 x7ZtsVeM.net
まず、なにをしたらそのエラーが出たのかを書かないと

93:デフォルトの名無しさん
17/04/30 00:23:43.39 VPWRpVfK.net
すっかり失念しておりました
新しいプロジェクトとしてproファイルを読み込み、
ビルドしようとしたところ
cppファイルが
エラー: : No such file or directory
#include <QLoggingCategory>
となってしまいビルドできないのです
原因と考えているのはオプション→Qtバージョンで
使いたいと考えているQt5.6.2 gcc_64以外に
自動検出のQt4のお化けがあり何をしても消えてくれず
(削除、クリーンアップ不可)
再インストールしても解決せず途方に暮れている状態です

94:デフォルトの名無しさん
17/04/30 10:40:05.82 jjQJnylr.net
まず動作OSを書いてくれ。
Ubuntu16.04.2 で動かしたときは、apt-getで入るQtは使い物にならんかったよ。
公式からインストーラーを落として入れたらツールキットごと入ったからそれでビルドしていた。
そのときapt-getで入った古いバージョンのQtが毎回認識されてたが
インストーラーで入れた方を使う形で設定し直してたな。

95:デフォルトの名無しさん
17/04/30 10:43:01.65 jjQJnylr.net
基本的には[ツール]-[オプション]でダイアログを出して、
[ビルドと実行]-[Qtバージョン]でQtツールキットのバージョンの一覧を出して優先順位を決めたりする。
x64とx86は別バージョン扱いになる。

96:デフォルトの名無しさん
17/04/30 11:21:18.69 zwvZEPLC.net
skypeforlinux-64はQtを使わなくなった。

97:デフォルトの名無しさん
17/04/30 12:13:17.46 VPr4LyhY.net
OSから入れなおせ

98:デフォルトの名無しさん
17/04/30 15:18:56.72 yxqWVund.net
皆様ありがとうございます。
>>93-94
全く同じ状況です。
優先順位をどのように設定されましたか?
[ビルドと実行]-[Qtバージョン]でQtツールキットのバージョンの一覧で
自動検出のQt4
Qt5.6.2 gcc_64
になっており、削除、クリーンアップができません。
手動で追加することもできません。
何か別途で優先順位を設定する方法があるのでしょうか
どうして古い方のQmakeを優先するんですかね…

99:デフォルトの名無しさん
17/04/30 15:46:38.99 VPr4LyhY.net
pathがおかしいんじゃね

100:デフォルトの名無しさん
17/04/30 16:22:54.83 JrC81rPZ.net
>>97
だからOSとそのバージョンを書けって言ってるだろ。
質問の仕方もわからんのか。
まず、Linux系の場合、OS標準の方法で入れたQt Creatorと
Qt公式のインストーラーで入れたQt Creatorはそれ自体が挙動が違うから、
Qt公式のを使いたければOS標準のはアンインスコして使うべき。
それからQt Creatorのツールキットの認識は『キット』と『Qtバージョン』の2段階になっていて、
Qt公式のQt Creatorを起動している場合はバンドルされているツールキットが自動検出になるはず。
まずはQt Creatorのバージョンを確認することだな。うちのはQt公式ので4.2.1だ。

101:デフォルトの名無しさん
17/04/30 17:46:25.32 kKON+KN1.net
ubuntu16なんだろよく読めよ
責任とれないが俺のやり方
rootでいらないqtファイル消す(パージじゃ消えない>>99を信じるな)
aptでパージ
新バージョンを公式から落としてインスト
aptでいれなおす
aptでいれたクリエイターを起動
あら不思議自動認識が消える
手動で公式インストqtファイルを指定
いつもこんな感じ
93に指定する方法聞くかos入れ直すほうがいいかもな
しかし>>99のような役立たずな書き込みもめずらしい

102:デフォルトの名無しさん
17/04/30 23:32:00.50 yxqWVund.net
皆様ありがとうございました。
>>100
この方法で自動検出されていたQt4が消え、
Qt5.6.2 gcc_64だけを指定することができ、
エラー: : No such file or directory
#include <QLoggingCategory> が無くなりました。
ありがとうございました。

103:デフォルトの名無しさん
17/04/30 23:54:41.47 JrC81rPZ.net
>>100-101
なんでだよ。
その運用だとQt Creatorだけシステム側ので全体がチグハグになるだろ。
SDKをQt公式から入れたならQt CreatorもQt公式のを使うのが本道だろ。
ま、動きゃ何でもいいってんならもう何も言わんがね。

104:デフォルトの名無しさん
17/05/01 02:32:41.50 Pbd1SnYh.net
無様

105:デフォルトの名無しさん
17/05/01 11:28:03.11 hzoMRY/L.net
配布するときにまた揉めそうなやつだな

106:デフォルトの名無しさん
17/05/01 17:10:51.52 TBFB8t6J.net
何コイツ偉そうと思っていたら
> うちのはQt公式ので4.2.1だ。
最後でお茶吹いたw

107:デフォルトの名無しさん
17/05/02 09:51:40.73 zHbBpGgT.net
>>105
Qt CreatorのバージョンはQt SDKのバージョンとは違うんだが?
いちいちそんなことを説明する必要ある?

108:デフォルトの名無しさん
17/05/06 15:02:02.22 UekiBFUN.net
apt-get で入れる場合、そのubuntu(debian)でランタイム用として公式サポートされているものと
同じバージョンの開発キットがインストールされる
さらにapt-get でインストールできるのはモジュール単位なので、
QtGUI とかの基本以外のモジュールを使う場合は追加でインストールする必要がある
ぶっちゃけ面倒だし、Qt公式インストーラで別途インストールした方が管理も楽
ちなみにユーザー権限でインストールするとホームディレクトリにインストールされる
sudo 付けてインストーラを実行すればそのPC内のユーザーで共用できる(/opt/Qt とか)

109:デフォルトの名無しさん
17/05/08 15:21:35.90 b8IrEu5a.net
Qt Creatorのヘルプでスクロールすると途中から逆向きにスクロール、なんてバグだ。

110:デフォルトの名無しさん
17/05/08 15:24:27.22 a6AlN3XP.net
んなもん、公式フォーラムに書けや。アホか。

111:デフォルトの名無しさん
17/05/08 17:01:56.50 b8IrEu5a.net
>>108
ソース引っ張ってきて直した。Qtのバグだった。

112:デフォルトの名無しさん
17/05/08 18:13:21.70 a6AlN3XP.net
>>110
公式にパッチを投げるまでがOSS開発者の仕事。

113:デフォルトの名無しさん
17/05/08 18:36:01.53 b8IrEu5a.net
>>111
OOSのは使っていない。

114:デフォルトの名無しさん
17/05/08 19:03:56.43 gDok/eUJ.net<


115:> >>106 >>107 相変わらず的外れなことばっかりな奴がいるな



116:デフォルトの名無しさん
17/05/08 19:31:03.26 a6AlN3XP.net
>>112
Qt自体がOSSだ。
>>113
何が的外れか具体的に指摘できない時点で的外れ。

117:デフォルトの名無しさん
17/05/08 20:29:22.76 SZNsQcBY.net
>>113
Tipsに対して的外れとは、君の的はいったいどこにあるのやら

118:101
17/05/08 23:31:08.77 H01j08w7.net
101です。
荒れる原因になってしまったので
追加の報告をさせて頂きます。
100さんの方法で自動検出が消え、Qt5.6.2 gcc_64を指定したあとは、
公式のQt5.6.2を利用しています。
公式のQt5.6.2にもQt5.6.2 gcc_64を指定した設定が適用されていました。
(自動検出のQt4を消すことが出来ました。)
ですので、102さんが仰る
>>Qt Creatorだけシステム側ので全体がチグハグ
にはなっていないと思います。
この報告をすぐにすればよかったですね

119:デフォルトの名無しさん
17/05/09 00:11:50.01 ECVRvtRv.net
>>116
まあUbuntuなら公式とそれほど差があるわけじゃないから
動けばどっちでもいいだろうけどさ。
念のためにGUI上でQt Creatorのバージョンを確認して、
$ (QtSDKをインスコしたPATH)/Tools/QtCreator/bin/qtcreator -version
の出力と比べてご覧よ。
同じなら同じバージョン。
異なるならQt Creatorだけシステム側のを使ってる状態になる。

120:デフォルトの名無しさん
17/05/09 01:11:27.86 m06THHKY.net
>>114
商用はOSSではないよ

121:デフォルトの名無しさん
17/05/09 01:28:51.69 ECVRvtRv.net
>>118
URLリンク(www.sra.co.jp)
問 :
 商用版の Qt にあって、オープンソース版の Qt にないものは何ですか。
答 :
 基本的な Qt のコードとライブラリと API は、両方で同じです。しかしながら、商用版とオープンソース版では多くの違いがあります。
 商用版の顧客は、オープンソース版のユーザが利用できない多くの製品やサービスを入手できます。
>>118,110 は明らかにQtのコードの話をしているからこれはOSSの範囲だ。

122:デフォルトの名無しさん
17/05/09 02:46:59.42 TexapL1h.net
>>117
だめだコイツ
話が通じてねぇw

123:デフォルトの名無しさん
17/05/09 08:16:57.55 m06THHKY.net
>>119
商用はQtのコードを変更しても知らせずに使える。OSSに反映する必要はない。
製品に特化した機能変更や修正をしてもよいしQtを使っていることを知らせる必要もない。

124:デフォルトの名無しさん
17/05/09 10:09:31.58 ECVRvtRv.net
>>121
あー、こいつ全くわかっとらんわ。話にならん。

125:デフォルトの名無しさん
17/05/10 20:43:32.16 WFrkL21k.net
>>122
LICENSE AGREEMENTをよく読んでごらん。

126:デフォルトの名無しさん
17/05/10 23:33:30.45 fDOgxcsN.net
>>123
117のカキコ見たらわかるが
人の話全く聞かない奴だからスルー推奨

127:デフォルトの名無しさん
17/05/12 14:42:59.20 MORu6q+C.net
数日前、Qt Creator4.2.2でオプション設定していたら固まった。
今日は、起動して7つのプロジェクトが入ったデフォルトセッションを開くとプロジェクトの読込中のまま進まない。

128:デフォルトの名無しさん
17/05/12 14:57:42.01 PxXB6Wit.net
プロジェクト読み込み時に固まるってのはたまにあるね。
しばらく待ってたら読み込み終わることが多いけど。
userファイル消してみたらどうだい。
ついでにいうとここで書いたって解決しないから
どうしてもというなら公式のフォーラムで発言したほうがいいよ。

129:デフォルトの名無しさん
17/05/13 02:20:46.39 DreJkv7c.net
おまえらQtでmastodonのクライアント作ろうぜ

130:デフォルトの名無しさん
2017/05/14


131:(日) 17:56:32.37 ID:ozBnCuKw.net



132:デフォルトの名無しさん
17/05/18 09:41:38.07 xXCtzo0J.net
Python3 + PyQt5 の勉強始めて、基本的な動作の実験をしてみたんだけど、
if __name__=="__main__":
  # 1回め
  app = QApplication(sys.argv)
  window = MainWindow()
  app.exec_()
  # 2回め
  app = QApplication(sys.argv) # これをしなければ OK
  window = MainWindow()
  app.exec_()
ってやると1回めのウィンドウを閉じたところで Segmentation fault になる。
MainWindow は、QMainWindow から派生してて、コンストラクタで show() してる。
2回めの QApplication のインスタンスを作りなおさなければ動くんですが、なぜなんでしょう?
想定しているのは、入力のフロントエンドとして使用して、その処理を繰り返すような用途です。

133:デフォルトの名無しさん
17/05/18 09:48:40.00 yl+XzHdH.net
>>129
基本的にQApplicationはQtアプリ自身の寿命と同じになる。
QApplication::exec()から制御が戻ってきたときはそのままアプリケーションは終了させてしまう。
君が書いてるようなQApplicationのインスタンスを何度も作り直すようなことは想定されてない。
根本的に使い方が間違ってると思うんだが。

134:デフォルトの名無しさん
17/05/18 12:00:30.51 xXCtzo0J.net
>>130
どうも。
まあ MainWindow を再生成してる例とかも見たことないし、
あまり良いことじゃないんだろうなーと思いながらちょっと実験をした次第。
スレッドを使うのが正しいんだろうとは思うんだけど、なかなか大変そうで、
できれば簡単に済ませられないかと。
1. ウィンドウで入力。
2. ウィンドウ閉じて、途中経過はターミナルにつらつらと出す。
3. 1 に戻る。
こんな感じなんだけど、簡単にできる方法ないでしょうかね。

135:デフォルトの名無しさん
17/05/18 15:12:32.04 6nNpr9wz.net
そんなことだれもやらないだろうな
MainWindowの中身を造りなおせば済むから

136:デフォルトの名無しさん
17/05/18 16:58:37.46 d+oDyp66.net
メインウィンドウを閉じるという事は、アプリ・プロセスの終了と同じ
プロセスの起動・終了を繰り返しても、時間がかかるだけで、意味がない

137:デフォルトの名無しさん
17/05/18 17:48:15.34 0IsM/VMV.net
>>131
どうしても閉じたいのなら、closeした時のsignalで処理開始して、処理終了signalでメインウインドウ再度作成すればいいんやないの?

138:デフォルトの名無しさん
17/05/18 20:58:39.50 l69ftKPX.net
pythonにもhide/showぐらいはありそうなもんだが

139:デフォルトの名無しさん
17/05/18 21:09:42.35 5ZcsGzLc.net
hideするだけで良いじゃん。
多分GUIアプリを作った事がないと見た。

140:デフォルトの名無しさん
17/05/18 21:21:27.96 c1N4wzkE.net
>>131
app.setQuitOnLastWindowClosed(False)

141:デフォルトの名無しさん
17/05/18 22:02:34.50 xXCtzo0J.net
どうも。いろいろ参考になります。
ちょっと気合入れてスレッド勉強しました。なんとなくわかってきたんで、これで実装しようかと思ってます。あー、頭いて。
>>136
Python + Qt は初めて。Lazarus なら遊びで使ったことがある。
>>137
なにやら怪しげなフラグ設定、調べてみます。

142:デフォルトの名無しさん
17/05/19 11:35:18.05 EaD/3jfs.net
>>138
python で実装するにしても関数仕様は以下を参照した方が速い。どうやっても C の仕様に引き摺られるので。
URLリンク(doc.qt.io)
例えば >>137 を調べるとして、以下を見れば古い C 流儀


143:のプロパティだと判って python 流でないのに戸惑うかもしれない。 http://doc.qt.io/qt-5/qguiapplication.html#quitOnLastWindowClosed-prop ただ、>>131 をやろうと思ってるなら閉じる必要のあるウィンドウをメインウィンドウにするべきではないと思うな。入力用のダイアログ作ればいいと思うけど。 逆にずっと出していると思われるターミナルウィンドウみたいなのをメインにしたらいいと思う。 そうすると余程長い処理じゃなければスレッドを使う必要もなくなるんじゃない? PyQt/PySide でスレッドを分けるとスレッドを跨いだデータの扱いで結構面倒事が起こる。



144:デフォルトの名無しさん
17/05/20 15:34:09.42 YAniTqrY.net
馬鹿には無理

145:デフォルトの名無しさん
17/05/20 21:07:33.68 QnLfIsPY.net
質問です
QChartを使いたいんですけどQtCreatorのデザイナに出てこないんですがどうすればいいんでしょうか
環境はUbuntuでCreatorと全モジュール入りのソースをビルドしてインストールしました

146:デフォルトの名無しさん
17/05/21 18:41:27.32 kU3SV2Oh.net
質問。QMLでfindObjectByIdに相当するものって無い?
idをJavaScriptに文字列で渡ししたいんだが

147:デフォルトの名無しさん
17/05/21 19:40:14.93 FLeMRkjd.net
>>141
chart使ったことはないが公式のサンプルはあるじゃろ
そこから読み解くのも一つの手
>>142
C++でも存在は知ってても使ったことがない
Qt3より以前の古い設計の名残だと思ってるが…

148:デフォルトの名無しさん
17/05/21 19:53:10.30 1z6i0IAe.net
QStringListやQMap<int, QString>でよくね

149:デフォルトの名無しさん
17/05/23 21:27:48.60 yewnfItW.net
なんでQt製の2ch専ブラが存在しないの?

150:デフォルトの名無しさん
17/05/23 22:26:49.75 uRWG/1h1.net
Qtで作るメリットがないからじゃね?

151:デフォルトの名無しさん
17/05/23 22:50:34.65 QSXdmP1t.net
Qt は Unix 系の人が多いと思うけど、 Unix 系の人はお気に入りのニュースリーダかエディタで 2ch を見る人が多い印象がある。

152:デフォルトの名無しさん
17/05/24 03:32:38.88 TdJLTRsg.net
専ブラを作るのに適したGUIライブラリってなんだろ
Qtはマルチメディアも扱いやすいしWebKitも軽いし最も適した選択肢の1つに入る気がする
それともWPFやJavaFXのほうが良かったりするのかね
デスクトップ版の専ブラ古臭いのしかないしQt/Qmlでデスクトップ/Android両対応の専ブラ作れば一発当てられるんじゃね

153:デフォルトの名無しさん
17/05/24 06:34:54.59 be4/vFMj.net
ぜひ当ててくれ

154:デフォルトの名無しさん
17/05/24 12:10:06.69 4nncZNTT.net
ときすでにおすし

155:デフォルトの名無しさん
17/05/24 12:34:30.46 VnQyaHE4.net
kitaってのあったよ
LinuxデスクトップやZaurusではそれなりに使えてたけど

156:デフォルトの名無しさん
17/05/24 12:48:05.37 u73zk5EW.net
2chのapiが独占されてるからいまさら考えても意味なし

157:デフォルトの名無しさん
17/05/24 16:04:02.28 ClJsbK5M.net
現在の入力値を調べてボタンを有効/無効にする制御をやりたい。
Windows だとこういうのは Idle ハンドラでやってたんだけど、
Qt だとどこでやったらいいんでしょうか?

158:デフォルトの名無しさん
17/05/24 18:00:12.56 VnQyaHE4.net
オブジェクト思考的な話
数値がある閾値超えた場合、その旨の signal を発行して、
その signal (イベント)が必要なオブジェクトがそれを拾えば良い話
もちろん、signal を使わず数値を監視して enable/disable への切替は可能だけど
もはやQtの話じゃない

159:デフォルトの名無しさん
17/05/24 18:02:43.63 /PgniMpe.net
うちではTimer使ってやってる

160:デフォルトの名無しさん
17/05/25 10:11:01.87 nE79I92l.net
timerで処理ってダイアログ閉じるタイミングで変更されたりしたら嫌だな

161:デフォルトの名無しさん
17/05/25 11:09:21.88 uhrRUtX4.net
QtCreaterのソースコードでキーボードカスタマイズを
実現してるUIがあるから参考になると思うよ

162:デフォルトの名無しさん
17/05/25 21:35:10.53 6ZItyO6p.net
QtCreatorでカッコやクォーテーションを勝手に補完するの止める方法ある?
特に範囲選択して文字を打てば置換して欲しいのに、選択範囲を勝手に囲むの
マジで作業効率悪い

163:デフォルトの名無しさん
17/05/25 21:35:43.87 6ZItyO6p.net
terか

164:デフォルトの名無しさん
17/05/26 00:48:30.99 c/JqeYBh.net
>>158
オプションの補完にそれぞれオフにするチェックボックスがある。

165:デフォルトの名無しさん
17/05/26 00:50:37.64 ojvhD5uG.net
オプション>テキストエディタ>Completionだな。
それからQt Creatorが正しい。

166:デフォルトの名無しさん
17/05/26 14:24:03.43 /9uRQuSE.net
Qt Creator で QLabel の背景色はどうやって変えるんですか?
文字の色は palette いじったら変わったけど。
コードで変える方法はググったらあるけど、色見ながら変えたい。

167:デフォルトの名無しさん
17/05/26 15:18:44.39 /9uRQuSE.net
あ、styleSheet でできました。

168:デフォルトの名無しさん
17/05/27 12:19:04.10 G9IVs/Lk.net
>>162
コードと同じで、トップレベルウィジェットでない場合にはautoFillBackgroundをtrueにするとpaletteの背景色が使われる。

169:デフォルトの名無しさん
17/05/27 16:26:59.57 4cZE/dpO.net
末端のWidgetならstylesheetプロパティに直書きでいいけど、
QFrameとかのフレーム系Widgetにそれやると、中に入れた子Widgetが全部変わってしまうから注意な。
そういう場合どうするかというと、より上位のフレームのstylesheetプロパティに
クラス名付きで修飾を入れる。例えばQPushButtonについて変えたいなら
QPushButton {
border: none;
}
などとやる。

170:デフォルトの名無しさん
17/05/30 14:50:59.13 6Su+ZuCJ.net
スレッドを requestInterruption() で中断させて、同じインスタンスをまた実行させると、
中断要求が残ってて即座に中断してしまう。requestInterruption() を受けたら exit() してしまって、
インスタンスは作りなおさないといけないの?

171:デフォルトの名無しさん
17/05/30 15:43:58.11 334s1ZU7.net
何やってるのかは知らないけど、大抵の場合は
QtConcurrent::Run+QFutureの組み合わせの方が扱いが楽よ。
途中終了とかもできるし。
まあ再開はできないから途中からやり直すという
コードを書く必要があるかもしれないが。

172:デフォルトの名無しさん
17/06/03 02:24:13.51 f2qbH72v.net
記念カキコ
idにQtが出たので...

173:デフォルトの名無しさん
17/06/03 06:18:32.38 o79y/oZ3.net
どこどこ

174:デフォルトの名無しさん
17/06/03 06:47:25.67 3clWUM84.net
idといえば、C++からQMLのidを指定して
任意の場所のvisible状態をC++側で取得する方法は?

175:デフォルトの名無しさん
17/06/17 19:16:26.95 dBxyMrx/.net
URLリンク(qiita.com)
Xamarin.Formsがmacにもlinuxにも対応するってマジ?
最近はLinux用アプリでさえQtよりElectronを目にするようなってきたし、いよいよQtもオワコンかなぁ

176:デフォルトの名無しさん
17/06/17 20:45:35.08 vMjKwWc4.net
Javaのコーダーがあれだけ増えたのに、
デスクトップじゃいまだにVisualBasicの代替程度しかなれてないけどな

177:デフォルトの名無しさん
17/06/17 21:57:37.22 zSsDLH5L.net
ElectronじゃC++使えないじゃん

178:デフォルトの名無しさん
17/06/17 23:03:00.81 tjX69Ey+.net
デスクトップアプリは今後もQtを中心に使うけど、
スマフォ/タブレット用はXamarinにする予定でいる。
手元のアプリではだいたい44-47%は外部インターフェイスを持たないModel部の実装になるから、
これだけのボリュームがプラットフォーム非依存にできる利点は大きい。

179:デフォルトの名無しさん
17/06/17 23:59:32.82 SJko7C46.net
非依存でもQtありきってのがなぁ

180:デフォルトの名無しさん
17/06/18 04:18:04.11 stDA8hu1.net
Qtなんてただの道具なんだから、
使いたくなければ使わなきゃええねんで。
Model部はpure C++でも構わんだろ。
生産性がいくらか下がるだけの話だ。

181:デフォルトの名無しさん
17/06/18 15:32:25.19 xPH4G83l.net
ほんそれ

182:デフォルトの名無しさん
17/06/21 20:33:46.03 q4L265CV.net
Qt SDKのexamples/widgets/gestures をWindows10で動かしてるんだけど、
pinchは反応してるけどpanとswipeは反応しないね。
これってこんなものなの?

183:デフォルトの名無しさん
17/06/26 22:14:29.72 lEyLgHV4.net
QMLについて調べてるんですが、.uiを使わずにこれを使う利点であるのでしょうか?
少し調べてみた限りでは面倒臭くなるだけに見えるで候

184:デフォルトの名無しさん
17/06/26 23:07:41.05 uFFYsDWn.net
1回使ったら二度と使いたくなくなる

185:デフォルトの名無しさん
17/06/27 07:34:52.49 jbbVXxr0.net
>>178
二本指してる?

186:デフォルトの名無しさん
17/06/27 09:10:34.15 WuBzCuMJ.net
Qt Creatorの、Debug実行を行っているのか、exeを起動しているのか、判定する方法かifdefはありますでしょうか?

187:178
17/06/27 09:40:29.58 9FJ950aK.net
>>181
公式Helpとサンプルの挙動を見る限り、pinchは2本以上の指でpanとswipeは1本指のように見えるんだが。
違うのかな。

>>182
qmakeのことを言ってるのかC++のことを言ってるのかで話は変わる。

188:178
17/06/27 10:18:45.06 WuBzCuMJ.net
>qmake
>C++
どちらの実現でも、OKです。
C++ってのは、VC++ですが。
知りたいのは、出来上がったExeの挙動をリリース/デバッグで切り替えることではなくて、
QtCreatorで動作するときだけはある処理をスルーしたい(逆もできればますます便利)です。
ある処理とは具体的には、throwで、exeのときにはQApplicationのオーバーライドでcatchして
エラーメッセージがちゃんと出せるのに、
QtCreatorで実行すると、throwでドカンとアセンブラステップ画面に移動して、アプリがEND。

189:デフォルトの名無しさん
17/06/27 10:39:15.47 9FJ950aK.net
>>184
Qtに限らず、C++上では
_DEBUG プリプロセッサシンボルの定義状態によって判定するのが基本。
qmakeではconfig関数を使う。デバッグビルドであることはわかるけど
リリースビルドであることはわからないので ! 演算子を併用するとかやや意味不明な運用になってるね。
例外の下りだけど、どうも184のコードがおかしいような気がする。
そもそもQtはQT_NO_EXCEPTIONSが定義されていると例外機構が存在しないものとして動作したりするし。
例えばQException以外が飛んで来ることが想定できてないんじゃね?

190:デフォルトの名無しさん
17/06/27 11:05:47.35 64w1N/XC.net
>>184-185
昔 java が流行った頃にその手の挙動であった一例として。もしかするとこういう書き方をしてるかもしれない。
java の throws のつもりで関数定義のところに throw(XException) を書いてあって
関数内で XException 以外の例外が発生するとそこでコアダンプするというのがあった。
java: XException を投げる


191:可能性があるので上位で対処を要求する書き方 void test() throws XException { } C++: XException 以外は投げられず、std::unexpected() に制御が移る void test() throw(XExpception) { }



192:184
17/06/27 11:18:24.72 WuBzCuMJ.net
>>185
全然話が違っています。
デバッグコンパイルでも、リリースコンパイルでも、ただしくcatchできています。
ただ、QtCreatorで、throwのところで、デバッガーが止まるのが困ってるだけです。
前にも書いた通り、デバッグコンパイルのexe/リリースコンパイルのexe、を切り分けたいのでなく、
デバッガ―が止まらないように、でばっがーによる起動を判定したい、だけです。


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

1095日前に更新/240 KB
担当:undef