Fedora 15 に SystemC をインストールするには?
問題:
- RPM パッケージなし (ライセンスの問題)
- 4.6 ではコンパイルできません
- -fpermissive を使用しても (clang はモジュールをコンパイルしません)
Chitlesh Goorah による非常に有用でよく書かれたブログ投稿があります。まずそれをお読みください。
次に、SystemC ライブラリを GCC 4.6 でコンパイルする方法を思い出します。-fpermissive を追加することはできますが、私は強くお勧めしません。
代わりに、変更が必要な 4 行のコードがあります。パッチは次のとおりです。
--- src/sysc/datatypes/bit/sc_bit_proxies.h 2007-03-14 17:47:49.000000000 +0000
+++ src/sysc/datatypes/bit/sc_bit_proxies.h.mod 2011-09-02 13:53:34.318379140 +0000
@@ -713,7 +713,7 @@
protected:
- mutable X& m_obj;
+ X& m_obj;
int m_hi;
int m_lo;
int m_len;
@@ -1190,10 +1190,10 @@
protected:
- mutable X& m_left;
- mutable Y& m_right;
+ X& m_left;
+ Y& m_right;
mutable int m_delete;
- mutable int& m_refs;
+ int& m_refs;
おまけとして、上記の変更により、このヘッダーが Clang で動作するようになります (3.0 でテスト済み)。
sc_utils_ids.cpp
前の回答に加えて、不足しているヘッダーを追加するためにパッチを適用する必要もあります。
--- src/sysc/utils/sc_utils_ids.cpp 2006-12-15 20:31:39.000000000 +0000
+++ src/sysc/utils/sc_utils_ids.cpp.mod 2011-11-02 15:49:10.431948273 +0000
@@ -59,6 +59,9 @@
//
#include "sysc/utils/sc_report.h"
+// Jeremy Bennett 2 Nov 11. Patched for GCC 4.6.
+#include <cstdlib>
+#include <cstring>
namespace sc_core {