1. 程式人生 > >OpenGP-master無法在win10+VS2013下生成OpenGP.lib

OpenGP-master無法在win10+VS2013下生成OpenGP.lib

問題描述:win10下,OpenGP-master用cmake生成工程(注意把 headeronly 選項,取消勾選)之後,用VS2013開啟,(1)提示已經包含OpenGP專案,(2)專案生成成功,但沒有生成OpenGP.lib

解決:

    step 1,在CMakeList.txt的末尾新增:

add_library(OpenGP1 STATIC ${SOURCES} ${HEADERS})
target_link_libraries(OpenGP1 ${LIBRARIES_})


#--- "make install" (always install source as well for headeronly support)
install(TARGETS OpenGP1 DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/)

#--- It's a C++ library
set_target_properties(OpenGP1 PROPERTIES LINKER_LANGUAGE CXX)
#--- Set the library version
set_target_properties(OpenGP1 PROPERTIES VERSION 1.0)

    step 2,用VS2013開啟工程後,不再有提示(1),會多一個OpenGP1專案,右鍵生成,會出現:

error2872 "Point":未明確的字元

雙擊錯誤開啟那個.cpp檔案,檢視定義,使用了namespace,還報錯,原因目前不知道。這種錯誤是一般與VS關鍵字衝突,把該變數名換成其他的,並修改其他使用該變數的位置。

重新生成,即可得到OpenGP1.lib,更名為OpenGP.lib即可,該工程的其他專案,一些example專案會用到這個。