吾安装系统的时候,一切顺利。后来……可能是把用户名改了一下?原来好好的系统,彻底不能用了——编译都无法通过。
好不容易把ffmpeg、opencv编译过,结果链接又出了问题。
./libgh2kalman.so:对‘cv::randn(cv::_InputOutputArray const&, cv::_InputArray const&, cv::_InputArray const&)’未定义的引用
./libgh2kalman.so:对‘cv::String::deallocate()’未定义的引用
./libgh2kalman.so:对‘cv::error(int, cv::String const&, char const*, char const*, int)’未定义的引用
./libgh2kalman.so:对‘cv::String::allocate(unsigned long)’未定义的引用
./libgh2kalman.so:对‘cv::setIdentity(cv::_InputOutputArray const&, cv::Scalar_ const&)’未定义的引用
collect2: error: ld returned 1 exit status
Makefile:42: recipe for target 'gh_main' failed
make: *** [gh_main] Error 1
反复检查,都没有发现错误。错误顺序如下如下:
LIBS :=-L/usr/local/deepstream/ -lgstnvdsmeta \
-L. -lfastwrite \
-L. -lgh2secustream -lgh2jpegnpp -lgh2mqtt -lgh2mysql -lgh2nvidia -lgh2trace -lgh2kalman \
-L ../gh-kit -lgh2kit \
-L /usr/lib/ -ljpeg -llmdb \
-L /usr/lib/x86_64-linux-gnu -lgfapi -lgstapp-1.0 -lmysqlclient \
-L /usr/local/cuda/lib64/ -lcudart -lnppisu -lnppicom -lnppig -lnppc \
-L /usr/local/lib -lpaho-mqtt3a -lpaho-mqtt3c -ljson-c \
-L /usr/local/lib -lopencv_core -lopencv_imgcodecs -lopencv_imgproc -lopencv_highgui \
后来把顺序调整了,顺利编过。正确的顺序如下:
LIBS :=-L/usr/local/deepstream/ -lgstnvdsmeta \
-L. -lfastwrite \
-L /usr/local/lib -lopencv_core -lopencv_imgcodecs -lopencv_imgproc -lopencv_highgui \
-L. -lgh2secustream -lgh2jpegnpp -lgh2mqtt -lgh2mysql -lgh2nvidia -lgh2trace -lgh2kalman \
-L ../gh-kit -lgh2kit \
-L /usr/lib/ -ljpeg -llmdb \
-L /usr/lib/x86_64-linux-gnu -lgfapi -lgstapp-1.0 -lmysqlclient \
-L /usr/local/cuda/lib64/ -lcudart -lnppisu -lnppicom -lnppig -lnppc \
-L /usr/local/lib -lpaho-mqtt3a -lpaho-mqtt3c -ljson-c