Pylon SDK Linux 动态库的编译

Pylon SDK Linux

在Linux VSCode 开发 Pylon 应用

Pylon手册上建议在Makefile文件中加入

PYLON_ROOT ?= /opt/pylon6
CPPFLAGS += $(shell $(PYLON_ROOT)/bin/pylon-config --cflags)
LDFLAGS += $(shell $(PYLON_ROOT)/bin/pylon-config --libs-rpath)
LDLIBS += $(shell $(PYLON_ROOT)/bin/pylon-config --libs)

实测发现仍然提示
undefined reference to ******

解决办法:
在makefile 中加上 -L/opt/pylon/lib -lpylonbase
/opt/pylon 是Pylon viwer安装位置
-l表示动态库(.so文件)
pylonbase 是 /opt/pylon/lib 下 libpylonbase.so文件

使用不同不同库函数或类时需要添加不同的 ***.so文件,需要加入以下的
libpylonbase.so
lilbGCBase_gcc_v3_1_Basler_pylon.so
libGenApi_gcc_v3_1_Basler_pylon.so
libpylonutility.so

如:
Main: Main.cpp
g++ -g -o Main Main.cpp -L/opt/pylon/lib -lpylonbase -L/opt/pylon/lib
-lGCBase_gcc_v3_1_Basler_pylon.so -L/opt/pylon/lib -lGenApi_gcc_v3_1_Basler_pylon.so -L/opt/pylon/lib -lpylonutility.so

试验后可编译通过

另一个办法是在
/usr/local/lib/pkgconfig 建一个 pylon.pc 文件 在里面写入

prefix=/opt/pylon
exec_prefix=p r e f i x l i b d i r = {prefix} libdir=prefixlibdir={exec_prefix}/lib
includedir=${prefix}/include

Name: pylon
Description: Basler pylon Library
Version: 6.2
Libs: -LKaTeX parse error: Double subscript at position 48: …GCBase_gcc_v3_1_̲Basler_pylon -l…{includedir}

则编译命令上加上
pkg-config --cflags --libs pylon
即可


版权声明:本文为weixin_46346916原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。