试图安装Spectrum3D音频可视化器。我试着按照安装说明,确保我有依赖等,但它失败了'make‘Bash命令找不到。我搜索并安装了'make‘和’build- but‘,然后安装就更进一步了,但是我又犯了一个错误。此外,我搜索并发现我需要安装一些依赖项- libgstreamer-gl1.0-0就是其中之一。然而,在此之前,Ubuntu指令在查找'libstreamer0.10-dev‘时失败了。
我可以运行./configure和它的成功。
现在,在执行'make‘命令之后,继续挂起。
这是错误
Making all in src
make[1]: Entering directory '/home/jon/Downloads/spectrum3d-2.7.2/src'
make all-am
make[2]: Entering directory '/home/jon/Downloads/spectrum3d-2.7.2/src'
gcc -g -O2 -pthread -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/fribidi -I/usr/include/harfbuzz -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/x86_64-linux-gnu -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -pthread -I/usr/include/gstreamer-1.0 -I/usr/include/x86_64-linux-gnu -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -o spectrum3d display.o events.o equalizer.o gstreamer.o main.o menu.o onclick.o preferences.o record.o scale.o typesource.o -lGLU -lGL -lSDL2 -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -lharfbuzz -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lgstreamer-1.0 -lgobject-2.0 -lglib-2.0
/usr/bin/ld: events.o:/home/jon/Downloads/spectrum3d-2.7.2/src/events.h:22: multiple definition of `X'; display.o:/home/jon/Downloads/spectrum3d-2.7.2/src/display.h:24: first defined here(将文件剪切为长文件以张贴所有内容)
/usr/bin/ld: typesource.o:/home/jon/Downloads/spectrum3d-2.7.2/src/typesource.h:5: multiple definition of `newEvent'; display.o:/home/jon/Downloads/spectrum3d-2.7.2/src/display.h:20: first defined here
/usr/bin/ld: typesource.o:/home/jon/Downloads/spectrum3d-2.7.2/src/typesource.c:32: multiple definition of `timer'; gstreamer.o:/home/jon/Downloads/spectrum3d-2.7.2/src/gstreamer.c:38: first defined here
/usr/bin/ld: typesource.o:/home/jon/Downloads/spectrum3d-2.7.2/src/typesource.h:10: multiple definition of `loop'; gstreamer.o:/home/jon/Downloads/spectrum3d-2.7.2/src/gstreamer.h:26: first defined here
/usr/bin/ld: typesource.o:/home/jon/Downloads/spectrum3d-2.7.2/src/typesource.h:7: multiple definition of `spect_bands'; display.o:/home/jon/Downloads/spectrum3d-2.7.2/src/display.h:22: first defined here
/usr/bin/ld: typesource.o:/home/jon/Downloads/spectrum3d-2.7.2/src/typesource.h:6: multiple definition of `tmpPath'; gstreamer.o:/home/jon/Downloads/spectrum3d-2.7.2/src/gstreamer.h:21: first defined here
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:358: spectrum3d] Error 1
make[2]: Leaving directory '/usr/local/spectrum3d-2.7.2/src'
make[1]: *** [Makefile:265: all] Error 2
make[1]: Leaving directory '/usr/local/spectrum3d-2.7.2/src'
make: *** [Makefile:340: all-recursive] Error 1所以,我找到了一个脚本来删除和重新安装'make‘,我创建并运行了它,并安装了ok。我检查过了我已经安装了‘自动’。看来我有所有的依赖。
现在,在程序中包含的说明中,我可以配置安装OK,但是当我运行'make‘时,我会得到上面的错误。
如上面所示,在输出结束之前,没有错误,主要是说'xxx首先在这里定义‘
Spectrum3D是4年前更新的一个旧程序。
我在网上尝试过一些解决方案,在Ubuntu网站上找到了一个解决方案,但不幸的是,这些说明对我并没有起作用。
链接此处:在ubuntu上安装谱3d
有人能告诉我,它太老了,没有支撑,无法正常工作。
发布于 2022-04-29 23:48:10
所以最后的答案是-
在新安装时,请按照安装说明安装所有列出的库,包括可选的“Jack”库。
我运行了这些命令(从其他帖子)-
sudo apt-get install aptitude
sudo aptitude install build-essential libgtk-3-dev libgstreamer0.10-dev libsdl1.2-dev
找不到'libstreamer0.10-dev‘我忽略了它。
然后,我使用Synaptic管理器安装‘gstreamer坏插件’,并注意到大多数其他相关插件已经安装(除了RTP和CV或QT插件以外,任何与gstreamer有关的插件)。
我在下载的spectrum3d文件夹中打开了一个终端,然后运行-
sudo ./configure CFLAGS=-fcommon
sudo make
sudo make install
这一切都工作,正确安装,图标在应用程序菜单,和应用程序似乎像预期的工作。
非常感谢steeldriver的帮助。
https://askubuntu.com/questions/1404884
复制相似问题