Como não há mais binários distribuídos para a nova versão 4 do linphone, estou tentando compilar o aplicativo sozinho. Estou usando um contêiner docker para o processo de compilação. Agora, quando se trata de bctoolbox
então eu recebo este erro:
/usr/bin/ld: /usr/local/lib/libmbedtls.a(ssl_tls.c.o): relocation R_X86_64_PC32 against symbol `mbedtls_ssl_sig_hash_set_const_hash' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: final link failed: Bad value
collect2: error: ld returned 1 exit status
src/CMakeFiles/bctoolbox.dir/build.make:305: recipe for target 'src/libbctoolbox.so.1' failed
make[2]: *** [src/libbctoolbox.so.1] Error 1
make[1]: *** [src/CMakeFiles/bctoolbox.dir/all] Error 2
CMakeFiles/Makefile2:201: recipe for target 'src/CMakeFiles/bctoolbox.dir/all' failed
Makefile:149: recipe for target 'all' failed
make: *** [all] Error 2
The command '/bin/sh -c cd bctoolbox-0.6.0 && cmake . && make && make install' returned a non-zero code: 2
O código está hospedado aqui (muito tempo para postar aqui).
Infelizmente, o Docker não garante que a pessoa que escreveu o Dockerfile e você terá a mesma imagem, porque pode ou não armazenar em cache os efeitos colaterais da execução de comandos shell, e assim o que você instalou ao criar a imagem pode ser de uma versão diferente daquela que o autor original do Dockerfile pretendia. Meu palpite é que o gcc usado para construir a imagem original era mais antigo do que o que você tem, mas posso estar errado.
wvxvw
Essa é uma boa ideia. Eu tentei o mesmo com o Debian 8 com o mesmo resultado. Construindo no Debian 7 falha com cmake sendo muito antigo (2.8.11-1 de backports vs. 2.8.12 sendo requerido) :-(
thomas.mc.work