hello EVERYBODY!!!
A. Foreword
i am a musician and i am trying to fork Audacity-2-4-2 for developing a DAW targeting a GUITAR||BASS player specifically!
i am shocked that most of modern audio production software [i mean DAWs here] IS NOT INTENDED to be used by a guitar player.
i mean --i open Ardour or Rosegarden [ great apps!!! ] --and i am getting blown away by the richness of their interface or functionality.
they are made for PRODUCERS || PODCAST-MAKERS || MIXING_ENGINEERS || ARRANGERS ...you cannot sing while scrolling through two or three menu lists
CAN YOU UNDERSTAND ME?
i need (THREE_KNOBS || FOUR_KNOBS && A_SWITCH) --i cannot get all through those Workspaces Editors Panels Toolbars every time i need to make some primitive edit/adjustment.
so i have decided to fork Audacity --the best minimalist DAW i did ever see.
BUT modern_Audacity != vintage_Audacity
--i cannot agree with the Team in their decision of implementing NON-DESTRUCTIVE editing
[because it breaks minimalist concepts]
and their aup3 format that is made with SQLite3 [i guess] ...mmm ...you know is very resource-heavy
[my production machine is not very strong ASUS laptop [Intel Core i5-3337U 2 @1.8-2.7 GHz, Ivy Bridge], but do not even try recommending me to buy a new machine, please]
B. Please Help Me!
i am a programmer but i am not familiar with build systems --i am learning C but i started with a scripting language & an interpreter.
i have decided to build original vintage Audacity before trying to modify its code [i have the sources of both packages in my own GitHub repositories].
i was trying to build wxWidgets 3.1.3 & Audacity 2.4.2 [they are way below packages from Artix repositories];
BUT THEY ARE INTENDED FOR DEBIAN!!!
I HAVE MY SYSTEM UP-TO-DATE WITH ALL NEEDED LIBS INSTALLED
JUST LOOK AT THAT:
amelanchier:[irulan-corrino]:~$ sudo su
[sudo] password for irulan-corrino:
amelanchier:[root]:/home/irulan-corrino# pacman -Syu --needed libgtk-3-dev libgtk2.0-dev libasound2-dev python3-minimal libavformat-dev libjack-jackd2-dev
:: Synchronizing package databases...
system is up to date
world is up to date
galaxy is up to date
lib32 is up to date
universe is up to date
extra is up to date
community 7.3 MiB 2.49 MiB/s 00:03 [#########################################] 100%
multilib is up to date
error: target not found: libgtk-3-dev
error: target not found: libgtk2.0-dev
error: target not found: libasound2-dev
error: target not found: python3-minimal
error: target not found: libavformat-dev
error: target not found: libjack-jackd2-dev
amelanchier:[root]:/home/irulan-corrino#
AND CONFER THIS:
amelanchier:[root]:/home/irulan-corrino# pacman -Syu --needed gtk3 jack2 ffmpeg python alsa-lib gtk2
:: Synchronizing package databases...
system is up to date
world is up to date
galaxy is up to date
lib32 is up to date
universe is up to date
extra is up to date
community is up to date
multilib is up to date
warning: gtk3-1:3.24.36-1 is up to date -- skipping
warning: jack2-1.9.22-1 is up to date -- skipping
warning: ffmpeg-2:5.1.2-2.1 is up to date -- skipping
warning: python-3.10.9-1 is up to date -- skipping
warning: alsa-lib-1.2.8-1 is up to date -- skipping
warning: gtk2-2.24.33-2 is up to date -- skipping
:: Starting full system upgrade...
there is nothing to do
amelanchier:[root]:/home/irulan-corrino#
C. DISCUSSION
here is what i have gotten trying to build wxWidgets in up-to-date Artix system:
amelanchier:[irulan-corrino]:~/.builds/wxWidgets-Audacity$ mkdir buildgtk
amelanchier:[irulan-corrino]:~/.builds/wxWidgets-Audacity$ cd buildgtk
amelanchier:[irulan-corrino]:~/.builds/wxWidgets-Audacity/buildgtk$ ../configure --with-gtk
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking for toolkit... gtk
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
[...]
checking if expat.h is valid C++ header... yes
checking for XML_ParserCreate in -lexpat... yes
checking for GTK+ version...
checking for pkg-config... no
checking for GTK+ - version >= 2.6.0... ../configure: line 22648: --uninstalled: command not found
../configure: line 22653: --atleast-version: command not found
no
*** Could not run GTK+ test program, checking why...
*** The test program failed to compile or link. See the file config.log for the
*** exact error that occured. This usually means GTK+ is incorrectly installed.
checking for pkg-config... no
checking for GTK+ - version >= 3.0.0... no
*** A new enough version of pkg-config was not found.
*** See http://pkgconfig.sourceforge.net
checking for gtk-config... no
checking for GTK - version >= 1.2.7... no
*** The gtk-config script installed by GTK could not be found
*** If GTK was installed in PREFIX, make sure PREFIX/bin is in
*** your path, or set the GTK_CONFIG environment variable to the
*** full path to gtk-config.
checking for gtk-config... (cached) no
checking for GTK - version >= 1.2.3... no
*** The gtk-config script installed by GTK could not be found
*** If GTK was installed in PREFIX, make sure PREFIX/bin is in
*** your path, or set the GTK_CONFIG environment variable to the
*** full path to gtk-config.
configure: error:
The development files for GTK+ were not found. For GTK+ 2, please
ensure that pkg-config is in the path and that gtk+-2.0.pc is
installed. For GTK+ 1.2 please check that gtk-config is in the path,
and that the version is 1.2.3 or above. Also check that the
libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config
--libs' are in the LD_LIBRARY_PATH or equivalent.
AND IF I TRY to build Audacity with system`s wxWidgets in my production system [that has Audacity-2 with all the shared stuff, naturally] i have such error message:
Found Object X is declared "Private" BUT IT MUST BE "Public"!!! [or vice versa]
i INDEED understand its meaning and that is it
now i have found following snippet in configure script of widgets:
if test x$PKG_CONFIG != xno ; then
## don't try to run the test against uninstalled libtool libs
if $PKG_CONFIG --uninstalled $pkg_config_args; then
echo "Will use uninstalled version of GTK+ found in PKG_CONFIG_PATH"
enable_gtktest=no
fi
if $PKG_CONFIG --atleast-version $min_gtk_version $pkg_config_args; then
:
else
no_gtk=yes
fi
fi
may i try bypassing this checks? i know it would not alleviate the problem but these checks produce annoying warnings...
SO ...can anyone instruct me how to alter the code pointing wxWidgets & Audacity to look for OUR [Artix] RECENT shared libraries?
P.S.: Trying To Fix It Myself
from install.md:
from gtk3 package contents:
usr/lib/pkgconfig/
usr/lib/pkgconfig/gail.pc
usr/lib/pkgconfig/gdk-2.0.pc
usr/lib/pkgconfig/gdk-x11-2.0.pc
usr/lib/pkgconfig/gtk+-2.0.pc
usr/lib/pkgconfig/gtk+-unix-print-2.0.pc
usr/lib/pkgconfig/gtk+-x11-2.0.pc
asking my system:
amelanchier:[irulan-corrino]:~$ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl
amelanchier:[irulan-corrino]:~$ echo $LD_LIBRARY_PATH
amelanchier:[irulan-corrino]:~$ echo $GTK_CONFIG
amelanchier:[irulan-corrino]:~$ export LD_LIBRARY_PATH="/usr/lib"
amelanchier:[irulan-corrino]:~$ echo $LD_LIBRARY_PATH
/usr/lib
amelanchier:[irulan-corrino]:~$
after exporting it via .bashrc [no change if you are too impatient to read that]:
amelanchier:[irulan-corrino]:~/.builds/wxWidgets-Audacity/buildgtk$ echo $LD_LIBRARY_PATH
/usr/lib
amelanchier:[irulan-corrino]:~/.builds/wxWidgets-Audacity/buildgtk$ ../configure --with-gtk
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking for toolkit... gtk
checking for gcc... gcc
checking whether the C compiler works... yes
[...]
checking for GTK+ version...
checking for pkg-config... no
checking for GTK+ - version >= 2.6.0... ../configure: line 22648: --uninstalled: command not found
../configure: line 22653: --atleast-version: command not found
no
*** Could not run GTK+ test program, checking why...
*** The test program failed to compile or link. See the file config.log for the
*** exact error that occured. This usually means GTK+ is incorrectly installed.
checking for pkg-config... no
checking for GTK+ - version >= 3.0.0... no
*** A new enough version of pkg-config was not found.
*** See http://pkgconfig.sourceforge.net
checking for gtk-config... no
checking for GTK - version >= 1.2.7... no
*** The gtk-config script installed by GTK could not be found
*** If GTK was installed in PREFIX, make sure PREFIX/bin is in
*** your path, or set the GTK_CONFIG environment variable to the
*** full path to gtk-config.
checking for gtk-config... (cached) no
checking for GTK - version >= 1.2.3... no
*** The gtk-config script installed by GTK could not be found
*** If GTK was installed in PREFIX, make sure PREFIX/bin is in
*** your path, or set the GTK_CONFIG environment variable to the
*** full path to gtk-config.
configure: error:
The development files for GTK+ were not found. For GTK+ 2, please
ensure that pkg-config is in the path and that gtk+-2.0.pc is
installed. For GTK+ 1.2 please check that gtk-config is in the path,
and that the version is 1.2.3 or above. Also check that the
libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config
--libs' are in the LD_LIBRARY_PATH or equivalent.
amelanchier:[irulan-corrino]:~/.builds/wxWidgets-Audacity/buildgtk$
meld --"files are identical"
i see there is a hyphen in a package name wxWidgets are looking for [pkg-config vs pkgconfig in my system] but WHAT IS THE HELL gtk-config?
is that some long deprecated piece? or is it Debian-specific script?
P.P.S.: i even have done this
amelanchier:[irulan-corrino]:~/.builds/wxWidgets-Audacity/buildgtk$ echo $LD_LIBRARY_PATH
:/usr/lib
amelanchier:[irulan-corrino]:~/.builds/wxWidgets-Audacity/buildgtk$ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/usr/lib