0
Solarisの共有ライブラリにグローバル変数に関する問題があります。 サンプル、次の点を考慮:私は同じコードは、Linuxが動作しながら、Fooのコンストラクタは、Solarisで呼び出されることはありませんことに気付きましたSolaris共有ライブラリとグローバル変数
Foo g_Foo;
:
class Foo
{
public:
Foo() { Init(); }
private:
void Init() { // do something }
};
私は共有ライブラリ内のいくつかのコードを持っています。
私はgcc 3.4.3とSunリンカーを使用しています。
実際に行っているコード全体を投稿できますか?私はOSに問題があるとは思わない。 – Mahesh
私はそれを2番目にします。私はこれまでSolarisでこのイディオムを多く使用してきました。 (確かに、私は通常、Sun CCを使用してコンパイルしましたが、実際にはg ++が問題ではないと思います) –
これはシナリオですか?あなたが投稿したコードはうまくいくようです。しかし、あなたが言及したふるまいは私に "静的初期化失敗"を推測させます、あなたが投稿したコードはそれほど言いません。 –