linux下安裝protobuf及cmake編譯


一.protobuf 安裝

protobuf版本:2.6.1

下載地址:https://github.com/google/protobuf/archive/v2.6.1.zip

解壓之后進入目錄

修改autogen.sh

echo "Google Test not present.  Fetching gtest-1.5.0 from the web..."
curl http://googletest.googlecode.com/files/gtest-1.5.0.tar.bz2 | tar jx
mv gtest-1.5.0 gtest

 將autogen.sh內的上述內容修改為

wget https://github.com/google/googletest/archive/release-1.5.0.tar.gz
tar xzvf release-1.5.0.tar.gz
mv googletest-release-1.5.0 gtest

 然后執行autogen.sh

./autogen.sh

目錄中就會生成出.configure文件

接着運行

./configure
make
make check
make install

 設置環境變量

sudo vi /etc/profile
export PATH=$PATH:/usr/local/bin
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
cd ~
vi .profile
export PATH=$PATH:/usr/local/bin
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig

 配置動態鏈接庫路徑

sudo vi /etc/ld.so.conf
include /usr/local/lib
 sudo ldconfig

二.編寫CMakeLists

cmake_minimum_required (VERSION 2.8)

project (Demo1)
SET(SRC_LIST test1.cpp)
# Find required protobuf package
find_package(Protobuf REQUIRED)
if(PROTOBUF_FOUND)
   message(STATUS "protobuf library found")
else()
    message(FATAL_ERROR "protobuf library is needed but cant be found")
endif()
include_directories(${PROTOBUF_INCLUDE_DIRS})
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR})
PROTOBUF_GENERATE_CPP(PROTO_SRCS PROTO_HDRS test1.proto)

ADD_EXECUTABLE(Demo1 ${SRC_LIST} ${PROTO_SRCS} ${PROTO_HDRS})

target_link_libraries(Demo1 ${PROTOBUF_LIBRARIES})

#add_executable(Demo test1.cpp)

 

 

                                                                                                                 如果你覺得對你有用請付款


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM