Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

有相关的说明吗?在运行时报错 #1

Closed
ljxqxq opened this issue Mar 28, 2022 · 17 comments
Closed

有相关的说明吗?在运行时报错 #1

ljxqxq opened this issue Mar 28, 2022 · 17 comments

Comments

@ljxqxq
Copy link

ljxqxq commented Mar 28, 2022

D:/dev/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lSeetaFaceAntiSpoofingX600
D:/dev/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lSeetaFaceDetector600
D:/dev/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lSeetaFaceLandmarker600
D:/dev/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lSeetaFaceRecognizer610
D:/dev/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lSeetaFaceTracking600
D:/dev/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lSeetaMaskDetector200
D:/dev/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -ltennis
D:/dev/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lSeetaAuthorize
D:/dev/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -ltennis
D:/dev/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lSeetaAuthorize
D:/dev/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lSeetaQualityAssessor300
D:/dev/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lSeetaPoseEstimation600
collect2.exe: error: ld returned 1 exit status

@jyk1987
Copy link
Owner

jyk1987 commented Mar 28, 2022

不好意思啊,一直没有写说明,最近才把代码稳定下来。目前我只编译了ubuntu上的seetaface6。我这几天抽时间编译一个windows版本的吧。如果你可以在ubuntu下运行,你留一个邮箱,我先把模型发给你。我准备今天先写一个简单的说明。

@jyk1987
Copy link
Owner

jyk1987 commented Mar 28, 2022

我写了一个简单的帮助,这几天有时间了,我会增加windows系统的动态链接库

@ljxqxq
Copy link
Author

ljxqxq commented Mar 28, 2022

好的,点赞~!
速度太快了。

@ljxqxq
Copy link
Author

ljxqxq commented Mar 28, 2022

我在Ubuntu上面运行看看

@jyk1987
Copy link
Owner

jyk1987 commented Mar 28, 2022

好的,如果有问题你再问我。
目前文档还不全,现在只写了核心的流程,识别->定位->特征提取和对比,还有口罩检测、质量检测、活体检测没有写,这几天抽时间写吧。不过你可以看下事例中基本都有调用的代码。
seetaface6的功能我没有全部封装,因为很多目前我还没有用到。

@ljxqxq
Copy link
Author

ljxqxq commented Mar 28, 2022

好的,有问题我及时反馈

@ljxqxq
Copy link
Author

ljxqxq commented Mar 28, 2022

Ubuntu 18.04 在go build cmd下的main.go的时候报:
../lib/libSeetaFaceTracking600.so: undefined reference to log@GLIBC_2.29'
../lib/libSeetaFaceAntiSpoofingX600.so: undefined reference to std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream()@GLIBCXX_3.4.26' ../lib/libtennis.so: undefined reference to exp@GLIBC_2.29'
../lib/libSeetaFaceTracking600.so: undefined reference to pow@GLIBC_2.29' collect2: error: ld returned 1 exit status

在bashrc下也配置了环境变量LD_LIBRARY_PATH

是缺少gcc的环境?还是只能用Ubuntu 20.04?

@jyk1987
Copy link
Owner

jyk1987 commented Mar 28, 2022

你是直接运行的这个项目还是引入别的项目运行的?
1.确保LD_LIBRARY_PATH环境变量已经配制好,再终端中echo $LD_LIBRARY_PATH 看看当前终端会话中是否生效,如果没有生效就source下,不过我记着ubuntu默认的终端是bash,我一般修改的是~/.profile文件
2.因为调用cgo,同时代码用有c和c++代码所以编译是需要c\c++编译环境的
sudo apt update && sudo apt install cmake g++ gcc -y

@ljxqxq
Copy link
Author

ljxqxq commented Mar 28, 2022

直接运行的这个项目的。1 和2 都有,因为Ubuntu的当前帐号是读取home目录下的.bashrc,所以我配置在这个里面的

ubun@DESKTOP-B1ADODD:~/workspace/sf6go/cmd$ echo $LD_LIBRARY_PATH
/home/ubun/workspace/sf6data/lib/ubuntu_20.04

ubun@DESKTOP-B1ADODD:~/workspace/sf6go/cmd$ sudo apt install cmake g++ gcc -y
[sudo] password for ubun:
Reading package lists... Done
Building dependency tree
Reading state information... Done
cmake is already the newest version (3.10.2-1ubuntu2.18.04.2).
g++ is already the newest version (4:7.4.0-1ubuntu2.3).
g++ set to manually installed.
gcc is already the newest version (4:7.4.0-1ubuntu2.3).
gcc set to manually installed.
0 upgraded, 0 newly installed, 0 to remove and 171 not upgraded.

@jyk1987
Copy link
Owner

jyk1987 commented Mar 28, 2022

不好意思,因为我用的是ubuntu20.04,它和18.04之间系统的一些基础组件,尤其是Standard C++ Library版本差异还是比较大的。目前项目里面动态连接库是在ubuntu20.04下编译的。所以可能在ubunut18.04下无法正常运行。我手上没有ubuntu18.04如果你能换ubuntu20.04的话可以换下版本试试。
我过两天弄个ubuntu18.04试试。

@ljxqxq
Copy link
Author

ljxqxq commented Mar 28, 2022

不好意思,因为我用的是ubuntu20.04,它和18.04之间系统的一些基础组件,尤其是Standard C++ Library版本差异还是比较大的。目前项目里面动态连接库是在ubuntu20.04下编译的。所以可能在ubunut18.04下无法正常运行。我手上没有ubuntu18.04如果你能换ubuntu20.04的话可以换下版本试试。 我过两天弄个ubuntu18.04试试。

好的,那我用20.04试试吧

@xhqnarr
Copy link

xhqnarr commented Mar 28, 2022

运行时出现下面这个提示信息,没有其他输出,请问一下你这边遇到过没?
signal: illegal instruction (core dumped)

@jyk1987
Copy link
Owner

jyk1987 commented Mar 28, 2022

你的cpu是什么型号,需要AVX指令集支持的。

@jyk1987
Copy link
Owner

jyk1987 commented Mar 28, 2022

运行时出现下面这个提示信息,没有其他输出,请问一下你这边遇到过没? signal: illegal instruction (core dumped)

我刚才看了下,之前忘记引入不支持AVX2和FMA指令集的其他库的,我已经修改了代码,你可以测试下看看现在可以成功运行不。

@xhqnarr
Copy link

xhqnarr commented Mar 29, 2022

i5-2400,查了一下是支持avx指令集的,但是不支持avx2和fma。最新代码运营的话还是这个异常

运行时出现下面这个提示信息,没有其他输出,请问一下你这边遇到过没? signal: illegal instruction (core dumped)

我刚才看了下,之前忘记引入不支持AVX2和FMA指令集的其他库的,我已经修改了代码,你可以测试下看看现在可以成功运行不。

@jyk1987
Copy link
Owner

jyk1987 commented Mar 29, 2022

i5-2400,查了一下是支持avx指令集的,但是不支持avx2和fma。最新代码运营的话还是这个异常

运行时出现下面这个提示信息,没有其他输出,请问一下你这边遇到过没? signal: illegal instruction (core dumped)

我刚才看了下,之前忘记引入不支持AVX2和FMA指令集的其他库的,我已经修改了代码,你可以测试下看看现在可以成功运行不。

麻烦你这样试一下:
https://github.com/jyk1987/sf6go/blob/master/models.go
把这个文件中的
// #cgo LDFLAGS: -L${SRCDIR}/lib -ltennis_haswell -ltennis_sandy_bridge -ltennis_pentium -lSeetaAuthorize
更换城
// #cgo LDFLAGS: -L${SRCDIR}/lib -ltennis_pentium -lSeetaAuthorize
来运行试试,因为seetaface6是实际部署的时候没有avx2指令集的话速度会很慢,所以还是建议你能更换支持avx2+fma指令集的cpu来进行运行。

@xhqnarr
Copy link

xhqnarr commented Mar 29, 2022

已解决,3q

@jyk1987 jyk1987 closed this as completed Mar 29, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants