rhiestan / Regard3D

A open source structure-from-motion program based on OpenMVG.
241 stars 43 forks source link

incompatible minilog #38

Open majioa opened 4 years ago

majioa commented 4 years ago

It seems that minilog isn't compatible with the Regard3D

/usr/src/RPM/BUILD/regard3d-1.0.0/src/gui/Regard3DConsoleOutputFrame.cpp:26:1: error: expected class-name before '{' token
   26 | {
      | ^
/usr/src/RPM/BUILD/regard3d-1.0.0/src/gui/Regard3DConsoleOutputFrame.cpp: In constructor 'minilog_mutex_impl_wx::minilog_mutex_impl_wx()':
/usr/src/RPM/BUILD/regard3d-1.0.0/src/gui/Regard3DConsoleOutputFrame.cpp:28:27: error: class 'minilog_mutex_impl_wx' does not have any field named 'minilog_mutex_interface'
   28 |  minilog_mutex_impl_wx(): minilog_mutex_interface()
      |                           ^~~~~~~~~~~~~~~~~~~~~~~
/usr/src/RPM/BUILD/regard3d-1.0.0/src/gui/Regard3DConsoleOutputFrame.cpp: In constructor 'Regard3DConsoleOutputFrame::Regard3DConsoleOutputFrame(wxWindow*)':
/usr/src/RPM/BUILD/regard3d-1.0.0/src/gui/Regard3DConsoleOutputFrame.cpp:203:2: error: 'minilog' has not been declared
  203 |  minilog::inst().set_locker(pminilog_mutex_impl_wx_);
      |  ^~~~~~~
/usr/src/RPM/BUILD/regard3d-1.0.0/src/gui/Regard3DConsoleOutputFrame.cpp: In destructor 'virtual Regard3DConsoleOutputFrame::~Regard3DConsoleOutputFrame()':
/usr/src/RPM/BUILD/regard3d-1.0.0/src/gui/Regard3DConsoleOutputFrame.cpp:219:2: error: 'minilog' has not been declared
  219 |  minilog::inst().set_locker(NULL);
      |  ^~~~~~~
/usr/src/RPM/BUILD/regard3d-1.0.0/src/gui/Regard3DConsoleOutputFrame.cpp: In member function 'virtual void Regard3DConsoleOutputFrame::OnTimer(wxTimerEvent&)':
/usr/src/RPM/BUILD/regard3d-1.0.0/src/gui/Regard3DConsoleOutputFrame.cpp:241:20: error: 'minilog' has not been declared
  241 |  std::string str = minilog::inst().getbuf();
      |                    ^~~~~~~
make[2]: *** [CMakeFiles/Regard3D.dir/build.make:329: CMakeFiles/Regard3D.dir/gui/Regard3DConsoleOutputFrame.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:309: CMakeFiles/Regard3D.dir/all] Error 2

How to fix?

rhiestan commented 3 years ago

It seems you have a incompatible minilog in your include path. Please use the one from my OpenMVG archive (src/third_party/minilog).

majioa commented 3 years ago

So where is the external source for that minilog package?

rhiestan commented 3 years ago

You can download the OpenMVG-sources with some patches for Regard3D from here: https://sourceforge.net/projects/regard3d/files/Regard3D/1.0.0/openMVG-1.4_r3d.7z It includes also the minilog.

majioa commented 3 years ago

thank, but I've meant to where is the minilog sources apart?

rhiestan commented 3 years ago

Download and extract the 7z file openMVG-1.4_r3d.7z. You will find minilog.cpp and minilog.h in the directory openMVG-1.4_r3d\src\third_party\minilog

majioa commented 3 years ago

@rhiestanThe path openMVG-1.4_r3d\src\third_party\minilog shows what minilog is the third party app, so my quiestion is where is the original source for the lib?