問題タブ [sunstudio]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
382 参照

c++ - cout が extern "C" 変数を出力しないのはなぜですか?

次のコードを検討してください。

なぜこのように振る舞うのですか?

0 投票する
1 に答える
879 参照

solaris - Solaris 11 マシンへの solarisstudio12.3 のインストール

Solaris 11 x86 マシンに solaris studio 12.3 をインストールしようとしています。

上記のリンクから Oracle 証明書とキーをダウンロードしましたが、公開中に次のエラーが発生します。

さらに情報が必要な場合はお知らせください。

ポータル- https://pkg.oracle.com/solarisstudio/release

0 投票する
1 に答える
100 参照

sunstudio - ビルド用の環境変数を設定する方法

私は Sun Studio 12 を使用していますが、あなたが慣れ親しんでいるどのバージョンでもサポートします。

既存のコードと Makefile に基づくプロジェクトがあります。私が使用しているビルド ツールチェーンには、環境変数から読み取られるさまざまなオプションがあります。プロジェクト設定内でランタイムの環境変数を設定できることはわかりましたが、プロジェクトをビルドするための環境変数を設定するためのオプションが表示されません。

これは Sun Studio で実行できますか?

ありがとう!

0 投票する
0 に答える
80 参照

c++ - SunStudio のアタッチ デバッガ ダイアログですべてのプロセスを一覧表示するにはどうすればよいですか?

SunStudio 12.3 を使用して C++ CGI をデバッグしています。SunStudio は私のユーザー ID で実行され、実行可能ファイルの所有権は私にあります。ただし、CGI プロセスは、私の ID ではなく Web サーバーの ID で実行されます。

プロセスにアタッチしようとすると、自分の ID で実行されているプロセスしか表示されません。したがって、CGI はリストされていません。すべてのプロセス、または私のもの以外の特定の ID に属するプロセスを一覧表示する方法はありますか?

0 投票する
1 に答える
125 参照

c++ - g++ コンパイル コードを使用して、Solaris Studio の Performance Analyser でパフォーマンス分析を行うことはできますか?

collect コマンドの実行中に次のエラーが発生します

$ collect -c on sample bit (警告): /home/user1/ANALYSIS/SAMPLE_PROGRAM/sample では操作できません。Solaris10 update 5 以降 (または OpenSolaris バージョン snv_52 以降) のマシンで再コンパイルしてください。古い OS を使用している場合は、-xbinopt=prepare を試してください (SPARC のみ)。

サンプル プログラムは、次の g++ フラグでビルドされています。

g++ -c -Wall -g3 -m64 -pthread -O2 -DSOLARIS -DSS_64BIT_SERVER

サンプルプログラムは単純で、次のコードのみが含まれています while (true) { sleep (10); }

C++ コードでコンパイルされたコードを collect コマンドで使用できるかどうかを確認しようとしていました。巨大な g++ コンパイル済みバイナリがあるため、Solaris Studio C++ コンパイラで再度コンパイルしたくありません。

0 投票する
2 に答える
149 参照

sunstudio - Sun Studio 11 でのフォント サイズの編集

Sun Studio 11 のすべてのウィンドウのフォント サイズを変更するにはどうすればよいですか? すべてのウィンドウのテキストは非常に小さいです。プログラムのヘルプが読めません。

1 つの方法は、プログラムを --fontsize で開始することです - グーグルでこれを見つけました..しかし、IDE 自体でどのようにそれを行うことができますか?

0 投票する
2 に答える
1415 参照

c++ - gcc ライブラリをリンクする Sun Studio: 例外が機能しない

Sun Studio でアプリケーションを構築する必要があります。このアプリケーションは、Gnu C++ でのみビルドできる共有ライブラリを使用します。共有ライブラリには C インターフェイスがあるため、Sun コンパイラからコードを呼び出すことができます (これは、名前マングリングの問題を回避するためです。この質問も参照してください)。

例外処理以外はすべて正常に動作します。共有ライブラリで例外がスローされると、プログラムはセグメンテーション違反を起こします。これは、メイン プログラムが Sun Studio コンパイラを使用してコンパイルされた場合にのみ発生します。以下の最小限の例を Gnu C++ コンパイラでコンパイルすると、プログラムは正常に動作し、共有ライブラリが例外を検出します。

プラン A: 動的にリンクする セットアップの図を次に示します。

結果: 例外がスローされるとセグメンテーション違反が発生します (以下のコードを参照)。

プラン B: 静的にリンクする

上記と同じですが、c_layer.a をビルドします

結果:


ファイル __cxa_allocate_exception libs/cInterface/libcInterface.a(c_layer.cpp.o) std::string::~std::basic_string () libs/cInterface/libcInterface.a(c_layer.cpp.o) の未定義の最初の参照シンボル/cInterface/libcInterface.a(c_layer.cpp.o) __cxa_free_exception libs/cInterface/libcInterface.a(c_layer.cpp.o) __cxa_begin_catch libs/cInterface/libcInterface.a(c_layer.cpp.o) __cxa_throw libs/cInterface/libcInterface. a(c_layer.cpp.o)

質問:例外処理が Sun Studio で機能しないのはなぜですか?


次のように gcc ランタイムを強制すると:

それは別様にクラッシュします:

$> 'std::runtime_error' のインスタンスをスローした後に呼び出される終了 $> 再帰的に呼び出される終了

(dbx) ここで 1__lwp_sigqueue(0x1、0x6、0xffffc1000bae5060、0xffffff80ffffffbbff51e70a [2] thr_kill(0x0、0x0、0x0、0x0、0x0、0x0、0x0、0x0、0x0、0x0、0x0、0x0、0x0、0x0、0x0、0x0、0x0、0x0、0x0、0x0、0x0、0x0、0x0、0x0) 0x0、0x0)、0xffff80ffbf4c291d で [4] 中止 (0x0、0x0、0x0、0x0、0x0、0x0)、0xffff80ffbf497ff2 で [5] __gnu_cxx::__verbose_terminate_handler(0x0、0x0、0x0、0x0、0x0) 9 で[6] __cxxabiv1::__terminate(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xffff80ffbd9dbd5b [7] std::terminate(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xffff80ffbd9dbda3 [8] __cxa_rethrow (0x0, 0x0, 0x0, 0x0, 0x0, 0x0), 0xffff80ffbd9dc02d [9] __gnu_cxx::__verbose_terminate_handler(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), 0xffff80ffbd9de8d4 [10] __cxxterminate 0(__x0, 0x0: 、0x0、0x0、0x0、0x0)、0xffff80ffbd9dbd5b [11] std::terminate(0x0、0x0, 0x0, 0x0, 0x0, 0x0), 0xffff80ffbd9dbda3 [12] で、0xffff80ffb9991116 => [14] main(argc = 1、argv = 0xffff80ffbffffa78)、「exampleMain.cpp」の6行目


問題を再現するための最小限の例を次に示します。

例Main.cpp:

共有ライブラリ ヘッダー:

共有ライブラリ ソース:


cmake ファイルは次のようになります。

実行可能ファイルの

ライブラリ用

0 投票する
2 に答える
616 参照

linux - Solaris および Linux での ace のビルド エラー

Linux で ace 5.3 をビルドする際に問題があります。次のエラーが表示されます。

私がググったとき、それはace5.3のバグであり、それ以降のバージョンで修正されていることがわかりました。そこで、ace 6.3 バージョンを入手し、Linux でビルドすることができました。ただし、ace 6.3 は、sunstudio 11 コンパイラを使用する SolarisX86 ではビルドされません。私は次のようになります。

誰か助けてくれませんか?私は引き続き ace 5.3 バージョンを使用することを好み、パッチを使用してバグを修正し、Linux 上でビルドできるようにします。

0 投票する
1 に答える
336 参照

compiler-errors - Solaris Sparc 11 の ./configure で (cc の代わりに) Sun Studio を強制的に使用してコンパイルします。

Compile OpenSSl 1.0.2a が必要です。Solaris Sparc 11 で ./configure で (cc ではなく) Sun Studio を強制的に使用してコンパイルする方法. 構成ファイルでどのような変更を行う必要がありますか? Solaris studio 12.3 がインストールされています。構成ファイルを実行すると、solaris-sparcv9-cc 用に構成されます。