Eu sei que esse segmento está obsoleto, mas eu passei apenas dois dias fazendo a solução fornecida por Dan Menes funcionar (e o método de Dan DOES WORK), mas havia algumas etapas adicionais que eu queria compartilhar para que outras pessoas não o fizessem t perder 12 horas de trabalho como eu fiz com os ajustes. Então, aqui vamos nós:
Primeiro, eu não pude aplicar o patch de Dan com o comando "patch" da maneira usual. Quando tentei fazer isso, recebi o seguinte erro (o mesmo erro que o pôster "NW Tech" recebeu, que é:
Hunk # 1 FALHOU em 5128
Antes de consertar isso, eu arranquei todo o meu Java - ALL! Eu estava tendo um problema que quando eu corri webex eu não tinha certeza qual dos 5 ou 6 javas instalados, tanto 6 e 7, ele estava usando, e desde que eu não sei como ter certeza, eu apenas arrancou todos java fora, exceto aquele a ser usado para webex, para que eu pudesse ter certeza. Você pode fazer isso, ou então, se você souber como, certifique-se de que o firefox esteja usando o java empacotado como descrito abaixo. Se você optar por arrancar todo o seu java primeiro como eu fiz, então eu não tomo nenhuma responsabilidade por tudo o que pode quebrar para você - eu estava focado em corrigir este problema webex sem áudio através do computador no Ubuntu Linux e eu queria ter certeza Eu definitivamente estava usando o java de 32 bits, então eu copiei todas as outras alternativas em Java para ter certeza.
Então, prosseguindo em ...
Além disso, eu usei a última distribuição do JDK 1.6 (1.6.0_45) NÃO JDK 1.7 (pode funcionar, eu não testei, não me importo, eu terminei com esse problema irritante. para webex sound, então, FINE! Eu terminei!).
Antes de instalar o Oracle Sun Java 1.6.0_45, copiei completamente todo o java existente no meu Ubuntu 12.04. Para fazer isso, usei estas etapas:
sudo apt-get update
apt-cache search java | awk '{print()}' | grep -E -e '^(ia32-)?(sun|oracle)-java' -e '^openjdk-' -e '^icedtea' -e '^(default|gcj)-j(re|dk)' -e '^gcj-(.*)-j(re|dk)' -e 'java-common' | xargs sudo apt-get -y remove
sudo apt-get -y autoremove
Depois de executar essas etapas, instalei o JDK 1.6.0_45 e, em seguida, instalei-o em alternativas e, em seguida, verifiquei se as alternativas tinham APENAS 1.6.0_45 para ter certeza de que estava pegando o java-32 empacotado para 64 bits navegador que eu queria.
Antes que eu pudesse fazer isso, no entanto, eu tive que colocá-lo em alternativas, o que eu fiz dessa maneira:
sudo update-alternatives - instala "/ usr / bin / java" "java" "/ usr / lib / jvm / java-6-oracle / bin / java" 1050
(sua localização do seu java32 jdk6 pode variar - é onde eu coloquei o meu).
Idk o que significa o número 1050 - é a "prioridade" não sei se isso importa ou não. Minhas alternativas se parecem com isso agora:
gstanden@Ubuntu1204:/usr/lib/mozilla/plugins$ sudo update-alternatives --config java
[sudo] password for gstanden:
There is 1 choice for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/jvm/java-6-oracle/bin/java 1050 auto mode
* 1 /usr/lib/jvm/java-6-oracle/bin/java 1050 manual mode
Press enter to keep the current choice[*], or type selection number:
gstanden@Ubuntu1204:/usr/lib/mozilla/plugins$
Então, depois de dormir, na manhã de Satuday eu olhei para o código na linha 5128 e colei o patch manualmente no arquivo, já que o patch estava tendo problemas para aplicá-lo automaticamente.
/home/gstanden/Downloads/nspluginwrapper-1.4.4/src/npw-viewer.c
Aqui estão os snippets de antes e depois que mostram como você precisa colocar o código de correção:
aqui está o diff do npw-viewer.c corrigido versus o npw-viewer.c não corrigido:
gstanden@Ubuntu1204:~/Downloads/nspluginwrapper-1.4.4/src$ diff npw-viewer.c npw-viewer.c.bak
5129,5138c5129,5130
< #else
< /* Install libstdc++ for java */
< const char libstcpp[] = "libstdc++.so.6";
< D(bug(" trying to open standard C++ runtime '%s'\n", libstcpp ));
< if ((handle = dlopen(libstcpp, RTLD_LAZY|RTLD_GLOBAL)) == NULL) {
< npw_printf("ERROR: %s\n", dlerror());
< return 1;
< }
< handles[n_handles++] = handle;
< dlerror();
---
> handles[n_handles++] = handle;
> dlerror();
Se você quiser ir direto ao assunto, aqui estão as linhas afetadas, números de linha mostrados por conveniência. Eu acabei de usar o patch de Dan aplicado manualmente, já que "patch" deu erro, e funcionou.
A partir da linha 5128, veja como deve ficar depois de o patch ter sido aplicado:
5128 }
5129 #else
5130 /* Install libstdc++ for java */
5131 const char libstcpp[] = "libstdc++.so.6";
5132 D(bug(" trying to open standard C++ runtime '%s'\n", libstcpp ));
5133 if ((handle = dlopen(libstcpp, RTLD_LAZY|RTLD_GLOBAL)) == NULL) {
5134 npw_printf("ERROR: %s\n", dlerror());
5135 return 1;
5136 }
5137 handles[n_handles++] = handle;
5138 dlerror();
5139 #endif
5140 D(bug(" %s\n", plugin_path));
5141 if ((handle = dlopen(plugin_path, RTLD_LAZY)) == NULL) {
Observe que os caracteres "#" na linha 5139 e na linha 5129 devem estar lá, não os remova, deixe o # no código. É claro que os números de linha não aparecem no arquivo finalizado, eles são mostrados aqui apenas por conveniência para ajudá-lo a localizar onde está o código atualizado.
Agora você pode continuar a executar o make a partir da linha de comando:
cd /home/gstanden/Downloads/nspluginwrapper-1.4.4
make
Bem, a marca dará erro. O cartaz "910Radar" descobriu isso. Você tem que acrescentar um pequeno trecho ao comando make e executá-lo manualmente. Você pode ver "910Radar" postar aqui: link
e o que ele fez (e o que eu fiz) foi rodar o comando make manualmente, como segue (e funciona) para ele. Esse comando está aqui, cole-o na linha de comando:
gcc -std=c99 -o npplayer npplayer-npw-player.o npplayer-debug.o npplayer-rpc.o npplayer-utils.o npplayer-glibcurl.o npplayer-gtk2xtbin.o -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lglib-2.0 -lglib-2.0 -lcurl -lXt -lX11 -lpthread -lgthread-2.0
e funciona. Agora você pode rodar "make install" para "nspluginwrapper" e então rodar o java de 32 bits que você instalou para que o Firefox de 64 bits possa usá-lo, o comando é:
sudo nspluginwrapper -i /usr/lib/jvm/java-6-oracle/jre/lib/i386/libnpjp2.so
que deve retornar um prompt de comando sem erros e sem mensagens. Observe que, se o seu libnpjp2.so estiver localizado em um diretório diferente, use seu caminho, é claro.
Eu também achei que embora pulseaudio estivesse trabalhando no meu Ubuntu 12.04 (youtube, video, etc) o "test audio" não estava funcionando no painel "sound" nas configurações do Ubuntu. Achando que seria uma boa idéia consertar qualquer problema que eu encontrei com o som no meu Ubuntu, eu consertei isso também. Descobri que corrigir esse problema requer essa etapa:
sudo apt-get install libcanberra-pulse
e depois que isso for feito, os alto-falantes direito e esquerdo "test" funcionarão muito bem (uma voz feminina suave fala com você, que legal, dizendo que seus alto-falantes estão trabalhando em cada lado, que adorável).
Além disso, se você já esteve na página que diz para extrair o pulseaudio, e como eu descobri, a perda de áudio do pulso não funciona tanto quanto consertar o som do computador para problemas com o webex (pelo menos não para mim), então você pode colocar o pulso de volta, e também o widget toolbar do pulseaudio, de volta no Ubuntu 12.04 usando estes comandos:
sudo apt-get install pulseaudio
sudo apt-get install indicator-sound
(coloca o pulso de áudio de volta e coloca o indicador de volta nos widgets na parte superior). Você pode querer reiniciar depois de fazer isso.
Agora experimente e espero que, se me lembre de todas as etapas, você consiga executar o som webex do seu navegador mozilla firefox de 64 bits no Ubuntu 12.04 64-bit e tenha o som webex integrado funcionando perfeitamente ! Um pequeno applet é aberto quando você clica em "usar meu computador" para som quando está no webex.
Aprecie, e muito obrigado Dan Menes e "910Radar" e muitos outros "posters desconhecidos" cujos posts sobre coisas básicas como como corrigir código src, como adicionar entradas a alternativas Java, etc., tornaram possível finalmente resolver este problema no meu laptop Ubuntu!