OMNet++ debugging on macOS 10.15 Catalina - omnet++

I am using macOS 10.15.2 Catalina and I followed the Installation Guide for macOS.
I completely followed the Installation Guide and still I am unable to debug.
Anyone encountered the same? or know how to fix it?
Many thanks.
Yasir
$-$-$-$-$-$-$-$-$-$-$-$-$-$-$-$-$-$-$-$-$-$-$-$
Adding more details below for #Rudi
When I try to install to install OMNet++ 6 pre 5 and do make, I am getting following error and it seems that OMNet++ 6 pre 5 is also not tested for macOS Catalina 10.15.
===== Compiling qtenv ====
messageanimator.cc
In file included from messageanimator.cc:17:
In file included from ./messageanimator.h:26:
In file included from /Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/QGraphicsRectItem:1:
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:80:1: error: expected expression
public:
^
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:78:24: error: variable has incomplete type 'class Q_WIDGETS_EXPORT'
class Q_WIDGETS_EXPORT QGraphicsItem
^
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:78:7: note: forward declaration of 'Q_WIDGETS_EXPORT'
class Q_WIDGETS_EXPORT QGraphicsItem
^
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:484:31: error: 'QGraphicsItem' is not a class, namespace, or enumeration
Q_DECLARE_OPERATORS_FOR_FLAGS(QGraphicsItem::GraphicsItemFlags)
^
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:78:24: note: 'QGraphicsItem' declared here
class Q_WIDGETS_EXPORT QGraphicsItem
^
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:484:31: error: 'QGraphicsItem' is not a class, namespace, or enumeration
Q_DECLARE_OPERATORS_FOR_FLAGS(QGraphicsItem::GraphicsItemFlags)
^
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:78:24: note: 'QGraphicsItem' declared here
class Q_WIDGETS_EXPORT QGraphicsItem
^
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:484:31: error: 'QGraphicsItem' is not a class, namespace, or enumeration
Q_DECLARE_OPERATORS_FOR_FLAGS(QGraphicsItem::GraphicsItemFlags)
^
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:78:24: note: 'QGraphicsItem' declared here
class Q_WIDGETS_EXPORT QGraphicsItem
^
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:484:31: error: 'QGraphicsItem' is not a class, namespace, or enumeration
Q_DECLARE_OPERATORS_FOR_FLAGS(QGraphicsItem::GraphicsItemFlags)
^
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:78:24: note: 'QGraphicsItem' declared here
class Q_WIDGETS_EXPORT QGraphicsItem
^
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:484:31: error: 'QGraphicsItem' is not a class, namespace, or enumeration
Q_DECLARE_OPERATORS_FOR_FLAGS(QGraphicsItem::GraphicsItemFlags)
^
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:78:24: note: 'QGraphicsItem' declared here
class Q_WIDGETS_EXPORT QGraphicsItem
^
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:484:31: error: 'QGraphicsItem' is not a class, namespace, or enumeration
Q_DECLARE_OPERATORS_FOR_FLAGS(QGraphicsItem::GraphicsItemFlags)
^
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:78:24: note: 'QGraphicsItem' declared here
class Q_WIDGETS_EXPORT QGraphicsItem
^
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:484:31: error: 'QGraphicsItem' is not a class, namespace, or enumeration
Q_DECLARE_OPERATORS_FOR_FLAGS(QGraphicsItem::GraphicsItemFlags)
^
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:78:24: note: 'QGraphicsItem' declared here
class Q_WIDGETS_EXPORT QGraphicsItem
^
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:484:31: error: 'QGraphicsItem' is not a class, namespace, or enumeration
Q_DECLARE_OPERATORS_FOR_FLAGS(QGraphicsItem::GraphicsItemFlags)
^
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:78:24: note: 'QGraphicsItem' declared here
class Q_WIDGETS_EXPORT QGraphicsItem
^
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:485:1: error: expected expression
Q_DECLARE_INTERFACE(QGraphicsItem, "org.qt-project.Qt.QGraphicsItem")
^
/usr/local/include/QtCore/qobject.h:529:65: note: expanded from macro 'Q_DECLARE_INTERFACE'
template <> inline const char *qobject_interface_iid<IFace *>() \
^
In file included from messageanimator.cc:17:
In file included from ./messageanimator.h:26:
In file included from /Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/QGraphicsRectItem:1:
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:485:1: error: expected unqualified-id
/usr/local/include/QtCore/qobject.h:529:67: note: expanded from macro 'Q_DECLARE_INTERFACE'
template <> inline const char *qobject_interface_iid<IFace *>() \
^
In file included from messageanimator.cc:17:
In file included from ./messageanimator.h:26:
In file included from /Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/QGraphicsRectItem:1:
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:595:24: error: variable has incomplete type 'class Q_WIDGETS_EXPORT'
class Q_WIDGETS_EXPORT QAbstractGraphicsShapeItem : public QGraphicsItem
^
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:78:7: note: forward declaration of 'Q_WIDGETS_EXPORT'
class Q_WIDGETS_EXPORT QGraphicsItem
^
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:595:51: error: expected ';' after top level declarator
class Q_WIDGETS_EXPORT QAbstractGraphicsShapeItem : public QGraphicsItem
^
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:595:53: error: expected unqualified-id
class Q_WIDGETS_EXPORT QAbstractGraphicsShapeItem : public QGraphicsItem
^
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:620:24: error: variable has incomplete type 'class Q_WIDGETS_EXPORT'
class Q_WIDGETS_EXPORT QGraphicsPathItem : public QAbstractGraphicsShapeItem
^
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:78:7: note: forward declaration of 'Q_WIDGETS_EXPORT'
class Q_WIDGETS_EXPORT QGraphicsItem
^
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:620:42: error: expected ';' after top level declarator
class Q_WIDGETS_EXPORT QGraphicsPathItem : public QAbstractGraphicsShapeItem
^
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:620:44: error: expected unqualified-id
class Q_WIDGETS_EXPORT QGraphicsPathItem : public QAbstractGraphicsShapeItem
^
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:653:24: error: variable has incomplete type 'class Q_WIDGETS_EXPORT'
class Q_WIDGETS_EXPORT QGraphicsRectItem : public QAbstractGraphicsShapeItem
^
/Users/yasir/omnetpp-6.0pre5/tools/macosx/include/QtWidgets/qgraphicsitem.h:78:7: note: forward declaration of 'Q_WIDGETS_EXPORT'
class Q_WIDGETS_EXPORT QGraphicsItem
^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
make[2]: *** [Makefile:83: /Users/yasir/omnetpp-6.0pre5/out/clang-release/src/qtenv/messageanimator.o] Error 1
make[1]: *** [Makefile:121: qtenv] Error 2
make: *** [Makefile:35: allmodes] Error 2

Have you tried also OMNeT++ 6 pre 5? It contains an lldbmi wrapper executable that would use system provided lldb instead of gdb which may fix a lot of potential problems (and may cause other ones). But it would worth a try.
Even if you get gdb signed properly on macOS it will not support dynamic loading so it would be more or less useless (unless you build everything statically).

Related

error: "Protobuf requires at least C++11." with clang version already on version 13.1

I am using mac M1 chip.
i am doing bundle install to install the dependency of my service.
One of our ruby package is using protobuf, so i am getting below error while installing package natively.
Clang version installed is already 13+.
My ruby version is 2.6.6.
i tried with clang version below 11, but getting same error.
Anyone can help what is going wrong here?
/opt/homebrew/include/google/protobuf/stubs/port.h:123:2: error: "Protobuf requires at least C++11."
#error "Protobuf requires at least C++11."
^
/opt/homebrew/include/google/protobuf/stubs/port.h:129:26: warning: alias declarations are a C++11 extension [-Wc++11-extensions]
using ConstStringParam = const std::string &;
^
/opt/homebrew/include/google/protobuf/stubs/port.h:145:39: error: expected '(' for function-style cast or type construction
static const int64 kint64max = int64_t{0x7FFFFFFFFFFFFFFF};
~~~~~~~^
/opt/homebrew/include/google/protobuf/stubs/port.h:148:42: error: expected '(' for function-style cast or type construction
static const uint64 kuint64max = uint64_t{0xFFFFFFFFFFFFFFFFu};
~~~~~~~~^
In file included from /Users/<username>.rvm/gems/ruby-2.6.6/gems/pipeline-3.2/ext/protobuf/src/one_quota.cpp:1:
In file included from /Users/<username>.rvm/gems/ruby-2.6.6/gems/pipeline-3.2/ext/protobuf/include/one_quota.h:1:
In file included from /Users/<username>.rvm/gems/ruby-2.6.6/gems/pipeline-3.2/ext/protobuf/protobuf/Consumer.pb.h:9:
In file included from /opt/homebrew/include/google/protobuf/stubs/common.h:49:
/opt/homebrew/include/google/protobuf/stubs/stringpiece.h:165:23: warning: alias declarations are a C++11 extension [-Wc++11-extensions]
using traits_type = std::char_traits<char>;
^
/opt/homebrew/include/google/protobuf/stubs/stringpiece.h:166:22: warning: alias declarations are a C++11 extension [-Wc++11-extensions]
using value_type = char;
^
/opt/homebrew/include/google/protobuf/stubs/stringpiece.h:167:19: warning: alias declarations are a C++11 extension [-Wc++11-extensions]
using pointer = char*;
^
/opt/homebrew/include/google/protobuf/stubs/stringpiece.h:168:25: warning: alias declarations are a C++11 extension [-Wc++11-extensions]
using const_pointer = const char*;
^
/opt/homebrew/include/google/protobuf/stubs/stringpiece.h:169:21: warning: alias declarations are a C++11 extension [-Wc++11-extensions]
using reference = char&;
^
/opt/homebrew/include/google/protobuf/stubs/stringpiece.h:170:27: warning: alias declarations are a C++11 extension [-Wc++11-extensions]
using const_reference = const char&;
^
/opt/homebrew/include/google/protobuf/stubs/stringpiece.h:171:26: warning: alias declarations are a C++11 extension [-Wc++11-extensions]
using const_iterator = const char*;
^
/opt/homebrew/include/google/protobuf/stubs/stringpiece.h:172:20: warning: alias declarations are a C++11 extension [-Wc++11-extensions]
using iterator = const_iterator;
^
/opt/homebrew/include/google/protobuf/stubs/stringpiece.h:173:34: warning: alias declarations are a C++11 extension [-Wc++11-extensions]
using const_reverse_iterator = std::reverse_iterator<const_iterator>;
^
/opt/homebrew/include/google/protobuf/stubs/stringpiece.h:174:28: warning: alias declarations are a C++11 extension [-Wc++11-extensions]
using reverse_iterator = const_reverse_iterator;
^
/opt/homebrew/include/google/protobuf/stubs/stringpiece.h:175:21: warning: alias declarations are a C++11 extension [-Wc++11-extensions]
using size_type = size_t;
^
/opt/homebrew/include/google/protobuf/stubs/stringpiece.h:176:27: warning: alias declarations are a C++11 extension [-Wc++11-extensions]
using difference_type = std::ptrdiff_t;
^
/opt/homebrew/include/google/protobuf/stubs/stringpiece.h:182:10: error: unknown type name 'constexpr'
static constexpr size_type kMaxSize =
^
/opt/homebrew/include/google/protobuf/stubs/stringpiece.h:182:29: error: expected ';' at end of declaration list
static constexpr size_type kMaxSize =
^
;
/opt/homebrew/include/google/protobuf/stubs/stringpiece.h:280:3: warning: explicit conversion functions are a C++11 extension [-Wc++11-extensions]
explicit operator std::string() const { return ToString(); }
^~~~~~~~
/opt/homebrew/include/google/protobuf/stubs/stringpiece.h:187:39: error: use of undeclared identifier 'kMaxSize'
if (PROTOBUF_PREDICT_FALSE(size > kMaxSize)) {
^
In file included from /Users/<username>.rvm/gems/ruby-2.6.6/gems/pipeline-3.2/ext/protobuf/src/one_quota.cpp:1:
In file included from /Users/<username>.rvm/gems/ruby-2.6.6/gems/pipeline-3.2/ext/protobuf/include/one_quota.h:1:
In file included from /Users/<username>.rvm/gems/ruby-2.6.6/gems/pipeline-3.2/ext/protobuf/protobuf/Consumer.pb.h:9:
/opt/homebrew/include/google/protobuf/stubs/common.h:166:3: warning: 'auto' type specifier is a C++11 extension [-Wc++11-extensions]
auto volatile unused = &var;
^
/opt/homebrew/include/google/protobuf/stubs/common.h:179:36: warning: 'override' keyword is a C++11 extension [-Wc++11-extensions]
const char* what() const throw() override;
^
In file included from /Users/<username>.rvm/gems/ruby-2.6.6/gems/pipeline-3.2/ext/protobuf/src/one_quota.cpp:1:
In file included from /Users/<username>.rvm/gems/ruby-2.6.6/gems/pipeline-3.2/ext/protobuf/include/one_quota.h:1:
/Users/<username>.rvm/gems/ruby-2.6.6/gems/pipeline-3.2/ext/protobuf/protobuf/Consumer.pb.h:17:2: error: This file was generated by an older version of protoc which is
#error This file was generated by an older version of protoc which is
^
/Users/<username>.rvm/gems/ruby-2.6.6/gems/pipeline-3.2/ext/protobuf/protobuf/Consumer.pb.h:18:2: error: incompatible with your Protocol Buffer headers. Please
#error incompatible with your Protocol Buffer headers. Please
^
/Users/<username>.rvm/gems/ruby-2.6.6/gems/pipeline-3.2/ext/protobuf/protobuf/Consumer.pb.h:19:2: error: regenerate this file with a newer version of protoc.
#error regenerate this file with a newer version of protoc.
^
In file included from /Users/<username>.rvm/gems/ruby-2.6.6/gems/pipeline-3.2/ext/protobuf/src/one_quota.cpp:1:
In file included from /Users/<username>.rvm/gems/ruby-2.6.6/gems/pipeline-3.2/ext/protobuf/include/one_quota.h:1:
In file included from /Users/<username>.rvm/gems/ruby-2.6.6/gems/pipeline-3.2/ext/protobuf/protobuf/Consumer.pb.h:22:
In file included from /opt/homebrew/include/google/protobuf/generated_message_util.h:49:
In file included from /opt/homebrew/include/google/protobuf/any.h:37:
In file included from /opt/homebrew/include/google/protobuf/arenastring.h:38:
In file included from /opt/homebrew/include/google/protobuf/stubs/logging.h:36:
/opt/homebrew/include/google/protobuf/stubs/status.h:46:6: warning: scoped enumerations are a C++11 extension [-Wc++11-extensions]
enum class StatusCode : int {
^
/opt/homebrew/include/google/protobuf/stubs/status.h:81:43: warning: use of enumeration in a nested name specifier is a C++11 extension [-Wc++11-extensions]
bool ok() const { return error_code_ == StatusCode::kOk; }
^
In file included from /Users/<username>.rvm/gems/ruby-2.6.6/gems/pipeline-3.2/ext/protobuf/src/one_quota.cpp:1:
In file included from /Users/<username>.rvm/gems/ruby-2.6.6/gems/pipeline-3.2/ext/protobuf/include/one_quota.h:1:
In file included from /Users/<username>.rvm/gems/ruby-2.6.6/gems/pipeline-3.2/ext/protobuf/protobuf/Consumer.pb.h:22:
In file included from /opt/homebrew/include/google/protobuf/generated_message_util.h:49:
In file included from /opt/homebrew/include/google/protobuf/any.h:37:
In file included from /opt/homebrew/include/google/protobuf/arenastring.h:40:
In file included from /opt/homebrew/include/google/protobuf/arena.h:55:
/opt/homebrew/include/google/protobuf/arena_impl.h:54:8: error: unknown type name 'constexpr'
inline constexpr size_t AlignUpTo8(size_t n) {
^
/opt/homebrew/include/google/protobuf/arena_impl.h:54:1: warning: inline variables are a C++17 extension [-Wc++17-extensions]
inline constexpr size_t AlignUpTo8(size_t n) {
^
/opt/homebrew/include/google/protobuf/arena_impl.h:54:24: error: expected ';' after top level declarator
inline constexpr size_t AlignUpTo8(size_t n) {
^
;
/opt/homebrew/include/google/protobuf/arena_impl.h:90:30: warning: defaulted function definitions are a C++11 extension [-Wc++11-extensions]
~ArenaMetricsCollector() = default;
^
/opt/homebrew/include/google/protobuf/arena_impl.h:95:10: error: unknown type name 'constexpr'
static constexpr size_t kDefaultStartBlockSize = 256;
^
/opt/homebrew/include/google/protobuf/arena_impl.h:95:26: error: expected ';' at end of declaration list
static constexpr size_t kDefaultStartBlockSize = 256;
^
;
/opt/homebrew/include/google/protobuf/arena_impl.h:96:10: error: unknown type name 'constexpr'
static constexpr size_t kDefaultMaxBlockSize = 8192;
^
/opt/homebrew/include/google/protobuf/arena_impl.h:96:26: error: expected ';' at end of declaration list
static constexpr size_t kDefaultMaxBlockSize = 8192;
^
;
/opt/homebrew/include/google/protobuf/arena_impl.h:98:3: error: unknown type name 'size_t'
size_t start_block_size = kDefaultStartBlockSize;
^
/opt/homebrew/include/google/protobuf/arena_impl.h:98:27: warning: default member initializer for non-static data member is a C++11 extension [-Wc++11-extensions]
size_t start_block_size = kDefaultStartBlockSize;
^
/opt/homebrew/include/google/protobuf/arena_impl.h:99:3: error: unknown type name 'size_t'
size_t max_block_size = kDefaultMaxBlockSize;
^
/opt/homebrew/include/google/protobuf/arena_impl.h:99:25: warning: default member initializer for non-static data member is a C++11 extension [-Wc++11-extensions]
size_t max_block_size = kDefaultMaxBlockSize;
^
/opt/homebrew/include/google/protobuf/arena_impl.h:100:24: error: unknown type name 'size_t'
void* (*block_alloc)(size_t) = nullptr;
^
/opt/homebrew/include/google/protobuf/arena_impl.h:100:32: warning: default member initializer for non-static data member is a C++11 extension [-Wc++11-extensions]
void* (*block_alloc)(size_t) = nullptr;
^
/opt/homebrew/include/google/protobuf/arena_impl.h:101:32: error: unknown type name 'size_t'
void (*block_dealloc)(void*, size_t) = nullptr;
^
/opt/homebrew/include/google/protobuf/arena_impl.h:101:40: warning: default member initializer for non-static data member is a C++11 extension [-Wc++11-extensions]
void (*block_dealloc)(void*, size_t) = nullptr;
^
/opt/homebrew/include/google/protobuf/arena_impl.h:102:44: warning: default member initializer for non-static data member is a C++11 extension [-Wc++11-extensions]
ArenaMetricsCollector* metrics_collector = nullptr;
^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
25 warnings and 20 errors generated.
make[2]: *** [src/CMakeFiles/Protobuf.dir/one_quota.cpp.o] Error 1
make[1]: *** [src/CMakeFiles/Protobuf.dir/all] Error 2
make: *** [all] Error 2

Errors while Installing Garfield++

Apologies beforehand, I figure this is the kind of thing that probably has been posted about before but I couldn't find anything when I searched.
I'm trying to install Garfield++ and getting some error messages when I try to run the cmake. My system is running Ubuntu 18.04.5 LTS and ROOT version 6.20/02.
Everything seems to go fine until I try make -j N
When that happens I get these errors.
[ 0%] Generating GarfieldDict.cxx, libGarfieldDict_rdict.pcm, libGarfieldDict.rootmap
In file included from input_line_6:3:
In file included from /home/jason/Root/build/include/TObject.h:18:
/home/jason/Root/build/include/TStorage.h:93:4: error: use of undeclared identifier 'R__likely'
ClassDef(TStorage,0) //Storage manager class
^
/home/jason/Root/build/include/Rtypes.h:327:4: note: expanded from macro 'ClassDef'
_ClassDefOutline_(name,id,virtual,) \
^
/home/jason/Root/build/include/Rtypes.h:301:4: note: expanded from macro '_ClassDefOutline_'
_ClassDefBase_(name,id, virtual_keyword, overrd) \
^
/home/jason/Root/build/include/Rtypes.h:276:11: note: expanded from macro '_ClassDefBase_'
if (R__likely(recurseBlocker >= 2)) ...
^
In file included from input_line_6:3:
In file included from /home/jason/Root/build/include/TObject.h:18:
/home/jason/Root/build/include/TStorage.h:93:13: error: 'TStorage' does not refer to a value
ClassDef(TStorage,0) //Storage manager class
^
/home/jason/Root/build/include/TStorage.h:33:7: note: declared here
class TStorage {
^
/home/jason/Root/build/include/TStorage.h:118:1: error: use of undeclared identifier 'R__INTENTIONALLY_UNINIT_BEGIN'
R__INTENTIONALLY_UNINIT_BEGIN
^
/home/jason/Root/build/include/TStorage.h:120:1: error: use of undeclared identifier 'R__INTENTIONALLY_UNINIT_END'
R__INTENTIONALLY_UNINIT_END
^
/home/jason/Root/build/include/TStorage.h:131:1: error: unknown type name 'R__NEVER_INLINE'
R__NEVER_INLINE void TStorage::UpdateIsOnHeap(volatile const UInt_t &uni...
^
/home/jason/Root/build/include/TStorage.h:131:17: error: expected unqualified-id
R__NEVER_INLINE void TStorage::UpdateIsOnHeap(volatile const UInt_t &uni...
^
In file included from input_line_6:3:
/home/jason/Root/build/include/TObject.h:133:4: error: unknown type name 'R__ALWAYS_INLINE'
R__ALWAYS_INLINE Bool_t IsOnHeap() const { return TestBit(kIsOnHeap); }
^
/home/jason/Root/build/include/TObject.h:133:27: error: expected ';' at end of declaration list
R__ALWAYS_INLINE Bool_t IsOnHeap() const { return TestBit(kIsOnHeap); }
^
;
/home/jason/Root/build/include/TObject.h:169:30: error: unknown type name 'Bool_t'
void SetBit(UInt_t f, Bool_t set);
^
/home/jason/Root/build/include/TObject.h:172:4: error: unknown type name 'R__ALWAYS_INLINE'
R__ALWAYS_INLINE Bool_t TestBit(UInt_t f) const { return (Bool_t) ((f...
^
/home/jason/Root/build/include/TObject.h:172:21: error: duplicate member 'Bool_t'
R__ALWAYS_INLINE Bool_t TestBit(UInt_t f) const { return (Bool_t) ((f...
^
/home/jason/Root/build/include/TObject.h:133:21: note: previous declaration is here
R__ALWAYS_INLINE Bool_t IsOnHeap() const { return TestBit(kIsOnHeap); }
^
/home/jason/Root/build/include/TObject.h:172:27: error: expected ';' at end of declaration list
R__ALWAYS_INLINE Bool_t TestBit(UInt_t f) const { return (Bool_t) ((f...
^
;
/home/jason/Root/build/include/TObject.h:210:11: error: unknown type name 'Bool_t'
static Bool_t GetObjectStat();
^
/home/jason/Root/build/include/TObject.h:211:35: error: unknown type name 'Bool_t'
static void SetObjectStat(Bool_t stat);
^
/home/jason/Root/build/include/TObject.h:215:4: error: unknown type name 'Bool_t'
ClassDef(TObject,1) //Basic ROOT object
^
/home/jason/Root/build/include/Rtypes.h:327:4: note: expanded from macro 'ClassDef'
_ClassDefOutline_(name,id,virtual,) \
^
/home/jason/Root/build/include/Rtypes.h:301:4: note: expanded from macro '_ClassDefOutline_'
_ClassDefBase_(name,id, virtual_keyword, overrd) \
^
/home/jason/Root/build/include/Rtypes.h:273:20: note: expanded from macro '_ClassDefBase_'
virtual_keyword Bool_t CheckTObjectHashConsistency() const overr...
^
In file included from input_line_6:3:
/home/jason/Root/build/include/TObject.h:215:4: error: use of undeclared identifier 'R__likely'
/home/jason/Root/build/include/Rtypes.h:327:4: note: expanded from macro 'ClassDef'
_ClassDefOutline_(name,id,virtual,) \
^
/home/jason/Root/build/include/Rtypes.h:301:4: note: expanded from macro '_ClassDefOutline_'
_ClassDefBase_(name,id, virtual_keyword, overrd) \
^
/home/jason/Root/build/include/Rtypes.h:276:11: note: expanded from macro '_ClassDefBase_'
if (R__likely(recurseBlocker >= 2)) ...
^
In file included from input_line_6:3:
/home/jason/Root/build/include/TObject.h:215:13: error: 'TObject' does not refer to a value
ClassDef(TObject,1) //Basic ROOT object
^
/home/jason/Root/build/include/TObject.h:37:7: note: declared here
class TObject {
^
/home/jason/Root/build/include/TObject.h:237:8: error: use of undeclared identifier 'R__unlikely'
if (R__unlikely(fgObjectStat)) TObject::AddToTObjectTable(this);
^
/home/jason/Root/build/include/TObject.h:261:8: error: use of undeclared identifier 'R__unlikely'
if (R__unlikely(fgObjectStat)) TObject::AddToTObjectTable(this);
^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
Error: Error loading the default header files.
CMakeFiles/Garfield.dir/build.make:208: recipe for target 'GarfieldDict.cxx' failed
make[2]: *** [GarfieldDict.cxx] Error 1
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/Garfield.dir/all' failed
make[1]: *** [CMakeFiles/Garfield.dir/all] Error 2
Makefile:129: recipe for target 'all' failed
make: *** [all] Error 2
To be frank, I have only a vague idea what this means. I think it means that the Garfield++ cmake can find my ROOT but for some reason can't read it properly, which I don't know how to fix.
Any help would be appreciated.
I followed the instructions at https://garfieldpp.web.cern.ch/garfieldpp/getting-started/
Phase 1 --
The only deviation from the link was having to tell ccmake where my root directory was. 1st Phase - Checked Prerequisites: A C++ compiler that could support C++11, Root (at least version 6), GSL (GNU Scientific Library), and CMake (at least version 3.3). Only lacked GSL so I went to http://mirrors.ibiblio.org/gnu/ftp/gnu/gsl and, downloaded and installed version 2.6.
Phase 2
mkdir GARFIELD
export GARFIELD_HOME=/home/GARFIELD
git clone http://gitlab.cern.ch/garfield/garfieldpp.git $GARFIELD_HOME
cd $GARFIELD_HOME
mkdir build
cd build
cmake $GARFIELD_HOME
make -j 4
The last step which has the failure. [Though I have noticed that the second to last step, while it runs, does leave a field blank. So here's the results of cmake $GARFIELD_HOME.
-- -----------------------------------------------------------
-- Garfield source files: Source/AvalancheMC.cc;Source/AvalancheMicroscopic.cc;Source/Component.cc;Source/ComponentAnalyticField.cc;Source/ComponentAnsys121.cc;Source/ComponentAnsys123.cc;Source/ComponentCST.cc;Source/ComponentComsol.cc;Source/ComponentConstant.cc;Source/ComponentElmer.cc;Source/ComponentElmer2D.cc;Source/ComponentFieldMap.cc;Source/ComponentGrid.cc;Source/ComponentNeBem2d.cc;Source/ComponentNeBem3d.cc;Source/ComponentNeBem3dMap.cc;Source/ComponentTcad2d.cc;Source/ComponentTcad3d.cc;Source/ComponentUser.cc;Source/ComponentVoxel.cc;Source/DriftLineRKF.cc;Source/GeometryRoot.cc;Source/GeometrySimple.cc;Source/KDTree.cc;Source/Medium.cc;Source/MediumCdTe.cc;Source/MediumGaAs.cc;Source/MediumGas.cc;Source/MediumMagboltz.cc;Source/MediumSilicon.cc;Source/Numerics.cc;Source/OpticalData.cc;Source/PlottingEngineRoot.cc;Source/Polygon.cc;Source/Random.cc;Source/RandomEngineRoot.cc;Source/Sensor.cc;Source/Shaper.cc;Source/Solid.cc;Source/SolidBox.cc;Source/SolidExtrusion.cc;Source/SolidHole.cc;Source/SolidRidge.cc;Source/SolidSphere.cc;Source/SolidTube.cc;Source/SolidWire.cc;Source/TetrahedralTree.cc;Source/Track.cc;Source/TrackBichsel.cc;Source/TrackElectron.cc;Source/TrackHeed.cc;Source/TrackPAI.cc;Source/TrackSimple.cc;Source/TrackSrim.cc;Source/ViewBase.cc;Source/ViewCell.cc;Source/ViewDrift.cc;Source/ViewFEMesh.cc;Source/ViewField.cc;Source/ViewGeometry.cc;Source/ViewIsochrons.cc;Source/ViewMedium.cc;Source/ViewSignal.cc;GarfieldDict.cxx
-- -----------------------------------------------------------
-- Heed source files: Heed/HeedFieldMap.cpp;Heed/heed++/code/BGMesh.cpp;Heed/heed++/code/ElElasticScat.cpp;Heed/heed++/code/EnTransfCS.cpp;Heed/heed++/code/EnTransfCS_BGM.cpp;Heed/heed++/code/EnergyMesh.cpp;Heed/heed++/code/HeedCluster.cpp;Heed/heed++/code/HeedCondElectron.cpp;Heed/heed++/code/HeedDeltaElectron.cpp;Heed/heed++/code/HeedDeltaElectronCS.cpp;Heed/heed++/code/HeedMatterDef.cpp;Heed/heed++/code/HeedParticle.cpp;Heed/heed++/code/HeedParticle_BGM.cpp;Heed/heed++/code/HeedPhoton.cpp;Heed/heed++/code/PairProd.cpp;Heed/heed++/code/PhotoAbsCS.cpp;Heed/heed++/code/PhotoAbsCSLib.cpp;;Heed/wcpplib/geometry/box.cpp;Heed/wcpplib/geometry/circumf.cpp;Heed/wcpplib/geometry/gparticle.cpp;Heed/wcpplib/geometry/mparticle.cpp;Heed/wcpplib/geometry/plane.cpp;Heed/wcpplib/geometry/polyline.cpp;Heed/wcpplib/geometry/straight.cpp;Heed/wcpplib/geometry/surface.cpp;Heed/wcpplib/geometry/trajestep.cpp;Heed/wcpplib/geometry/vec.cpp;Heed/wcpplib/geometry/volume.cpp;Heed/wcpplib/ioniz/bethe_bloch.cpp;Heed/wcpplib/ioniz/e_cont_enloss.cpp;Heed/wcpplib/math/DoubleAc.cpp;Heed/wcpplib/math/PolLeg.cpp;Heed/wcpplib/math/cubic.cpp;Heed/wcpplib/math/kinem.cpp;Heed/wcpplib/math/linexi2.cpp;Heed/wcpplib/math/lorgamma.cpp;Heed/wcpplib/math/parabola.cpp;Heed/wcpplib/matrix/inverse.cpp;Heed/wcpplib/matrix/multiply.cpp;Heed/wcpplib/matter/AtomDef.cpp;Heed/wcpplib/matter/GasDef.cpp;Heed/wcpplib/matter/GasLib.cpp;Heed/wcpplib/matter/MatterDef.cpp;Heed/wcpplib/matter/MoleculeDef.cpp;Heed/wcpplib/particle/eparticle.cpp;Heed/wcpplib/particle/particle_def.cpp;Heed/wcpplib/random/PointsRan.cpp;Heed/wcpplib/random/chisran.cpp;Heed/wcpplib/random/pois.cpp;Heed/wcpplib/random/rnorm.cpp;Heed/wcpplib/safetl/AbsArr.cpp;Heed/wcpplib/safetl/AbsPtr.cpp;Heed/wcpplib/stream/definp.cpp;Heed/wcpplib/stream/findmark.cpp;Heed/wcpplib/stream/prstream.cpp;Heed/wcpplib/util/FunNameStack.cpp
-- -----------------------------------------------------------
-- Magboltz source files: Source/magboltz-11.9.f
-- -----------------------------------------------------------
-- neBEM source files: NeBem/ComputeProperties.c;NeBem/GarfieldppInterface.cpp;NeBem/Isles.c;NeBem/ReTriM.c;NeBem/Vector.c;NeBem/luc.c;NeBem/neBEM.c;NeBem/neBEMInterface.c;NeBem/nrutil.c;NeBem/svdcmp.c
-- -----------------------------------------------------------
-- Directory used to find ROOT dict files:
-- -----------------------------------------------------------
-- Garfield++ examples will be built. In order disable this option use -DWITH_EXAMPLES=OFF
-- Install path: /usr/local
-- If you want to change this path call cmake -DCMAKE_INSTALL_PREFIX=my_install_path ...
-- Configuring done
-- Generating done
-- Build files have been written to: /home/jason/GARFIELD/build
Notice the Root directory line is blank. How do I fix that?
Edit:2-
Measured success. Switched the location where ROOT is read from to where it was installed instead of where it was built and I got a new error message.
[ 0%] Generating GarfieldDict.cxx, libGarfieldDict_rdict.pcm, libGarfieldDict.rootmap
No such file or directory
CMakeFiles/Garfield.dir/build.make:208: recipe for target 'GarfieldDict.cxx' failed
make[2]: *** [GarfieldDict.cxx] Error 1
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/Garfield.dir/all' failed
make[1]: *** [CMakeFiles/Garfield.dir/all] Error 2
Makefile:129: recipe for target 'all' failed
make: *** [all] Error 2
Still emotionally processing the full implications.

re2.cc compiling problem when bundle install for gitlab

I'm getting the following error and wonder how should I solve it
I'm getting this error when trying to run gem install re2 -v 1.1.1
However, run gem install re2 -v 1.2.0 works perfectly for me in the same directory.
Building native extensions. This could take a while...
ERROR: Error installing re2:
ERROR: Failed to build gem native extension.
current directory: /home/aaron/.rvm/gems/ruby-2.5.3/gems/re2-1.1.1/ext/re2
/home/aaron/.rvm/rubies/ruby-2.5.3/bin/ruby -I /home/aaron/.rvm/rubies/ruby-2.5.3/lib/ruby/site_ruby/2.5.0 -r ./siteconf20200629-12178-1dryx90.rb extconf.rb
checking for -lstdc++... yes
checking for stdint.h... yes
checking for rb_str_sublen()... yes
checking for -lre2... yes
checking for re2 requires C++11 compiler... yes
checking for RE2::Match() with endpos argument... yes
creating Makefile
current directory: /home/aaron/.rvm/gems/ruby-2.5.3/gems/re2-1.1.1/ext/re2
make "DESTDIR=" clean
current directory: /home/aaron/.rvm/gems/ruby-2.5.3/gems/re2-1.1.1/ext/re2
make "DESTDIR="
compiling re2.cc
cc1plus: warning: command line option ‘-Wimplicit-int’ is valid for C/ObjC but not for C++ [enabled by default]
cc1plus: warning: command line option ‘-Wdeclaration-after-statement’ is valid for C/ObjC but not for C++ [enabled by default]
cc1plus: warning: command line option ‘-Wimplicit-function-declaration’ is valid for C/ObjC but not for C++ [enabled by default]
In file included from /home/aaron/.rvm/rubies/ruby-2.5.3/include/ruby-2.5.0/ruby/ruby.h:29:0,
from /home/aaron/.rvm/rubies/ruby-2.5.3/include/ruby-2.5.0/ruby.h:33,
from re2.cc:9:
/home/aaron/.rvm/rubies/ruby-2.5.3/include/ruby-2.5.0/ruby/defines.h:286:44: warning: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wliteral-suffix]
# define EXTERN __pragma(message(__FILE__"("STRINGIZE(__LINE__)"): warning: "\
^
In file included from /home/aaron/.rvm/rubies/ruby-2.5.3/include/ruby-2.5.0/ruby/intern.h:24:0,
from /home/aaron/.rvm/rubies/ruby-2.5.3/include/ruby-2.5.0/ruby/ruby.h:2040,
from /home/aaron/.rvm/rubies/ruby-2.5.3/include/ruby-2.5.0/ruby.h:33,
from re2.cc:9:
/home/aaron/.rvm/rubies/ruby-2.5.3/include/ruby-2.5.0/ruby/defines.h:286:44: warning: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wliteral-suffix]
# define EXTERN __pragma(message(__FILE__"("STRINGIZE(__LINE__)"): warning: "\
^
re2.cc: In function ‘VALUE re2_scanner_scan(VALUE)’:
re2.cc:261:37: error: ‘const class re2::RE2::Options’ has no member named ‘utf8’
p->pattern->options().utf8() ? "UTF-8" : "ISO-8859-1"));
^
re2.cc:37:36: note: in definition of macro ‘ENCODED_STR_NEW’
int _enc = rb_enc_find_index(encoding); \
^
re2.cc: In function ‘VALUE re2_matchdata_to_a(VALUE)’:
re2.cc:459:35: error: ‘const class re2::RE2::Options’ has no member named ‘utf8’
p->pattern->options().utf8() ? "UTF-8" : "ISO-8859-1"));
^
re2.cc:37:36: note: in definition of macro ‘ENCODED_STR_NEW’
int _enc = rb_enc_find_index(encoding); \
^
re2.cc: In function ‘VALUE re2_matchdata_nth_match(int, VALUE)’:
re2.cc:483:33: error: ‘const class re2::RE2::Options’ has no member named ‘utf8’
p->pattern->options().utf8() ? "UTF-8" : "ISO-8859-1");
^
re2.cc:37:36: note: in definition of macro ‘ENCODED_STR_NEW’
int _enc = rb_enc_find_index(encoding); \
^
re2.cc: In function ‘VALUE re2_matchdata_inspect(VALUE)’:
re2.cc:614:29: error: ‘const class re2::RE2::Options’ has no member named ‘utf8’
p->pattern->options().utf8() ? "UTF-8" : "ISO-8859-1");
^
re2.cc:37:36: note: in definition of macro ‘ENCODED_STR_NEW’
int _enc = rb_enc_find_index(encoding); \
^
re2.cc: In function ‘VALUE re2_regexp_initialize(int, VALUE*, VALUE)’:
re2.cc:687:19: error: ‘class re2::RE2::Options’ has no member named ‘set_utf8’
re2_options.set_utf8(RTEST(utf8));
^
re2.cc: In function ‘VALUE re2_regexp_inspect(VALUE)’:
re2.cc:770:29: error: ‘const class re2::RE2::Options’ has no member named ‘utf8’
p->pattern->options().utf8() ? "UTF-8" : "ISO-8859-1");
^
re2.cc:37:36: note: in definition of macro ‘ENCODED_STR_NEW’
int _enc = rb_enc_find_index(encoding); \
^
re2.cc: In function ‘VALUE re2_regexp_to_s(VALUE)’:
re2.cc:788:29: error: ‘const class re2::RE2::Options’ has no member named ‘utf8’
p->pattern->options().utf8() ? "UTF-8" : "ISO-8859-1");
^
re2.cc:37:36: note: in definition of macro ‘ENCODED_STR_NEW’
int _enc = rb_enc_find_index(encoding); \
^
re2.cc: In function ‘VALUE re2_regexp_utf8(VALUE)’:
re2.cc:818:42: error: ‘const class re2::RE2::Options’ has no member named ‘utf8’
return BOOL2RUBY(p->pattern->options().utf8());
^
re2.cc:21:23: note: in definition of macro ‘BOOL2RUBY’
#define BOOL2RUBY(v) (v ? Qtrue : Qfalse)
^
re2.cc: In function ‘VALUE re2_regexp_error_arg(VALUE)’:
re2.cc:1015:31: error: ‘const class re2::RE2::Options’ has no member named ‘utf8’
p->pattern->options().utf8() ? "UTF-8" : "ISO-8859-1");
^
re2.cc:37:36: note: in definition of macro ‘ENCODED_STR_NEW’
int _enc = rb_enc_find_index(encoding); \
^
re2.cc: In function ‘VALUE re2_regexp_options(VALUE)’:
re2.cc:1046:39: error: ‘const class re2::RE2::Options’ has no member named ‘utf8’
BOOL2RUBY(p->pattern->options().utf8()));
^
re2.cc:21:23: note: in definition of macro ‘BOOL2RUBY’
#define BOOL2RUBY(v) (v ? Qtrue : Qfalse)
^
re2.cc: In function ‘VALUE re2_regexp_named_capturing_groups(VALUE)’:
re2.cc:1116:33: error: ‘const class re2::RE2::Options’ has no member named ‘utf8’
p->pattern->options().utf8() ? "UTF-8" : "ISO-8859-1"),
^
re2.cc:37:36: note: in definition of macro ‘ENCODED_STR_NEW’
int _enc = rb_enc_find_index(encoding); \
^
re2.cc: In function ‘VALUE re2_Replace(VALUE, VALUE, VALUE, VALUE)’:
re2.cc:1287:31: error: ‘const class re2::RE2::Options’ has no member named ‘utf8’
p->pattern->options().utf8() ? "UTF-8" : "ISO-8859-1");
^
re2.cc:37:36: note: in definition of macro ‘ENCODED_STR_NEW’
int _enc = rb_enc_find_index(encoding); \
^
re2.cc: In function ‘VALUE re2_GlobalReplace(VALUE, VALUE, VALUE, VALUE)’:
re2.cc:1324:31: error: ‘const class re2::RE2::Options’ has no member named ‘utf8’
p->pattern->options().utf8() ? "UTF-8" : "ISO-8859-1");
^
re2.cc:37:36: note: in definition of macro ‘ENCODED_STR_NEW’
int _enc = rb_enc_find_index(encoding); \
^
re2.cc: In function ‘VALUE re2_regexp_utf8(VALUE)’:
re2.cc:819:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
At global scope:
cc1plus: warning: unrecognized command line option "-Wno-self-assign" [enabled by default]
cc1plus: warning: unrecognized command line option "-Wno-constant-logical-operand" [enabled by default]
cc1plus: warning: unrecognized command line option "-Wno-parentheses-equality" [enabled by default]
cc1plus: warning: unrecognized command line option "-Wno-tautological-compare" [enabled by default]
make: *** [re2.o] Error 1
make failed, exit code 2
Gem files will remain installed in /home/aaron/.rvm/gems/ruby-2.5.3/gems/re2-1.1.1 for inspection.
Results logged to /home/aaron/.rvm/gems/ruby-2.5.3/extensions/x86_64-linux/2.5.0/re2-1.1.1/gem_make.out
You have to use 2017-07-01 version of re2 lib for re2 gem 1.1.1

EGlib 2.6.20 does not install (trying to install SCIP)

I am trying to solve an integer linear program using SCIP. The beta version that I require (for exact solving) is given at:
http://scip.zib.de/#exact
As linked there, the source code is at:
http://scip.zib.de/download.php?fname=scip-3.0.0-ex.tgz
I followed the INSTALL file. It requires the installation of EGlib 2.6.20. However, this installation fails during 'make' with the following error:
phani#OptiPlex-9030-AIO ~/EGlib-2.6.20 $ make
make[1]: Entering directory '/home/phani/EGlib-2.6.20'
make[1]: Leaving directory '/home/phani/EGlib-2.6.20'
make[1]: Entering directory '/home/phani/EGlib-2.6.20'
Building include/EGlib.h
Compiling src/eg_bit.c
Compiling src/eg_compare.c
Compiling src/eg_io.c
src/eg_io.c: In function ‘EGioGets’:
src/eg_io.c:618:7: warning: unused variable ‘b’ [-Wunused-variable]
char*b = buf;
^
src/eg_io.c: In function ‘EGioEof’:
src/eg_io.c:648:6: warning: unused variable ‘err’ [-Wunused-variable]
int err;
^
src/eg_io.c: In function ‘EGmvar’:
src/eg_io.c:42:2: warning: second parameter of ‘va_start’ not last named argument [-Wvarargs]
va_start (largs, nind);
^
Compiling src/eg_lpnum.c
Compiling src/eg_net.c
Compiling src/eg_random.c
Compiling src/eg_macros.c
Compiling src/eg_ehash.c
Compiling src/eg_perm_it.c
Compiling src/eg_symtab.c
Compiling src/eg_keytab.c
Compiling src/eg_simula.c
In file included from src/eg_simula.c:25:0:
src/eg_simula.h:227:2: error: unknown type name ‘dbl_EGeHeapCn_t’
dbl_EGeHeapCn_t heap_cn;/**< connector in the heap containing the agent */
^
src/eg_simula.h:240:2: error: unknown type name ‘dbl_EGeHeap_t’
dbl_EGeHeap_t hp; /**< Heap containing events to be processed */
^
src/eg_simula.c: In function ‘EGsimExp’:
src/eg_simula.c:29:30: warning: unused parameter ‘t’ [-Wunused-parameter]
double EGsimExp(const double t, void*const data)
^
src/eg_simula.c: In function ‘EGsimUniform’:
src/eg_simula.c:40:34: warning: unused parameter ‘t’ [-Wunused-parameter]
double EGsimUniform(const double t, void*const data)
^
src/eg_simula.c: In function ‘EGsimNormal’:
src/eg_simula.c:51:33: warning: unused parameter ‘t’ [-Wunused-parameter]
double EGsimNormal(const double t, void*const data)
^
In file included from src/eg_simula.c:25:0:
src/eg_simula.c: In function ‘EGsimNewEvent’:
src/eg_simula.h:277:2: warning: implicit declaration of function ‘dbl_EGeHeapCnInit’ [-Wimplicit-function-declaration]
dbl_EGeHeapCnInit(&(__EGsimA->heap_cn));\
^
src/eg_simula.c:73:2: note: in expansion of macro ‘EGsimSetAgent’
EGsimSetAgent(la,sim->cur_time + gen->gen(sim->cur_time,gen->data));
^
src/eg_simula.c:74:13: error: request for member ‘val’ in something not a structure or union
la->heap_cn.val = la->last_time;
^
src/eg_simula.c:77:12: error: request for member ‘sz’ in something not a structure or union
if(sim->hp.sz == sim->hp.max_sz)
^
src/eg_simula.c:77:26: error: request for member ‘max_sz’ in something not a structure or union
if(sim->hp.sz == sim->hp.max_sz)
^
src/eg_simula.c:78:3: warning: implicit declaration of function ‘dbl_EGeHeapResize’ [-Wimplicit-function-declaration]
dbl_EGeHeapResize(&(sim->hp),sim->hp.sz*2);
^
src/eg_simula.c:78:39: error: request for member ‘sz’ in something not a structure or union
dbl_EGeHeapResize(&(sim->hp),sim->hp.sz*2);
^
src/eg_simula.c:80:9: warning: implicit declaration of function ‘dbl_EGeHeapAdd’ [-Wimplicit-function-declaration]
rval = dbl_EGeHeapAdd(&(sim->hp),&(la->heap_cn));
^
In file included from src/eg_simula.h:47:0,
from src/eg_simula.c:25:
src/eg_simula.c:85:55: error: request for member ‘val’ in something not a structure or union
MESSAGE(EG_SIM_VERBOSE,"new Agent at %lf",la->heap_cn.val);
^
src/eg_macros.h:246:18: note: in definition of macro ‘MESSAGE’
fprintf(stderr,__VA_ARGS__);\
^
In file included from src/eg_simula.h:47:0,
from src/eg_simula.c:25:
src/eg_simula.c: In function ‘EGsim’:
src/eg_simula.c:284:22: warning: implicit declaration of function ‘dbl_EGeHeapGetMin’ [-Wimplicit-function-declaration]
ca = EGcontainerOf(dbl_EGeHeapGetMin(&(sim->hp)), EGsimAgent_t,heap_cn);
^
src/eg_macros.h:134:56: note: in definition of macro ‘EGcontainerOf’
typeof(((__type *)0)->__member) *const __EGcOf_ptr = (__ptr);\
^
src/eg_macros.h:134:55: warning: initialization makes pointer from integer without a cast [-Wint-conversion]
typeof(((__type *)0)->__member) *const __EGcOf_ptr = (__ptr);\
^
src/eg_simula.c:284:8: note: in expansion of macro ‘EGcontainerOf’
ca = EGcontainerOf(dbl_EGeHeapGetMin(&(sim->hp)), EGsimAgent_t,heap_cn);
^
src/eg_simula.c:285:30: error: request for member ‘val’ in something not a structure or union
sim->cur_time = ca->heap_cn.val;
^
src/eg_simula.c:327:17: error: request for member ‘val’ in something not a structure or union
na->heap_cn.val = sim->cur_time + cn->gen(sim->cur_time,cn->data);
^
src/eg_simula.c:328:6: warning: implicit declaration of function ‘dbl_EGeHeapSiftUp’ [-Wimplicit-function-declaration]
dbl_EGeHeapSiftUp(&(sim->hp),&(na->heap_cn));
^
src/eg_simula.c:365:17: error: request for member ‘val’ in something not a structure or union
ca->heap_cn.val = sim->cur_time;
^
src/eg_simula.c:371:17: error: request for member ‘val’ in something not a structure or union
ca->heap_cn.val = sim->cur_time + nn->gen(sim->cur_time,nn->data);
^
src/eg_simula.c:377:17: error: request for member ‘val’ in something not a structure or union
ca->heap_cn.val = DBL_MAX;
^
src/eg_simula.c:381:12: warning: implicit declaration of function ‘dbl_EGeHeapSiftDown’ [-Wimplicit-function-declaration]
rval = dbl_EGeHeapSiftDown(&(sim->hp),&(ca->heap_cn));
^
src/eg_simula.c:388:5: warning: implicit declaration of function ‘dbl_EGeHeapDel’ [-Wimplicit-function-declaration]
dbl_EGeHeapDel(&(sim->hp),&(ca->heap_cn));
^
src/eg_simula.c:429:17: error: request for member ‘val’ in something not a structure or union
ca->heap_cn.val = sim->cur_time;
^
src/eg_simula.c:433:17: error: request for member ‘val’ in something not a structure or union
ca->heap_cn.val = sim->cur_time + nn->gen(sim->cur_time,nn->data);
^
src/eg_simula.c:441:17: error: request for member ‘val’ in something not a structure or union
ca->heap_cn.val = DBL_MAX;
^
Makefile.library:38: recipe for target 'obj/eg_simula.o' failed
make[1]: *** [obj/eg_simula.o] Error 1
make[1]: Leaving directory '/home/phani/EGlib-2.6.20'
Makefile:23: recipe for target 'library' failed
make: *** [library] Error 2
After some searching, I have noticed that dbl_EGeHeap_t is not defined in the source code, and that seems to be throwing errors.
On searching online, it seems to be the case that it was defined in EGlib 2.6.15 (https://conexo.dii.uchile.cl/SVN/EGlib/EGlib2/tags/EGlib-2.6.15/TEmplate/dbl_eg_eheap.h), but the corresponding file in 2.6.20 does not have the definition.
Has anybody else experienced this? I badly need a solution to this.

Really impossible to make package with Theos

I really don't manage to "make package" with Theos for a Tweak made by me, so I copied the "unlockchanger" example on the web (here https://github.com/codyd51/Theos-Examples/tree/master/unlockchanger ) and tried to do "make package". I get these errors:
iPhone-di-Gabriele:/var/mobile/unlockchanger root# make package
/var/mobile/unlockchanger/theos/makefiles/targets/Darwin-arm/iphone.mk:43: Targeting iOS 4.0 and higher is not supported with iphone-gcc. Forcing clang.
/var/mobile/unlockchanger/theos/makefiles/targets/Darwin-arm/iphone.mk:53: Deploying to iOS 3.0 while building for 6.0 will generate armv7-only binaries.
Making all for tweak UnlockChanger...
Preprocessing Tweak.xm...
Compiling Tweak.xm...
In file included from Tweak.xm:3:
/var/mobile/unlockchanger/theos/include/substrate.h:57:20: error: unknown type name 'pid_t'
bool MSHookProcess(pid_t pid, const char *library);
^
/var/mobile/unlockchanger/theos/include/substrate.h:69:1: error: unknown type name 'IMP'
IMP MSHookMessage(Class _class, SEL sel, IMP imp, const char *prefix _default(NULL));
^
/var/mobile/unlockchanger/theos/include/substrate.h:69:42: error: unknown type name 'IMP'
IMP MSHookMessage(Class _class, SEL sel, IMP imp, const char *prefix _default(NULL));
^
/var/mobile/unlockchanger/theos/include/substrate.h:69:79: error: use of undeclared identifier 'NULL'
IMP MSHookMessage(Class _class, SEL sel, IMP imp, const char *prefix _default(NULL));
^
/var/mobile/unlockchanger/theos/include/substrate.h:48:27: note: expanded from macro '_default'
#define _default(value) = value
^
/var/mobile/unlockchanger/theos/include/substrate.h:71:45: error: unknown type name 'IMP'
void MSHookMessageEx(Class _class, SEL sel, IMP imp, IMP *result);
^
/var/mobile/unlockchanger/theos/include/substrate.h:71:54: error: unknown type name 'IMP'
void MSHookMessageEx(Class _class, SEL sel, IMP imp, IMP *result);
^
/var/mobile/unlockchanger/theos/include/substrate.h:125:92: error: use of undeclared identifier 'NULL'
static inline Type_ *MSHookMessage(Class _class, SEL sel, Type_ *imp, const char *prefix = NULL) {
^
/var/mobile/unlockchanger/theos/include/substrate.h:126:82: error: unknown type name 'IMP'
return reinterpret_cast<Type_ *>(MSHookMessage(_class, sel, reinterpret_cast<IMP>(imp), prefix));
^
/var/mobile/unlockchanger/theos/include/substrate.h:132:58: error: unknown type name 'IMP'
return MSHookMessageEx(_class, sel, reinterpret_cast<IMP>(imp), reinterpret_cast<IMP *>(result));
^
/var/mobile/unlockchanger/theos/include/substrate.h:132:86: error: unknown type name 'IMP'
return MSHookMessageEx(_class, sel, reinterpret_cast<IMP>(imp), reinterpret_cast<IMP *>(result));
^
/var/mobile/unlockchanger/theos/include/substrate.h:137:5: error: use of undeclared identifier 'Ivar'
Ivar ivar(class_getInstanceVariable(object_getClass(self), name));
^
/var/mobile/unlockchanger/theos/include/substrate.h:138:19: error: use of undeclared identifier 'ivar'
void *pointer(ivar == NULL ? NULL : reinterpret_cast<char *>(self) + ivar_getOffset(ivar));
^
/var/mobile/unlockchanger/theos/include/substrate.h:138:27: error: use of undeclared identifier 'NULL'
void *pointer(ivar == NULL ? NULL : reinterpret_cast<char *>(self) + ivar_getOffset(ivar));
^
/var/mobile/unlockchanger/theos/include/substrate.h:138:34: error: use of undeclared identifier 'NULL'
void *pointer(ivar == NULL ? NULL : reinterpret_cast<char *>(self) + ivar_getOffset(ivar));
^
/var/mobile/unlockchanger/theos/include/substrate.h:138:89: error: use of undeclared identifier 'ivar'
void *pointer(ivar == NULL ? NULL : reinterpret_cast<char *>(self) + ivar_getOffset(ivar));
^
/var/mobile/unlockchanger/theos/include/substrate.h:294:71: error: use of undeclared identifier 'NULL'
return MSHookFunction(symbol, replace, reinterpret_cast<Type_ **>(NULL));
^
/var/mobile/unlockchanger/theos/include/substrate.h:298:85: error: use of undeclared identifier 'NULL'
static inline void MSHookSymbol(Type_ *&value, const char *name, MSImageRef image = NULL) {
^
/var/mobile/unlockchanger/theos/include/substrate.h:303:86: error: use of undeclared identifier 'NULL'
static inline void MSHookFunction(const char *name, Type_ *replace, Type_ **result = NULL) {
^
/var/mobile/unlockchanger/theos/include/substrate.h:310:104: error: use of undeclared identifier 'NULL'
static inline void MSHookFunction(MSImageRef image, const char *name, Type_ *replace, Type_ **result = NULL) {
^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
make[2]: *** [obj/Tweak.xm.7838be1a.o] Error 1
make[1]: *** [internal-library-all_] Error 2
make: *** [UnlockChanger.all.tweak.variables] Error 2
Some detail:
I'm on iOS8.1, with an iPhone 5. Everything installed from Cydia
..and on Windows 8.1 with WinSCP and PuTTY
I've installed Theos, Perl.. everything (Also "BigBoss recommended packages")
I had to install also LLVM+Clang because make didn't find a "clang++" command
I've tried to dump classes, instead of taking them from the web
I've updated substrate.h in /include/ and libsubstrate.dylib in /lib/
If I try to "make package" on my tweak for SpringBoard, where in Tweak.xm I do:
#import <SpringBoard/Springboard.h>
I get these errors:
iPhone-di-Gabriele:/var/mobile/mytweak root# make package
/var/mobile/mytweak/theos/makefiles/targets/Darwin-arm/iphone.mk:43: Targeting iOS 4.0 and higher is not supported with iphone-gcc. Forcing clang.
/var/mobile/mytweak/theos/makefiles/targets/Darwin-arm/iphone.mk:53: Deploying to iOS 3.0 while building for 6.0 will generate armv7-only binaries.
Making all for tweak mytweak...
Preprocessing Tweak.xm...
Compiling Tweak.xm...
In file included from Tweak.xm:1:
/var/mobile/mytweak/theos/include/SpringBoard.h:33:19: error: field has incomplete type 'struct CGSize'
struct CGSize size;
^
/var/mobile/mytweak/theos/include/SpringBoard.h:33:12: note: forward declaration of 'CGSize'
struct CGSize size;
^
/var/mobile/mytweak/theos/include/SpringBoard.h:229:34: error: cannot find protocol declaration for 'NSObject'
#protocol APSConnectionDelegate <NSObject>
^
/var/mobile/mytweak/theos/include/SpringBoard.h:233:37: error: cannot find protocol declaration for 'NSObject'
#protocol AVExternalDeviceDelegate <NSObject>
^
/var/mobile/mytweak/theos/include/SpringBoard.h:236:27: error: cannot find protocol declaration for
'BBSectionIdentity'
#protocol BBDataProvider <BBSectionIdentity>
^
/var/mobile/mytweak/theos/include/SpringBoard.h:240:31: error: cannot find protocol declaration for 'NSObject'
#protocol BBObserverDelegate <NSObject>
^
/var/mobile/mytweak/theos/include/SpringBoard.h:246:30: error: cannot find protocol declaration for 'NSObject'
#protocol BBSectionIdentity <NSObject>
^
/var/mobile/mytweak/theos/include/SpringBoard.h:250:41: error: cannot find protocol declaration for 'NSObject'
#protocol BSSettingDescriptionProvider <NSObject>
^
/var/mobile/mytweak/theos/include/SpringBoard.h:255:34: error: cannot find protocol declaration for 'NSObject'
#protocol BSTransactionObserver <NSObject>
^
/var/mobile/mytweak/theos/include/SpringBoard.h:258:31: error: cannot find protocol declaration for 'NSObject'
#protocol BSWatchdogDelegate <NSObject>
^
/var/mobile/mytweak/theos/include/SpringBoard.h:261:38: error: cannot find protocol declaration for 'NSObject'
#protocol CLLocationManagerDelegate <NSObject>
^
/var/mobile/mytweak/theos/include/SpringBoard.h:264:41: error: cannot find protocol declaration for 'NSObject'
#protocol FBApplicationLibraryObserver <NSObject>
^
/var/mobile/mytweak/theos/include/SpringBoard.h:267:45: error: cannot find protocol declaration for 'NSObject'
#protocol FBApplicationPlaceholderObserver <NSObject>
^
/var/mobile/mytweak/theos/include/SpringBoard.h:270:41: error: cannot find protocol declaration for
'FBProcessObserver'
#protocol FBApplicationProcessObserver <FBProcessObserver>
^
/var/mobile/mytweak/theos/include/SpringBoard.h:276:37: error: cannot find protocol declaration for 'NSObject'
#protocol FBDisplayManagerObserver <NSObject>
^
/var/mobile/mytweak/theos/include/SpringBoard.h:279:37: error: cannot find protocol declaration for 'NSObject'
#protocol FBProcessManagerObserver <NSObject>
^
/var/mobile/mytweak/theos/include/SpringBoard.h:284:30: error: cannot find protocol declaration for 'NSObject'
#protocol FBProcessObserver <NSObject>
^
/var/mobile/mytweak/theos/include/SpringBoard.h:287:35: error: cannot find protocol declaration for 'NSObject'
#protocol FBSceneManagerDelegate <NSObject>
^
/var/mobile/mytweak/theos/include/SpringBoard.h:293:35: error: cannot find protocol declaration for 'NSObject'
#protocol FBSceneManagerObserver <NSObject>
^
/var/mobile/mytweak/theos/include/SpringBoard.h:302:46: error: cannot find protocol declaration for 'NSObject'
#protocol FBSynchronizedTransactionDelegate <NSObject>
^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
make[2]: *** [obj/Tweak.xm.0ad6af3a.o] Error 1
make[1]: *** [internal-library-all_] Error 2
make: *** [mytweak.all.tweak.variables] Error 2
I really don't know where is the mistake, I really tried everything, also "make -i" but it doesn't create the dylib file!
Also using my dumped headers, for SpringBoard, I get:
iPhone-di-Gabriele:/var/mobile/test root# make package
/var/mobile/test/theos/makefiles/targets/Darwin-arm/iphone.mk:43: Targeting iOS 4.0 and higher is not supported with iphone-gcc. Forcing clang.
/var/mobile/test/theos/makefiles/targets/Darwin-arm/iphone.mk:53: Deploying to iOS 3.0 while building for 6.0 will generate armv7-only binaries.
Making all for tweak test...
Preprocessing Tweak.xm...
Compiling Tweak.xm...
In file included from Tweak.xm:1:
In file included from /var/mobile/test/theos/include/SpringBoard/SpringBoard.h:9:
In file included from /var/mobile/test/theos/include/SpringBoard/SBBannerContainerViewController.h:8:
In file included from /var/mobile/test/theos/include/SpringBoard/UIViewControllerAnimatedTransitioning.h:8:
In file included from /var/mobile/test/theos/include/SpringBoard/NSObject.h:8:
/var/mobile/test/theos/include/SpringBoard/SpringBoard-Structs.h:26:2: error:
unknown type name 'BOOL'
BOOL _field1;
^
/var/mobile/test/theos/include/SpringBoard/SpringBoard-Structs.h:27:2: error:
unknown type name 'BOOL'
BOOL _field2;
^
/var/mobile/test/theos/include/SpringBoard/SpringBoard-Structs.h:28:2: error:
unknown type name 'BOOL'
BOOL _field3;
^
/var/mobile/test/theos/include/SpringBoard/SpringBoard-Structs.h:29:2: error:
unknown type name 'BOOL'
BOOL _field4;
^
/var/mobile/test/theos/include/SpringBoard/SpringBoard-Structs.h:30:2: error:
unknown type name 'BOOL'
BOOL _field5;
^
/var/mobile/test/theos/include/SpringBoard/SpringBoard-Structs.h:66:2: error:
unknown type name 'BOOL'
BOOL itemIsEnabled[25];
^
/var/mobile/test/theos/include/SpringBoard/SpringBoard-Structs.h:67:2: error:
unknown type name 'BOOL'
BOOL timeString[64];
^
/var/mobile/test/theos/include/SpringBoard/SpringBoard-Structs.h:70:2: error:
unknown type name 'BOOL'
BOOL serviceString[100];
^
/var/mobile/test/theos/include/SpringBoard/SpringBoard-Structs.h:71:2: error:
unknown type name 'BOOL'
BOOL serviceCrossfadeString[100];
^
/var/mobile/test/theos/include/SpringBoard/SpringBoard-Structs.h:72:2: error:
unknown type name 'BOOL'
BOOL serviceImages[2][100];
^
/var/mobile/test/theos/include/SpringBoard/SpringBoard-Structs.h:73:2: error:
unknown type name 'BOOL'
BOOL operatorDirectory[1024];
^
/var/mobile/test/theos/include/SpringBoard/SpringBoard-Structs.h:80:2: error:
unknown type name 'BOOL'
BOOL batteryDetailString[150];
^
/var/mobile/test/theos/include/SpringBoard/SpringBoard-Structs.h:86:2: error:
unknown type name 'BOOL'
BOOL activityDisplayId[256];
^
/var/mobile/test/theos/include/SpringBoard/SpringBoard-Structs.h:102:2: error:
unknown type name 'BOOL'
BOOL _field3[4088];
^
/var/mobile/test/theos/include/SpringBoard/SpringBoard-Structs.h:116:2: error:
unknown type name 'BOOL'
BOOL __opaque[40];
^
/var/mobile/test/theos/include/SpringBoard/SpringBoard-Structs.h:162:2: error:
unknown type name 'BOOL'
BOOL valid;
^
/var/mobile/test/theos/include/SpringBoard/SpringBoard-Structs.h:179:2: error:
unknown type name 'BOOL'
BOOL isValid;
^
In file included from Tweak.xm:1:
In file included from /var/mobile/test/theos/include/SpringBoard/SpringBoard.h:9:
In file included from /var/mobile/test/theos/include/SpringBoard/SBBannerContainerViewController.h:8:
In file included from /var/mobile/test/theos/include/SpringBoard/UIViewControllerAnimatedTransitioning.h:8:
/var/mobile/test/theos/include/SpringBoard/NSObject.h:10:1: error: redefinition
of 'NSString' as different kind of symbol
#class NSString;
^
/var/mobile/test/theos/include/SpringBoard/SpringBoard-Structs.h:135:3: note:
previous definition is here
} NSString;
^
In file included from Tweak.xm:1:
In file included from /var/mobile/test/theos/include/SpringBoard/SpringBoard.h:9:
In file included from /var/mobile/test/theos/include/SpringBoard/SBBannerContainerViewController.h:8:
In file included from /var/mobile/test/theos/include/SpringBoard/UIViewControllerAnimatedTransitioning.h:8:
/var/mobile/test/theos/include/SpringBoard/NSObject.h:24:3: error: expected a
type
-(BOOL)respondsToSelector:(SEL)selector;
^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
make[2]: *** [obj/Tweak.xm.56f06e0e.o] Error 1
make[1]: *** [internal-library-all_] Error 2
make: *** [test.all.tweak.variables] Error 2
Thank you to everyone who wants to help me.
If you get these errors, make sure you have not extracted, or copied SDK folder (iPhoneOSX.X.sdk) on Windows, because in this way you will lose every (symbolic) link between sdk's files. So manage and organize your sdk folder on Mac OS, iOS or Linux (but I didn't tried on this one).
Good Luck!

Resources