Não é possível fazer com êxito - referência indefinida ao símbolo 'XCreateBitmapFromData'

0
/usr/bin/ld: ../bin/libanttweakbar.a(TwMgr.cpp.o): undefined reference to symbol 'XCreateBitmapFromData'
/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/libX11.so: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make[2]: *** [bin/surface_splatting] Error 1
make[1]: *** [surface_splatting/CMakeFiles/surface_splatting.dir/all] Error 2
make: *** [all] Error 2

Eu tentei incluir -x11 nos sinalizadores, mas ainda enfrento o mesmo problema

    
por Thejdeep 05.04.2015 / 07:05

1 resposta

0

Conforme mostrado por man XCreateBitmapFromData , essa função faz parte de libX11 . Para usá-lo, você precisa ter o pacote libX11-dev installed (que provavelmente tem) e adicionar a biblioteca aos flags de compilação:

gcc [...whatever...] -lX11 

A sintaxe "add library" é -l seguida (sem espaços!) pelo nome da biblioteca despojado do lib stem fixo.

    
por Rmano 05.04.2015 / 09:52