Ir para o conteúdo

 Voltar a PW3270 Suporte
Tela cheia

Compilando no Ubuntu 11.10

25 de Novembro de 2011, 14:36 , por Desconhecido - | Ninguém seguindo este artigo por enquanto.
Visualizado 33 vezes

Boa tarde.

Estou tentando compilar o pw3270 no Ubuntu 11.10 64bits.

 

Tive de criar o arquivo revision.m4 porque o bootstrap o exigia.
cat revision.m4
m4_define([SVN_REV], 1647)
m4_define([SVN_REVISION], trunk/latest)
m4_define([SVN_DATE], 2011-11-25)

Eu não sou expert de compilação, me baseei neste link: http://code.google.com/p/stimfit/source/browse/revision.m4

Depois disso tentei o make deb. Mas, o dpkg reclamou de erro de sintaxe. Eu tentei alterar manualmente a versão, mas não acertei o lugar daonde ele a lê.
dpkg-buildpackage: export CFLAGS from dpkg-buildflags (origin: vendor): -g -O2
dpkg-buildpackage: export CPPFLAGS from dpkg-buildflags (origin: vendor):
dpkg-buildpackage: export CXXFLAGS from dpkg-buildflags (origin: vendor): -g -O2
dpkg-buildpackage: export FFLAGS from dpkg-buildflags (origin: vendor): -g -O2
dpkg-buildpackage: export LDFLAGS from dpkg-buildflags (origin: vendor): -Wl,-Bsymbolic-functions
dpkg-buildpackage: source package pw3270
dpkg-buildpackage: source version 4.2.SVN_RELEASE
dpkg-buildpackage: error: version number contains illegal character `_'
make: *** [deb] Error 255

Tentando compilar também gera erro:
/usr/bin/ld: unrecognized option '--warn-duplicate-exports'
/usr/bin/ld: use the --help option for usage information
collect2: ld returned 1 exit status
make[1]: *** [/home/piovisqui/pw3270/.bin/Release/lib/lib3270.so] Error 1
make[1]: Leaving directory `/home/piovisqui/pw3270/src/lib'
make: *** [/home/piovisqui/pw3270/.bin/Release/lib/lib3270.so] Error 2

Eu instalei todas as dependências mencionadas aqui: http://www.softwarepublico.gov.br/dotlrn/clubs/pw3270/xowiki/HowToInstall
Estou tentando trunk/latest.

Peço ajuda =]

Autor: Filipe Fagundes Vieira


1010 comentários

  • 3f09f0772d9354bc3661d73bf02b0f60?only path=false&size=50&d=404Perry Werneck(usuário não autenticado)
    25 de Novembro de 2011, 15:28

     

    Olá,

    Qual erro o bootstrap apresentava? Pergunto porque a principal função do script bootstrap é justamente criar o revision.m4 e o ./configure

    Para acelerar segue uma cópia do revision.m4 que deve funcionar:

    m4_define([SVN_REV], 1620)
    m4_define([SVN_DATE], 2011-11-08 16:35:58)
    m4_define([SVN_RELEASE], 20111125 )
     
    Se criar ele manualmente não esqueça de rodar o "aclocal" e "autoconf" para criar um "configure" atualizado.

    O que me chamou a atenção foi o erro no parâmetro "--warn-duplicate-exports"; ele está hardcoded no arquivo src/lib/Makefile.in e funciona até no windows.

     

     

  • 297e352ba9ee009d113ab29c51de9421?only path=false&size=50&d=404Filipe Fagundes Vieira(usuário não autenticado)
    25 de Novembro de 2011, 17:10

     

    O erro era só esse:

    ./bootstrap.sh
    aclocal: configure.ac:36: file `revision.m4' does not exist

    Mesmo usando as configurações do revision.m4 que você passou, não compilou.  O ./configura roda normalmente, na hora do make aparece o mesmo erro do primeiro post.

     

    Outra pergunta, na área de downloads existem vários .deb com outra bibliotecas. O make deb irá criar elas? Para que exatamente elas servem (não achei na documentação)? 

    • 3f09f0772d9354bc3661d73bf02b0f60?only path=false&size=50&d=404Perry Werneck(usuário não autenticado)
      25 de Novembro de 2011, 20:15

       

      Olá,

      Algumas perguntas:

       * O diretório em que você está compilando é o mesmo onde foi feito checkout?

       * O subdiretório oculto .svn existe?

       * Qual a saída do comando svn info? 

      Quanto ao --warn-duplicate-exports: Ele não é realmente necessário, só um pequeno purismo. Daqui à pouco faço um commit retirando. 

      Quanto aos debs: Sim, o make deb vai gerar vários pacotes; quantos e quais serão depende do que o ./configure achar instalado, por exemplo, se você não tiver o object rexx os pacotes relacionados com rexx não serão gerados.

       

      • 297e352ba9ee009d113ab29c51de9421?only path=false&size=50&d=404Filipe Fagundes Vieira(usuário não autenticado)
        25 de Novembro de 2011, 20:59

         

        1. Estou compilando de dentro de /usr/local/src/pw3270

        2. O .svn existe. /usr/local/src/pw3270/.svn

        3. svn info

        Path: .
        URL: svn.​soft​ware​publ​ico.​gov.​br/s​vn/p​w327​0/tr​unk/​late​st
        Repository Root: svn.​soft​ware​publ​ico.​gov.​br/s​vn/p​w327​0
        Repository UUID: d25448e0-c022-0410-b998-a785f7053de0
        Revision: 1648
        Node Kind: directory
        Schedule: normal
        Last Changed Author: perry.werneck@gmail.com
        Last Changed Rev: 1648
        Last Changed Date: 2011-11-25 15:37:56 -0200 (Fri, 25 Nov 2011)

         Outra coisa, na hora de gerar o .deb o dpkg reclamou que a versão continha caractere inválido "_".

        • 3f09f0772d9354bc3661d73bf02b0f60?only path=false&size=50&d=404Perry Werneck(usuário não autenticado)
          26 de Novembro de 2011, 17:42

           

          Olá,

           Fiz alguns ajustes no bootstrap.sh e Makefile, tente dar um svn update e veja se agora o bootstrap, configure e make deb funcionam.

           

           

          • 297e352ba9ee009d113ab29c51de9421?only path=false&size=50&d=404Filipe Fagundes Vieira(usuário não autenticado)
            28 de Novembro de 2011, 18:18

             

            Consegui compilar agora! Só pediu uma dependência na hora de fazer o .deb.
            apt-get install desktop-file-utils

            Não consegui gerar os pacotes do Rexx e Openoffice, mas o pw3270 está rodando. Quais seriam as dependências? Outra coisa, ficou em inglês (não que seja um problema), como troca o idioma?

            Na verdade eu uso o Kubuntu 11.10, então algumas integrações com o Gnome não existem, obviamente.

            Coloquei os .deb para a área de arquivos.

            • 3f09f0772d9354bc3661d73bf02b0f60?only path=false&size=50&d=404Perry Werneck(usuário não autenticado)
              29 de Novembro de 2011, 17:11

               

              Olá,

              Inclui a dependência do "desktop-file-utils" no arquivo de controle do .deb, assim ele deve avisar logo no início.

              Quanto às dependências:

              * Para gerar o plugin e extensão rexx você precisa ter o Open Object Rexx instalado ( http://www.oorexx.org/download.html );

              * Para o plugin e extensão Open Office precisa do sdk do openoffice instalado. Se não me engano ele está no repositório do Ubuntu com o nome chama libreoffice-dev;

              Ele não deveria estar em inglês. Você pode conferir se o arquivo /usr/share/locale/pt_BR/LC_MESSAGES/pw3270.mo foi instalado?

               

              • 297e352ba9ee009d113ab29c51de9421?only path=false&size=50&d=404Filipe Fagundes Vieira(usuário não autenticado)
                1 de Dezembro de 2011, 18:17

                 

                O arquivo exste:
                ls -l /usr/share/locale/pt_BR/LC_MESSAGES/pw3270.mo
                -rw-r--r-- 1 root root 18755 2011-11-28 11:11 /usr/share/locale/pt_BR/LC_MESSAGES/pw3270.mo

                Eu uso o Kubuntu em inglês, será que ele pegou do padrão do locale? Tem como trocar o idioma pelo pw3270?

                • 3f09f0772d9354bc3661d73bf02b0f60?only path=false&size=50&d=404Perry Werneck(usuário não autenticado)
                  2 de Dezembro de 2011, 8:36

                   

                  Olá,

                  Nesse caso o comportando está correto. Ele deveria mesmo seguir o padrão do sistema; você pode tentar contornar isso fazendo um script que mude o locale antes de chamar o programa.

                  Pela linha de comando ficaria:

                   LANG=pt_BR.UTF-8 pw3270
                   

                   

  • 297e352ba9ee009d113ab29c51de9421?only path=false&size=50&d=404Filipe Fagundes Vieira(usuário não autenticado)
    25 de Novembro de 2011, 17:13

     

    Tentei anexar um log, mas parece que não está funcionando. Vai pelo pastebin mesmo.

     http://pastebin.com/JAv6zSBb

Essa comunidade não possui posts nesse blog