lyssa icon indicating copy to clipboard operation
lyssa copied to clipboard

can't build

Open Loki6946 opened this issue 1 year ago • 71 comments

I had this error when trying to build

sudo make rebuild install make clean make[1]: Entering directory '/home/aldi/Downloads/lysa/lyssa' rm -rf ./bin rm -rf ./vendor/leif/lib make[1]: Leaving directory '/home/aldi/Downloads/lysa/lyssa' make leif make[1]: Entering directory '/home/aldi/Downloads/lysa/lyssa' make -C ./vendor/leif/ make[2]: Entering directory '/home/aldi/Downloads/lysa/lyssa/vendor/leif' mkdir lib gcc pkg-config --cflags glfw3 cglm libclipboard -Ivendor/glad/include -Ivendor/stb_image/ -Ivendor/stb_truetype -Ivendor/stb_image_resize -DLF_GLFW -O3 -ffast-math -c leif.c -o lib/leif.o leif.c: In function ‘load_font’: leif.c:1028:3: warning: ignoring return value of ‘fread’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 1028 | fread(buffer, 1, fileSize, file); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ leif.c:1040:3: warning: ignoring return value of ‘fread’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 1040 | fread(buf, 1, 1<<20, fopen(filepath, "rb")); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ gcc -c vendor/glad/src/glad.c -o lib/glad.o ar cr lib/libleif.a lib/.o make[2]: Leaving directory '/home/aldi/Downloads/lysa/lyssa/vendor/leif' make[1]: Leaving directory '/home/aldi/Downloads/lysa/lyssa' make build make[1]: Entering directory '/home/aldi/Downloads/lysa/lyssa' mkdir bin [INFO]: Building Lyssa. g++ -O3 -ffast-math -DGLFW_INCLUDE_NONE src/.cpp -o bin/lyssa -Ivendor/miniaudio -Ivendor/leif/include -Ivendor/leif/vendor/glad/include -Ivendor/stb_image_write -lleif -lclipboard -Lvendor/leif/lib -lglfw -ltag -lm -Lvendor/miniaudio/lib -lminiaudio src/lyssa.cpp: In function ‘int main(int, char**)’: src/lyssa.cpp:2694:11: warning: ignoring return value of ‘int system(const char*)’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 2694 | system("pkill yt-dlp"); | ~~~~~~^~~~~~~~~~~~~~~~ src/lyssa.cpp: In function ‘void renderDownloadPlaylist()’: src/lyssa.cpp:940:17: warning: ignoring return value of ‘int system(const char*)’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 940 | system(downloadCmd.c_str()); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~ src/lyssa.cpp:972:13: warning: ignoring return value of ‘int system(const char*)’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 972 | system(downloadThumbnailCmd.c_str()); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/lyssa.cpp:1058:15: warning: ignoring return value of ‘int system(const char*)’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 1058 | system("pkill yt-dlp &"); | ~~~~~~^~~~~~~~~~~~~~~~~~ src/lyssa.cpp: In function ‘void renderOnPlaylist()’: src/lyssa.cpp:1190:15: warning: ignoring return value of ‘int system(const char*)’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 1190 | system(std::string(LYSSA_DIR + "/scripts/download-yt.sh "" + currentPlaylist.url + "" " + LYSSA_DIR + "/downloaded_playlists/ &").c_str()); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/popups.cpp: In member function ‘virtual void PlaylistFileDialoguePopup::render()’: src/popups.cpp:209:31: warning: ignoring return value of ‘int system(const char*)’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 209 | system(cmd.c_str()); | ~~~~~~^~~~~~~~~~~~~ /usr/bin/ld: /usr/local/lib/libclipboard.a(clipboard_x11.c.o): undefined reference to symbol 'xcb_get_setup' /usr/bin/ld: /lib/x86_64-linux-gnu/libxcb.so.1: error adding symbols: DSO missing from command line collect2: error: ld returned 1 exit status make[1]: *** [Makefile:26: build] Error 1 make[1]: Leaving directory '/home/aldi/Downloads/lysa/lyssa' make: *** [Makefile:41: rebuild] Error 2

i kind of new to linux so yeah can somebody help me

Loki6946 avatar Mar 31 '24 01:03 Loki6946

try installing xorg xorg-server.

cococry avatar Mar 31 '24 11:03 cococry

try installing xorg xorg-server.

can you tel me how to install it

Loki6946 avatar Mar 31 '24 11:03 Loki6946

on which distro are you on?

cococry avatar Mar 31 '24 12:03 cococry

im running kde on ubuntu 22.04

Loki6946 avatar Mar 31 '24 13:03 Loki6946

sudo apt-get install xorg

cococry avatar Mar 31 '24 13:03 cococry

it's still the same error i run sudo apt-get install xorg and it say it's already installed

Loki6946 avatar Mar 31 '24 13:03 Loki6946

okay try: sudo apt-get install libxcb1-dev

cococry avatar Mar 31 '24 14:03 cococry

it's say libxcb1-dev is already the newest version (1.14-3ubuntu3) i try to build it again and it still the same error

Loki6946 avatar Mar 31 '24 15:03 Loki6946

i really have no idea how you would go about fixing that. you could try updating your entire system. maybe that could help

cococry avatar Mar 31 '24 16:03 cococry

okay then thanks for helping

Loki6946 avatar Apr 01 '24 04:04 Loki6946

I was trying to build a package for lyssa for nixpkgs and I too have faced the "xcb_get_setup" issue. I am putting a discussion I had in nixos disource for future reference and so that I can get notified if theres any fix for this issue. https://discourse.nixos.org/t/how-to-make-a-derivation-depend-on-another-derivation/42621/3

jossephus avatar Apr 03 '24 04:04 jossephus

okay then thanks for helping

hey there, i added xcb to the links of lyssa. try rebuilding and see if that resolves the issue.

cococry avatar Apr 13 '24 10:04 cococry

hey now i get a different error

/usr/bin/ld: /tmp/ccvV12yv.o: in function SoundTagParser::getSoundThubmnail(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, vec2s)': soundTagParser.cpp:(.text+0xbf4): undefined reference to TagLib::MPEG::File::File(char const*, bool, TagLib::AudioProperties::ReadStyle, TagLib::ID3v2::FrameFactory*)' /usr/bin/ld: /tmp/ccvV12yv.o: in function SoundTagParser::getSoundThubmnailData(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, vec2s)': soundTagParser.cpp:(.text+0x105c): undefined reference to TagLib::MPEG::File::File(char const*, bool, TagLib::AudioProperties::ReadStyle, TagLib::ID3v2::FrameFactory*)' collect2: error: ld returned 1 exit status make[1]: *** [Makefile:26: build] Error 1 make[1]: Leaving directory '/home/aldi/Downloads/lyssa' make: *** [Makefile:41: rebuild] Error 2

Loki6946 avatar Apr 13 '24 10:04 Loki6946

make sure you have taglib installed: sudo apt-get install libtag1-dev

cococry avatar Apr 14 '24 11:04 cococry

still get the same error

i try to install with the apt get method but it say libtag1-dev is already the newest version (1.11.1+dfsg.1-3ubuntu3).

and i try to build it with the dependencies link on your repo and it's still does not work

Thank you in advance for answering

Loki6946 avatar Apr 14 '24 11:04 Loki6946

any news

Loki6946 avatar May 18 '24 02:05 Loki6946

compile cglm from source: https://github.com/recp/cglm?tab=readme-ov-file#-build

That should fix the error, also you probably will need to compile libclipboard from source: https://github.com/jtanx/libclipboard?tab=readme-ov-file#building

It's very straightforward to compile both of them, don't worry.

cococry avatar May 18 '24 06:05 cococry

thanks, will try

Loki6946 avatar May 18 '24 06:05 Loki6946

still no luck

this is the error :

/usr/bin/ld: /tmp/ccSIkYAV.o: in function SoundTagParser::getSoundThubmnail(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, vec2s)': soundTagParser.cpp:(.text+0x13e4): undefined reference to TagLib::MPEG::File::File(char const*, bool, TagLib::AudioProperties::ReadStyle, TagLib::ID3v2::FrameFactory*)' /usr/bin/ld: /tmp/ccSIkYAV.o: in function SoundTagParser::getSoundThubmnailData(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, vec2s)': soundTagParser.cpp:(.text+0x182a): undefined reference to TagLib::MPEG::File::File(char const*, bool, TagLib::AudioProperties::ReadStyle, TagLib::ID3v2::FrameFactory*)' collect2: error: ld returned 1 exit status make: *** [Makefile:26: build] Error 1

Loki6946 avatar May 18 '24 06:05 Loki6946

can you do sudo apt-get install taglib?

cococry avatar May 18 '24 06:05 cococry

its say Unable to locate package taglib

Loki6946 avatar May 18 '24 06:05 Loki6946

Alright, clone taglib:

git clone https://github.com/taglib/taglib

And build from source: https://github.com/taglib/taglib/blob/master/INSTALL.md

cococry avatar May 18 '24 06:05 cococry

still not work

Loki6946 avatar May 18 '24 06:05 Loki6946

did building taglib work? and whats the error you get?

cococry avatar May 18 '24 07:05 cococry

and does /usr/local/lib/libtag.a exist?

cococry avatar May 18 '24 07:05 cococry

first when i build taglib its say error about some cppunit thing and i try to build cppunit from this link https://wiki.documentfoundation.org/Cppunit and build taglib again and now there is no error

but when building lyssa it still error

and yeah libtag.a exist

Loki6946 avatar May 18 '24 07:05 Loki6946

yeah what error does lyssa give

cococry avatar May 18 '24 07:05 cococry

this is the error /usr/bin/ld: /tmp/cccOk8zN.o: in function SoundTagParser::getSoundThubmnail(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, vec2s)': soundTagParser.cpp:(.text+0x13e4): undefined reference to TagLib::MPEG::File::File(char const*, bool, TagLib::AudioProperties::ReadStyle, TagLib::ID3v2::FrameFactory*)' /usr/bin/ld: /tmp/cccOk8zN.o: in function SoundTagParser::getSoundThubmnailData(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, vec2s)': soundTagParser.cpp:(.text+0x182a): undefined reference to TagLib::MPEG::File::File(char const*, bool, TagLib::AudioProperties::ReadStyle, TagLib::ID3v2::FrameFactory*)' collect2: error: ld returned 1 exit status make: *** [Makefile:26: build] Error 1

Loki6946 avatar May 18 '24 07:05 Loki6946

and /usr/local/lib/libtag.a exists?

cococry avatar May 18 '24 07:05 cococry

yes it exist

Loki6946 avatar May 18 '24 07:05 Loki6946