Open OdinAwaits opened 1 year ago
I really have no idea what's wrong here. I can't spot any errors here either.
Well, me neither. Autoreconf somehow pollutes the configure file with some parts of the above message, so it looks like this:
*fine-looking code*
Some influential environment variables:
Use these variables to override the choices made by `configure' or to help
it to find libraries and programs with nonstandard names/locations.
CC C compiler command
CFLAGS C compiler flags
LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
nonstandard directory <lib dir>
LIBS libraries to pass to the linker, e.g. -l<library>
CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
you have headers in a nonstandard directory <include dir>
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
set dummy ${ac_tool_prefix}gcc; ac_word=$2
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
printf %s "checking for $ac_word... " >&6; }
if test ${ac_cv_prog_CC+y}
then :
printf %s "(cached) " >&6
else $as_nop
if test -n "$CC"; then
ac_cv_prog_CC="$CC" # Let the user override the test.
else
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
case $as_dir in #(((
''
as_dir=./ ;;
*/) ;;
*more usual code*
When I'm trying to run the script it obviously not working. I've tried to delete the plain text parts but it just gave me more syntax errors. I'm new to the linux, and I'm not really familiar with bash scripting, so any help would be appreciated. I've also attached the generated script in case someone will manage to find possible solutions configure.txt
Ubuntu 24.04, same error, same strangely generated configure file
and the ../configure log:
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether make supports nested variables... (cached) yes
../configure: line 3201: Some: command not found
../configure: line 3785: syntax error near unexpected token `('
../configure: line 3785: `case "(($ac_try" in'
Yeah, exactly the same behavior on Debian testing.
Could it be the new autotools versions we're using? Newer autotools versions are notorious for generating broken scripts given older input files.
As a workaround, I've managed to build it just invoking the compiler and pkg-config from the command line given it's just one source file. Autotools is overkill (and just horrible) for this purpose.
echo gcc -shared -march=native -mtune=native -Os -Wall -Wextra -Wparentheses -Winline -pedantic -Wunreachable-code \
$(pkg-config --cflags glib-2.0) $(pkg-config --cflags gio-unix-2.0) $(pkg-config --cflags gmodule-2.0) \
$(pkg-config --cflags cairo) \
$(pkg-config --cflags rofi) \
-o calc.so calc.c \
$(pkg-config --libs glib-2.0) $(pkg-config --libs gio-unix-2.0) $(pkg-config --cflags gmodule-2.0) \
$(pkg-config --libs cairo) \
$(pkg-config --libs rofi) |
sh -x
echo install -m0644 -oroot -groot calc.so $(pkg-config --variable=pluginsdir rofi) |
sudo sh -x
sudo apt install qalc
Autotools is overkill (and just horrible) for this purpose.
FWIW I agree but I wanted to stick with rofi convention. However, given that rofi is now also supporting meson, maybe we should just switch to meson and call it a day?
As a workaround
Just wanted to mention the obvious as well, manually deleting clearly misplaced lines and then continuing with the build process works as well
Would anyone here have some time to switch the build system over to meson? I'm not sure when I can get to it.
running
autoreconf -i
outputs this:...and generates invalid config file. All dependencies were installed. System is Ubuntu 23.04