On Fri, 2019-05-31 at 20:32 +0100, Phil Wyett wrote:
On Fri, 2019-05-31 at 13:24 -0500, Ranjan Maitra wrote:
On Fri, 31 May 2019 19:58:04 +0200 Franta Hanzlík < franta@hanzlici.cz
wrote: On Wed, 29 May 2019 18:06:19 -0500 Ranjan Maitra maitra@email.com wrote:
Hi,
I have the following specfile which compiled fine in F29 but is not able to find references to standard functions in X11, etc even though the compilation happens without error (outside the rpmbuild environment). So I am wondering if anyone has some suggestions on what has changed/is going wrong.
Here is the spec file:
$ fpaste thaali.spec Uploading (1.4KiB)... https://paste.fedoraproject.org/paste/3sHHnOdGoM4YHmdzzJRzgQ
And here are the messages that I get when I try to build:
...
Just an idea - once I had a problem building a program when the make '-j' switch was greater than one. Specifying '-j1' solved it. Unfortunately, I don't even remember the cause or how it manifested itself...
Thanks! So, I use:
%make_build
I replaced this with "make -j1" or also with "make -j" or -j or -j1 appended to %make_build.
I don't really understand this, but all of them gave errors.
Thanks again for your help!
Best wishes, Ranjan _______________________________________________
Hi Ranjan,
This is an upstream configure issue.
- I took the pastebin spec file.
- Added to spec file: BuildRequires: gcc
- Saw spec file does a reconfigure and looked at upstream
configure.ac 4. Saw it is not correct. Substitute upstream configure.ac for below.
// Start
AC_INIT(thaali, 0.4.0) AC_CONFIG_SRCDIR(src/thaali.c) AM_INIT_AUTOMAKE
AM_CONFIG_HEADER(config.h)
AC_PROG_CC AC_PATH_X AC_PATH_XTRA
dnl Are we going to enable the debugging output ?? AC_ARG_ENABLE(debug, AC_HELP_STRING([--enable-debug], [Enable runtime debugging (default: no)]), debug=$enableval, debug=no)
if test "$debug" = yes; then AC_DEFINE(DEBUG,,[Enable verbose debugging output]) fi
dnl Let's do some X testing for... ;-) if test -n "$x_includes" && test "x$x_includes" != xNONE ; then CFLAGS="$CFLAGS -I$x_includes" fi if test -n "$x_libraries" && test "x$x_libraries" != xNONE ; then LDFLAGS="$LDFLAGS -L$x_libraries" fi
AC_CHECK_LIB([ICE],[IceOpenConnection],,AC_MSG_ERROR([Can't find libICE]),) AC_CHECK_LIB([SM],[SmcOpenConnection],,AC_MSG_ERROR([Can't find libSM]),) AC_CHECK_LIB([X11],[XOpenDisplay],,AC_MSG_ERROR([Can't find libX11]), -L$x_libraries $X_PRE_LIBS)
AC_SUBST(x_includes) AC_SUBST(x_libraries)
AC_OUTPUT([ Makefile src/Makefile ])
// End
Now the RPM builds fine on F30.
Note this was just a hack to get it to build and show it as an upstream issue. You can diff my changes against original configure.ac. To be honest you have some work ahead as this is all very old and out of date both upstream side and how the spec file is constructed. You will need to research to fix.
Regards
Phil
Hi,
For such a small application, you would vastly simplify things with a build system like meson.
Regards
Phil