Erro utilizando extensão ARB em opengl
Ola pessoal !!!
Eu estou utilizando a extensao ARB de opengl em Linux.
Eu estou utilizando a biblioteca Sh para implementar
codigo para ser executado em GPU.
O meu aplicativo de teste compila e linka sem problemas, mas
na hora de executar ocorre o seguinte erro:
./shglutex: relocation error: /home/rcsd/garzao/apps/sh-0.7.2/lib/sh/libsharb.so: undefined symbol: glGetProgramivARB
Alguem tem alguma dica?
[]'s
Erro utilizando extensão ARB em opengl
Olá _ivy_,
(gracas a Deus (ou nao), nunca precisei mexer nesse emaranhado chamado opengl... nao tenho nem ideia das libs envolvidas. minha DICA eh referente a programacao...)
Vc nao esta recebendo erro de compilacao/link pq a libsharb.so esta abrindo dinamicamente (dlopen()) alguma outra lib, e 'pensa' que o symbol glGetProgramivARB() estará definido (na lib aberta). Mas nao esta...
Verifique as versoes das libs envolvidas nesse projeto... veja se vc acha a funcao glGetProgramivARB() dentro de alguma lib (os comandos 'nm' e 'ar' podem ajudar). Veja quais sao as dependencias da lib.
[]s
Erro utilizando extensão ARB em opengl
Oii.. obrigada pela dica, consegui resolver o problema..era +- isso q vc falou :)
essas funções ARB sao confusas.. bom.. eu precisava antes de tudo acertar os ponteiros pra essas funções.. ai olhei no GL/glext.h o nome do define que precisava usar (baseado no nome da função), neste meu caso, seguindo os headers da nvidia, seria
o "PFNGLGETPROGRAMIVARBPROC", e ficou algo como:
PFNGLGETPROGRAMIVARBPROC glGetProgramivARB;
// dentro de alguma função de inicialização
glGetProgramivARB = (PFNGLGETPROGRAMIVARBPROC)
glXGetProcAddressARB("glGetProgramivARB");
Depois disso, consegui usar a função normalmente.
Agora me pergunto...
O que na cabeça teria alguém que esta define/variável/macro/coisa definiu?
rsss..
[]'s