2
當編譯一些代碼,我想哪個庫的版本是在編譯時編譯代碼和「保存」庫版本
用在編譯的程序「嵌入」編譯
g++ txtbin.cpp -o txtbin `pkg-config opencv --cflags --libs`
庫版本
pkg-config --modversion opencv
如何在程序中「嵌入」圖書館版本?用戶運行該程序每次我想輸出的opencv
當編譯一些代碼,我想哪個庫的版本是在編譯時編譯代碼和「保存」庫版本
g++ txtbin.cpp -o txtbin `pkg-config opencv --cflags --libs`
pkg-config --modversion opencv
如何在程序中「嵌入」圖書館版本?用戶運行該程序每次我想輸出的opencv
一種方法庫版本要做到這一點是使用-D
編譯器選項,這相當於一個#define
:
g++ txtbin.cpp -o txtbin `pkg-config opencv --cflags --libs` -DOPENCV_VERSION=`pkg-config --modversion opencv`
您可能需要將版本命令包含到""
中。
然後在你的代碼只是:
std::cout << "OpenCV Version Used: " << OPENCV_VERSION << std::endl;
你可能想換行或其他一些空格字符,以及一些描述性文字。 –
編譯時,是不是可以將邏輯添加到代碼中,而不是作爲額外的參數? – clarkk
@clarkk:如果OpenCV提供了這樣的功能,是的。可以? (這與共享庫工作的額外好處,所以你可能會想要這樣做。) –