Problema de Compilação do Programa Scid Chess

3

Antes de tudo, gostaria de lembrar que sou novo no Ubuntu, então desculpe se o que estou perguntando é ridículo.

Eu baixei o programa de xadrez Scid 4.4 e tentei compilá-lo como foi explicado em seu site:

  

1) Inicialize o git.

     

2) Crie uma pasta onde você deseja baixar e (?)   compile a fonte, depois elenco:   git init na sua linha de comando.

     

3) Agora você está pronto para baixar as fontes   Recorde o feitiço de Fulvio:   git clone git: //scid.git.sourceforge.net/gitroot/scid/scid   Isso deve te dar a fonte mais recente do Scid.

     

4) Agora você está pronto para compilar o Scid.   Em princípio, tudo que você precisa fazer é:   ./configure   e depois   fazer

     

5) Se você ficar preso, provavelmente precisará obter versões de desenvolvedor do tcl / tk.   Isso se traduz na emissão desses três comandos:   sudo apt-get install tcl8.5-dev   sudo apt-get instala tk8.5-dev   sudo apt-get instala zlib1g -dev

     

6) Agora você deve estar pronto para compilar

O problema é que quando eu executo o ./configure para começar a compilar a seguinte mensagem aparece no Terminal:

  

configure: Makefile programa de configuração para o Scid

    Tcl/Tk version: 8.5
    Your operating system is: Linux 3.8.0-19-generic
    Location of "tcl.h": /usr/include/tcl8.5
    Location of "tk.h": /usr/include/tcl8.5
    Location of Tcl 8.5 library: not found
    Location of Tk 8.5 library: not found
    Checking if your system already has zlib installed: yes.
    Using Makefile.conf.
Not all settings could be determined!
The default Makefile was written.
You will need to edit it before you can compile Scid.

O que devo fazer? Alguém já enfrentou esse problema antes? Agradecemos antecipadamente

Eu corri

  

ls -l /usr/include/tcl8.5/tcl.h

aqui está o resultado:

  

-rw-r - r-- 1 raiz raiz 87291 abr 22 10:45 /usr/include/tcl8.5/tcl.h

Eu também tentei o que você sugeriu

  

Você poderia executar git reset --hard HEAD e git clean -d -f para limpar tudo usando o Git? Em seguida, execute ./configure novamente. Apenas um tiro no escuro - eu vi algumas coisas de automake do GNU ainda ouvindo sua versão "em cache" dos resultados ou algo assim.

Ainda não há solução. Eu não sei porque não é possível reconhecer a biblioteca embora esteja instalada

Eu abri o configure para ver onde o programa procurava a biblioteca. Este é o código:

# libraryPath: List of possible locations of Tcl/Tk library.
set libraryPath {
    /usr/lib
    /usr/lib64
    /usr/local/tcl/lib
    /usr/local/lib
    /usr/X11R6/lib
    /opt/tcltk/lib
    /usr/lib/x86_64-linux-gnu
}
lappend libraryPath "/usr/lib/tcl${tclv}"
lappend libraryPath "/usr/lib/tk${tclv}"
lappend libraryPath "/usr/lib/tcl${tclv_nodot}"
lappend libraryPath "/usr/lib/tk${tclv_nodot}"

# Try to add tcl_library and auto_path values to libraryPath,
# in case the user has a non-standard Tcl/Tk library location:

if {[info exists ::tcl_library]} {
    lappend headerPath \
        [file join [file dirname [file dirname $::tcl_library]] include]
    lappend libraryPath [file dirname $::tcl_library]
    lappend libraryPath $::tcl_library
}
if {[info exists ::auto_path]} {
    foreach name $::auto_path {
        lappend libraryPath $name
    }
}

if {! [info exists var(TCL_INCLUDE)]} {
    puts -nonewline {    Location of "tcl.h": }
    set opt(tcl_h) [findDir "tcl.h" $headerPath "TCL_VERSION.*$tclv"]
    if {$opt(tcl_h) == ""} {
        puts "not found"
        set success 0
        set opt(tcl_h) "$::defaultVar(TCL_INCLUDE)"
    } else {
        puts $opt(tcl_h)
    }
}

set opt(tcl_lib) ""

if {! [info exists var(TCL_LIBRARY)]} {
    puts -nonewline "    Location of Tcl $tclv library: "
    set opt(tcl_lib) [findDir "libtcl${tclv}.*" $libraryPath]
    if {$opt(tcl_lib) == ""} {
        set opt(tcl_lib) [findDir "libtcl${tclv_nodot}.*" $libraryPath]
        if {$opt(tcl_lib) == ""} {
            puts "not found"
            set success 0
            set opt(tcl_lib) "$opt(tcl_h)"
            set opt(tcl_lib_file) "tcl$(TCL_VERSION)"
        } else {
            set opt(tcl_lib_file) "tcl${tclv_nodot}"
            puts $opt(tcl_lib)
        }
    } else {
        set opt(tcl_lib_file) "tcl$(TCL_VERSION)"
        puts $opt(tcl_lib)
    }
}

if {! [info exists var(TCL_INCLUDE)]} {
    set var(TCL_INCLUDE) "-I$opt(tcl_h)"
}
if {! [info exists var(TCL_LIBRARY)]} {
    set var(TCL_LIBRARY) "-L$opt(tcl_lib) -l$opt(tcl_lib_file)"
}
return $success

Então eu acho (E por palpite eu não tenho idéia de como codificar) Eu deveria escrever em algum lugar aqui usr / lib / tcl8.5 e usr / lib / tk8.5, estou certo?

    
por lbochitt 27.08.2013 / 19:57

4 respostas

3

Location of Tcl 8.5 library: not found
Location of Tk 8.5 library: not found

Significa que você está perdendo as bibliotecas Tcl e Tk (pacotes de desenvolvimento).

Instale tcl8.5-dev e tk8.5-dev e você deve estar pronto.

Como eu encontrei isso? Use a pesquisa em caminhos no site link :

Antes de instalar os pacotes:

$ ./configure 
configure: Makefile configuration program for Scid
    Tcl/Tk version: 8.5
    Your operating system is: Linux 3.8.0-29-generic
    Location of "tcl.h": not found
    Location of "tk.h": not found
    Location of Tcl 8.5 library: /usr/lib
    Location of Tk 8.5 library: /usr/lib
    Checking if your system already has zlib installed: yes.
    Using Makefile.conf.
Not all settings could be determined!
The default Makefile was written.
You will need to edit it before you can compile Scid.

Depois de instalar os pacotes:

$ ./configure 
configure: Makefile configuration program for Scid
    Renaming "Makefile" to "Makefile.bak"
    Tcl/Tk version: 8.5
    Your operating system is: Linux 3.8.0-29-generic
    Location of "tcl.h": /usr/include/tcl8.5
    Location of "tk.h": /usr/include/tcl8.5
    Location of Tcl 8.5 library: /usr/lib
    Location of Tk 8.5 library: /usr/lib
    Checking if your system already has zlib installed: yes.
    Using Makefile.conf.
The Makefile configured for your system was written.
Multi-threading enabled (if you have problems try ./configure THREADS="").
Now just type "make" to compile Scid.

Você vê, é muito parecido e é fácil ignorar o fato de que está sendo bem sucedido agora.

    
por gertvdijk 27.08.2013 / 20:02
2
Location of Tcl 8.5 library: not found
Location of Tk 8.5 library: not found

Tive o mesmo problema com o Ubuntu 13.04. Não foi possível compilar embora eu tenha instalado os pacotes necessários. O problema parece ser que o scid olha dentro de / usr / lib para as bibliotecas tcl e tk, embora elas estejam instaladas em / usr / lib / x86_64-linux-gnu, como você pode ver clicando com o botão direito do mouse no gerenciador de pacotes no pacote tcl8.5-lib e selecionando Propriedades / Arquivos Instalados.

A solução é criar soft links para essas bibliotecas na pasta / usr / lib:

sudo ln -s /usr/lib/x86_64-linux-gnu/libtcl8.5.so.0 /usr/lib/libtcl8.5.so.0
sudo ln -s /usr/lib/x86_64-linux-gnu/libtk8.5.so.0 /usr/lib/libtk8.5.so.0

Espero que ajude.

    
por fabianLinux 09.11.2013 / 09:58
0

No meu caso, modificar o script de configuração funcionou. Eu adicionei /usr/lib/i386-linux-gnu à lista libraryPath (linha 167)

    
por Antonio 02.02.2014 / 01:26
0

Tente simples:

sudo apt-get install scid
    
por Mateusz 05.09.2016 / 14:48