Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

The install.sh may exist errors #49

Open
AshleyYang25 opened this issue Aug 23, 2018 · 2 comments
Open

The install.sh may exist errors #49

AshleyYang25 opened this issue Aug 23, 2018 · 2 comments

Comments

@AshleyYang25
Copy link

I followed the install tutorial, but the caffe can't be installed on my ubuntu. Could you please check the install script of caffe and lib for c++, and give more details about it.

@AshleyYang25
Copy link
Author

The install.sh given by https://github.com/anhttran/3dmm_cnn/wiki/Installation-Script is only for the first testBatchModel.py. I suggested that the library requirements (Dlib Python and C++ library,
OpenCV Python and C++ library, Caffe (version 1.0.0-rc3 or above required), Numpy, Python2.7) should be installed by yourself.

  • I installed the OpenCV3, when running testModel_PoseExpr.py i encountered the error
> Pose & expression estimation
> cannot load TestVisualization 
  • I found that the fellowing script was not executed
    Make build directory (temporary). Make & install to bin folder
	mkdir build
	cd build
	cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=../bin ..
	make
	make install

This code should generate TestVisualization in bin folder

  • When make, the error occured:
/3dmm_cnn/modules/PoseExpr/src/BaselFaceEstimator.cpp: In member function ‘void BaselFaceEstimator::estimatePose3D(cv::Mat, cv::Mat, cv::Mat, cv::Mat&, cv::Mat&)’:
   /3dmm_cnn/modules/PoseExpr/src/BaselFaceEstimator.cpp:207:2: error: ‘Rodrigues’ is not a member of ‘cv’
    cv::Rodrigues(rMatP, rVec);**
     ^

Refered to #32 , it's the result of opencv3. So I changed the codes mentioned in CMakeLists.txt line 11 to line 19
In related cpp files, added

#include "opencv2/calib3d.hpp"
#include "opencv/cv.h"
  • make again, the error occured when build main.cpp:
/usr/local/include/dlib/gui_core/gui_core_kernel_2.h:11:2: error: #error "DLIB_NO_GUI_SUPPORT is defined so you can't use the GUI code. Turn DLIB_NO_GUI_SUPPORT off if you want to use it."
#error "DLIB_NO_GUI_SUPPORT is defined so you can't use the GUI code.
^
/usr/local/include/dlib/gui_core/gui_core_kernel_22.h:12:2: error: #error "Also make sure you have libx11-dev installed on your system"
#error "Also make sure you have libx11-dev installed on your system"

Since I install Dlib according to http://dlib.net/compile.html, I compiled the Dlib to shared objects again.
Refered to https://stackoverflow.com/questions/33996361/create-a-shared-library-for-dlib.

-After complied the Dlib, there isn't libdlib.so file in the dlib installed path, but in /usr/lib exist the libdlib.so.
Modified the CMakeLists.txtline 5 and 6 as follow

set (DLIB_INCLUDE_DIR "/home/aba/dlib-19.15")
set (DLIB_LIB_DIR  "/usr/lib")

and add following lines before line 24

	INCLUDE_DIRECTORIES("/usr/local/include")
	INCLUDE_DIRECTORIES("/usr/local/include/opencv2")	
	INCLUDE_DIRECTORIES("/usr/local/include/opencv")

Addinclude_directories(/usr/lib)to the 3dmm_cnn/modules/PoseExpr/CMakeLists.txt before line4.

  • After cmake (delete build directory) , when make new error occured:
/usr/bin/ld: cannot find -lhdf5
collect2: error: ld returned 1 exit status
config/CMakeFiles/TestVisualization.dir/build.make:111: recipe for target 'bin/TestVisualization' failed
make[2]: *** [bin/TestVisualization] Error 1
CMakeFiles/Makefile2:201: recipe for target 'config/CMakeFiles/TestVisualization.dir/all' failed
make[1]: *** [config/CMakeFiles/TestVisualization.dir/all] Error 2
Makefile:129: recipe for target 'all' failed
make: *** [all] Error 2

Then run

cd /usr/lib/x86_64-linux-gnu
sudo ln -s libhdf5_serial.so.10.1.0 libhdf5.so
sudo ln -s libhdf5_serial_hl.so.10.0.2 libhdf5_hl.so
sudo ldconfig
  • cmake agian, when make, error:
    nvcc fatal : redefinition of argument 'std'

According to similar error, I managed to compile and install by removing OPTIONS -std=c++11 such as add_definitions(-std=c++11). But still some thing wrong.
Finally I add OPTIONS -std= c++11, everything goes smoothly. However I don't know the reason.

@fancy5858
Copy link

I also had many problems with make & install. Could you please share the generated TestVisualization so that I can use it to run teatMofel_PoseExpr.py .Thanks a lot.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants