kovidgoyal / kitty

Cross-platform, fast, feature-rich, GPU based terminal
https://sw.kovidgoyal.net/kitty/
GNU General Public License v3.0
23.85k stars 964 forks source link

Does not run #866

Closed dcow closed 6 years ago

dcow commented 6 years ago
dcow@dcx1:~/Development/kitty$ python3 .
Traceback (most recent call last):
  File "/usr/lib/python3.5/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/usr/lib/python3.5/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "./__main__.py", line 111, in <module>
    main()
  File "./__main__.py", line 104, in main
    from kitty.main import main
  File "./kitty/main.py", line 10, in <module>
    from .borders import load_borders_program
  File "./kitty/borders.py", line 7, in <module>
    from .fast_data_types import (
ImportError: ./kitty/fast_data_types.so: undefined symbol: hb_ft_font_changed
dcow@dcx1:~/Development/kitty$ neofetch
       _,met$$$$$gg.          dcow@dcx1 
    ,g$$$$$$$$$$$$$$$P.       --------- 
  ,g$$P"     """Y$$.".        OS: Debian GNU/Linux 9.5 (stretch) x86_64 
 ,$$P'              `$$$.     Model: 20BSCTO1WW ThinkPad X1 Carbon 3rd 
',$$P       ,ggs.     `$$b:   Kernel: 4.9.0-3-amd64 
`d$$'     ,$P"'   .    $$$    Uptime: 11 hours, 18 minutes 
 $$P      d$'     ,    $$P    Packages: 2253 
 $$:      $$.   -    ,d$$'    Shell: bash 4.4.12 
 $$;      Y$b._   _,d$P'      Resolution: 2560x1440 
 Y$$.    `.`"Y$$$$P"'         DE: GNOME 
 `$$b      "-.__              WM: GNOME Shell 
  `Y$$                        WM Theme: Numix-Fusion 
   `Y$$.                      Theme: Numix-Fusion [GTK2/3] 
     `$$b.                    Icons: Numix-Circle [GTK2/3] 
       `Y$$b.                 Terminal: gnome-terminal 
          `"Y$b._             CPU: Intel i7-5600U (4) @ 3.2GHz 
              `"""            GPU: Intel Integrated Graphics 
                              Memory: 3963MB / 7866MB 

                              ████████████████████████ 
kovidgoyal commented 6 years ago

Your version of harfbuzz is too old. Update or use the linux binaries rather than building from source (though note that the linux binaries require a relatively recent version of freetype as well).

dcow commented 6 years ago

I installed harfbuzz from source. Why would the top of tree be too old?

kovidgoyal commented 6 years ago

The missing symbol in harfbuzz hb_ft_font_changed means that you either did not compile harfbuz againt freetype, the freetype version you compiled it against is too old, or you have not set LD_LIBRARY_PATH or similar to ensure kitty loads the newly compiled harfbuzz

dcow commented 6 years ago

It looks like my harfbuzz was not configured properly. It's aware of freetype now and everything works. Thanks!

kribakarans commented 5 years ago

I am getting the same issue, but i dont know how to resolve.

javis@javis:~/kitty/kitty/launcher$ ./kitty 
Traceback (most recent call last):
  File "/usr/lib/python3.5/runpy.py", line 184, in _run_module_as_main
    "__main__", mod_spec)
  File "/usr/lib/python3.5/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/home/javis/kitty/kitty/launcher/../../__main__.py", line 117, in <module>
    main()
  File "/home/javis/kitty/kitty/launcher/../../__main__.py", line 110, in main
    from kitty.main import main
  File "/home/javis/kitty/kitty/launcher/../../kitty/main.py", line 11, in <module>
    from .borders import load_borders_program
  File "/home/javis/kitty/kitty/launcher/../../kitty/borders.py", line 7, in <module>
    from .fast_data_types import (
ImportError: /home/javis/kitty/kitty/launcher/../../kitty/fast_data_types.so: undefined symbol: hb_ft_font_changed
javis@javis:~/kitty/kitty/launcher$ 

I have installed harfbuzz-2.6.0 in $HOME/Downloads/harfbuzz-2.6.0 and compiled successfully with make & make install

kribakarans commented 4 years ago

Is there any comments an the above conversations ?

dufferzafar commented 4 years ago

@dcow can you please describe how exactly you fixed this problem? Did you pass any parameters to harfuzz's ./configure to make it use freetype?

dcow commented 4 years ago

According to my history, no. But I don't really remember. I think it was a missing dependency. I think this line (copied from the harfbuzz BUILD.md) fixed it:

sudo apt install gcc g++ libfreetype6-dev libglib2.0-dev libcairo2-dev

Followed of course by rebuilding. I don't think you need to rebuild kitty, just harfbuzz. Here's my history after the above command if it helps:

sudo apt install -f
make clean
./configure
sudo apt install autoconf automake libtool pkg-config ragel gtk-doc-tools
make clean
git clean -fxd
./autogen.sh
./configure ls
^^^ pretty sure this is just a typo which is why I try again
git clean -fxd
./autogen.sh 
./configure
make
sudo make install
kitty