我正在尝试将libvpx构建为一个静态库,以便稍后在FFmpeg构建中使用,而且我遇到了麻烦。我正在使用的libvpx版本是1.6.0。
这是我的配置:/配置-前缀=/home/test/Dev/buil-x64/libvpx/-启用-静态-禁用-共享-目标=x86_64-linux-gcc
在制作过程中,有许多错误正在屏幕上转储:
[LD] test_libvpx
test/add_noise_test.cc.o: In function `(anonymous namespace)::gtest_CAddNoiseTest_EvalGenerator_()':
add_noise_test.cc:(.text+0x342): undefined reference to `vpx_plane_add_noise_c'
test/add_noise_test.cc.o: In function `(anonymous namespace)::gtest_SSE2AddNoiseTest_EvalGenerator_()':
add_noise_test.cc:(.text+0x492): undefined reference to `vpx_plane_add_noise_sse2'
test/add_noise_test.cc.o: In function `(anonymous namespace)::AddNoiseTest_CheckCvsAssembly_Test::TestBody()':
add_noise_test.cc:(.text+0x2437): undefined reference to `vpx_setup_noise'
add_noise_test.cc:(.text+0x2448): undefined reference to `vpx_calloc'
add_noise_test.cc:(.text+0x245a): undefined reference to `vpx_calloc'
add_noise_test.cc:(.text+0x2779): undefined reference to `vpx_plane_add_noise_c'
add_noise_test.cc:(.text+0x2934): undefined reference to `vpx_free'
add_noise_test.cc:(.text+0x293c): undefined reference to `vpx_free'
(...and a lot more.)认识到错误是从测试开始的,我尝试禁用单元测试:./配置-前缀=/home/test/Dev/buil-x64/libvpx/-启用-静态-禁用-共享-目标=x86_64-linux-gcc-禁用-单元测试
并得到了以下结果:(行的...lots)CC示例/resize_util.c.o LD示例/resize_util示例/resize_util.c.o:在函数main': resize_util.c:(.text.startup+0x1e8): undefined reference tovp9_resize_frame420‘collect2: collect2: ld返回1退出状态make1:* collect2/resize_util错误1 make:* .DEFAULT错误2
我的电脑上有libogg 1.3.1和libvorbis 1.3.2。(不确定它们是否被使用。)
我很困惑,我很想在这里提供一些指导。
发布于 2016-08-24 06:10:07
一些早期构建的文件仍然存在(libs-armv7-linux-gcc.mk),尽管早些时候已经调用了make clean。
我决定给它最后一次尝试,从一个新的目录重新开始,它成功了。早期构建的文件可能是某种程度上的干扰。我应该用make distclean代替。
https://stackoverflow.com/questions/39115362
复制相似问题