geohot / eda-3

eda-3 from many years ago

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

compile errors

pwntester opened this issue · comments

What version of v8 are you using? I cannot get core.cc to compile properly:

_  eda-3 git:(master) _ make
Scanning dependencies of target edadb
[ 11%] Building CXX object CMakeFiles/edadb.dir/cores/core.cc.o
/Users/alvaro/CTFs/tools/eda-3/cores/core.cc:99:1: warning: control may reach end of non-void function [-Wreturn-type]
}
^
/Users/alvaro/CTFs/tools/eda-3/cores/core.cc:117:42: warning: 'New' is deprecated [-Wdeprecated-declarations]
  Persistent<Context> context = Context::New(NULL, global);
                                         ^
/usr/local/include/v8.h:4849:44: note: 'New' has been explicitly marked deprecated here
  V8_DEPRECATED(static Persistent<Context> New(
                                           ^
/usr/local/include/v8.h:88:35: note: expanded from macro 'V8_DEPRECATED'
#define V8_DEPRECATED(declarator) declarator __attribute__ ((deprecated))
                                  ^
/Users/alvaro/CTFs/tools/eda-3/cores/core.cc:117:33: warning: C++98 requires an accessible copy constructor for class 'v8::Persistent<v8::Context>' when binding a reference to a temporary; was private [-Wbind-to-temporary-copy]
  Persistent<Context> context = Context::New(NULL, global);
                                ^
/usr/local/include/v8.h:750:13: note: declared private here
  V8_INLINE(Persistent(const Persistent& that)) : val_(that.val_) {}
            ^
/usr/local/include/v8.h:80:69: note: expanded from macro 'V8_INLINE'
#define V8_INLINE(declarator) inline __attribute__((always_inline)) declarator
                                                                    ^
/Users/alvaro/CTFs/tools/eda-3/cores/core.cc:117:33: error: calling a private constructor of class 'v8::Persistent<v8::Context>'
  Persistent<Context> context = Context::New(NULL, global);
                                ^
/usr/local/include/v8.h:750:13: note: declared private here
  V8_INLINE(Persistent(const Persistent& that)) : val_(that.val_) {}
            ^
/usr/local/include/v8.h:80:69: note: expanded from macro 'V8_INLINE'
#define V8_INLINE(declarator) inline __attribute__((always_inline)) declarator
                                                                    ^
/Users/alvaro/CTFs/tools/eda-3/cores/core.cc:118:18: error: no matching constructor for initialization of 'Context::Scope'
  Context::Scope context_scope(context);  // why never ref?
                 ^             ~~~~~~~
/usr/local/include/v8.h:4964:9: note: candidate constructor (the implicit copy constructor) not viable: no known conversion from 'Persistent<v8::Context>' to 'const v8::Context::Scope' for 1st argument
  class Scope {
        ^
/usr/local/include/v8.h:4966:24: note: candidate constructor not viable: no known conversion from 'Persistent<v8::Context>' to 'Handle<v8::Context>' for 1st argument
    explicit V8_INLINE(Scope(Handle<Context> context)) : context_(context) {
                       ^
/usr/local/include/v8.h:80:69: note: expanded from macro 'V8_INLINE'
#define V8_INLINE(declarator) inline __attribute__((always_inline)) declarator
                                                                    ^
/usr/local/include/v8.h:4970:15: note: candidate constructor not viable: requires 2 arguments, but 1 was provided
    V8_INLINE(Scope(Isolate* isolate, Persistent<Context>& context)) // NOLINT
              ^
/usr/local/include/v8.h:80:69: note: expanded from macro 'V8_INLINE'
#define V8_INLINE(declarator) inline __attribute__((always_inline)) declarator
                                                                    ^
3 warnings and 2 errors generated.
make[2]: *** [CMakeFiles/edadb.dir/cores/core.cc.o] Error 1
make[1]: *** [CMakeFiles/edadb.dir/all] Error 2
make: *** [all] Error 2

Thanks

3.17 seems to work

This project is super deprecated and I wouldn't expect anything even if you make it build. Stuff is (slowly) making it's way from here into QIRA, check out static2 if you haven't.

I was looking into static2 and ended up here :)