Hi,
I have a local rpm that I have created using wbar. The spec file is here:
https://paste.fedoraproject.org/384973/14669508
I have successfully created this rpm up to Fedora 23. But have been unable to do so this time around in F24.
I get the following errors:
.... cc1plus: all warnings being treated as errors Makefile:551: recipe for target 'wbar-Main.o' failed make[2]: *** [wbar-Main.o] Error 1 make[2]: *** Waiting for unfinished jobs.... make[2]: Leaving directory '/home/maitra/rpmbuild/BUILD/wbar-2.3.4/src' Makefile:404: recipe for target 'all-recursive' failed make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory '/home/maitra/rpmbuild/BUILD/wbar-2.3.4' Makefile:345: recipe for target 'all' failed make: *** [all] Error 2 error: Bad exit status from /var/tmp/rpm-tmp.qtyTEY (%build)
I was wondering what is going wrong here. I am not very familiar with spec files, but have successfully built rpms by looking at other spec files. Btw, here is the source code for wbar:
https://code.google.com/archive/p/wbar/downloads
This not being my own software, I would be willing to submit this to fedora (when it works and if I can get sponsors) but for that, my rpm needs to get created.
Thanks again!
Best wishes, Ranjan
On Sun, 26 Jun 2016 09:26:29 -0500, Ranjan Maitra wrote:
Hi,
I have a local rpm that I have created using wbar. The spec file is here:
https://paste.fedoraproject.org/384973/14669508
I have successfully created this rpm up to Fedora 23. But have been unable to do so this time around in F24.
I get the following errors:
.... cc1plus: all warnings being treated as errors Makefile:551: recipe for target 'wbar-Main.o' failed make[2]: *** [wbar-Main.o] Error 1 make[2]: *** Waiting for unfinished jobs.... make[2]: Leaving directory '/home/maitra/rpmbuild/BUILD/wbar-2.3.4/src' Makefile:404: recipe for target 'all-recursive' failed make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory '/home/maitra/rpmbuild/BUILD/wbar-2.3.4' Makefile:345: recipe for target 'all' failed make: *** [all] Error 2 error: Bad exit status from /var/tmp/rpm-tmp.qtyTEY (%build)
I was wondering what is going wrong here.
Revisit the build output and look for a real error message from the compiler, not these that Make prints.
Michael,
Thanks!
On Sun, 26 Jun 2016 16:44:39 +0200 Michael Schwendt mschwendt@gmail.com wrote:
On Sun, 26 Jun 2016 09:26:29 -0500, Ranjan Maitra wrote:
Hi,
I have a local rpm that I have created using wbar. The spec file is here:
https://paste.fedoraproject.org/384973/14669508
I have successfully created this rpm up to Fedora 23. But have been unable to do so this time around in F24.
I get the following errors:
.... cc1plus: all warnings being treated as errors Makefile:551: recipe for target 'wbar-Main.o' failed make[2]: *** [wbar-Main.o] Error 1 make[2]: *** Waiting for unfinished jobs.... make[2]: Leaving directory '/home/maitra/rpmbuild/BUILD/wbar-2.3.4/src' Makefile:404: recipe for target 'all-recursive' failed make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory '/home/maitra/rpmbuild/BUILD/wbar-2.3.4' Makefile:345: recipe for target 'all' failed make: *** [all] Error 2 error: Bad exit status from /var/tmp/rpm-tmp.qtyTEY (%build)
I was wondering what is going wrong here.
Revisit the build output and look for a real error message from the compiler, not these that Make prints.
Where is this build output? I get the following complete output when I use:
$ rpmbuild -bb wbar.spec Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.vazhVP + umask 022 + cd /home/maitra/rpmbuild/BUILD + cd /home/maitra/rpmbuild/BUILD + rm -rf wbar-2.3.4 + /usr/bin/gzip -dc /home/maitra/rpmbuild/SOURCES/wbar-2.3.4.tgz + /usr/bin/tar -xof - + STATUS=0 + '[' 0 -ne 0 ']' + cd wbar-2.3.4 + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . + exit 0 Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.YMyuP9 + umask 022 + cd /home/maitra/rpmbuild/BUILD + cd wbar-2.3.4 + autoreconf -if aclocal: warning: couldn't open directory 'm4': No such file or directory configure.ac:11: installing './compile' src/Makefile.am:18: warning: source file '$(top_srcdir)/src/core/Bar.cc' is in a subdirectory, src/Makefile.am:18: but option 'subdir-objects' is disabled automake: warning: possible forward-incompatibility. automake: At least a source file is in a subdirectory, but the 'subdir-objects' automake: automake option hasn't been enabled. For now, the corresponding output automake: object file(s) will be placed in the top-level directory. However, automake: this behaviour will change in future Automake versions: they will automake: unconditionally cause object files to be placed in the same subdirectory automake: of the corresponding sources. automake: You are advised to start using 'subdir-objects' option throughout your automake: project, to avoid future incompatibilities. src/Makefile.am:18: warning: source file '$(top_srcdir)/src/core/Icon.cc' is in a subdirectory, src/Makefile.am:18: but option 'subdir-objects' is disabled src/Makefile.am:18: warning: source file '$(top_srcdir)/src/core/Main.cc' is in a subdirectory, src/Makefile.am:18: but option 'subdir-objects' is disabled src/Makefile.am:18: warning: source file '$(top_srcdir)/src/core/SuperBar.cc' is in a subdirectory, src/Makefile.am:18: but option 'subdir-objects' is disabled src/Makefile.am:18: warning: source file '$(top_srcdir)/src/core/SuperIcon.cc' is in a subdirectory, src/Makefile.am:18: but option 'subdir-objects' is disabled src/Makefile.am:18: warning: source file '$(top_srcdir)/src/core/XWin.cc' is in a subdirectory, src/Makefile.am:18: but option 'subdir-objects' is disabled src/Makefile.am:43: warning: source file '$(top_srcdir)/src/utils/App.cc' is in a subdirectory, src/Makefile.am:43: but option 'subdir-objects' is disabled src/Makefile.am:43: warning: source file '$(top_srcdir)/src/utils/Config.cc' is in a subdirectory, src/Makefile.am:43: but option 'subdir-objects' is disabled src/Makefile.am:43: warning: source file '$(top_srcdir)/src/utils/Utils.cc' is in a subdirectory, src/Makefile.am:43: but option 'subdir-objects' is disabled src/Makefile.am:43: warning: source file '$(top_srcdir)/src/utils/OptParser.cc' is in a subdirectory, src/Makefile.am:43: but option 'subdir-objects' is disabled src/Makefile.am:34: warning: source file '$(top_srcdir)/src/config/Run.cc' is in a subdirectory, src/Makefile.am:34: but option 'subdir-objects' is disabled src/Makefile.am:34: warning: source file '$(top_srcdir)/src/config/Functions.cc' is in a subdirectory, src/Makefile.am:34: but option 'subdir-objects' is disabled src/Makefile.am:34: warning: source file '$(top_srcdir)/src/config/MainConfig.cc' is in a subdirectory, src/Makefile.am:34: but option 'subdir-objects' is disabled + CFLAGS='-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic' + export CFLAGS + CXXFLAGS='-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic' + export CXXFLAGS + FFLAGS='-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -I/usr/lib64/gfortran/modules' + export FFLAGS + FCFLAGS='-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -I/usr/lib64/gfortran/modules' + export FCFLAGS + LDFLAGS='-Wl,-z,relro -specs=/usr/lib/rpm/redhat/redhat-hardened-ld' + export LDFLAGS + '[' 1 = 1 ']' +++ dirname ./configure ++ find . -name config.guess -o -name config.sub + '[' 1 = 1 ']' + '[' x '!=' x-specs=/usr/lib/rpm/redhat/redhat-hardened-ld ']' ++ find . -name ltmain.sh + ./configure --build=x86_64-redhat-linux-gnu --host=x86_64-redhat-linux-gnu --program-prefix= --disable-dependency-tracking --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib64 --libexecdir=/usr/libexec --localstatedir=/var --sharedstatedir=/var/lib --mandir=/usr/share/man --infodir=/usr/share/info checking for a BSD-compatible install... /bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... /bin/mkdir -p checking for gawk... gawk checking whether make sets $(MAKE)... yes checking whether make supports nested variables... yes checking whether UID '1000' is supported by ustar format... yes checking whether GID '1000' is supported by ustar format... yes checking how to create a ustar tar archive... gnutar checking for x86_64-redhat-linux-gnu-g++... no checking for x86_64-redhat-linux-gnu-c++... no checking for x86_64-redhat-linux-gnu-gpp... no checking for x86_64-redhat-linux-gnu-aCC... no checking for x86_64-redhat-linux-gnu-CC... no checking for x86_64-redhat-linux-gnu-cxx... no checking for x86_64-redhat-linux-gnu-cc++... no checking for x86_64-redhat-linux-gnu-cl.exe... no checking for x86_64-redhat-linux-gnu-FCC... no checking for x86_64-redhat-linux-gnu-KCC... no checking for x86_64-redhat-linux-gnu-RCC... no checking for x86_64-redhat-linux-gnu-xlC_r... no checking for x86_64-redhat-linux-gnu-xlC... no checking for g++... g++ checking whether the C++ compiler works... yes checking for C++ compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking for style of include used by make... GNU checking dependency style of g++... none checking for x86_64-redhat-linux-gnu-gcc... no checking for gcc... gcc checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking whether gcc understands -c and -o together... yes checking dependency style of gcc... none checking how to run the C preprocessor... gcc -E checking for grep that handles long lines and -e... /bin/grep checking for egrep... /bin/grep -E checking for ANSI C header files... yes checking whether NLS is requested... yes checking for intltool-update... /bin/intltool-update checking for intltool-merge... /bin/intltool-merge checking for intltool-extract... /bin/intltool-extract checking for xgettext... /bin/xgettext checking for msgmerge... /bin/msgmerge checking for msgfmt... /bin/msgfmt checking for gmsgfmt... /bin/msgfmt checking for perl... /bin/perl checking for perl >= 5.8.1... 5.22.2 checking for XML::Parser... ok checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking locale.h usability... yes checking locale.h presence... yes checking for locale.h... yes checking for LC_MESSAGES... yes checking libintl.h usability... yes checking libintl.h presence... yes checking for libintl.h... yes checking for ngettext in libc... yes checking for dgettext in libc... yes checking for bind_textdomain_codeset... yes checking for msgfmt... (cached) /bin/msgfmt checking for dcgettext... yes checking if msgfmt accepts -c... yes checking for gmsgfmt... (cached) /bin/msgfmt checking for xgettext... (cached) /bin/xgettext checking for x86_64-redhat-linux-gnu-pkg-config... /bin/x86_64-redhat-linux-gnu-pkg-config checking pkg-config is at least version 0.9.0... yes checking for modules... yes checking for gui_modules... yes checking for pidof... /bin/pidof checking that generated files are newer than configure... done configure: creating ./config.status config.status: creating Makefile config.status: creating share/Makefile config.status: creating etc/Makefile config.status: creating etc/wbar.cfg config.status: creating etc/wbar.desktop.in config.status: creating pixmaps/Makefile config.status: creating po/Makefile.in config.status: creating doc/Makefile config.status: creating doc/man/Makefile config.status: creating doc/man/es/Makefile config.status: creating src/Makefile config.status: creating config.h config.status: executing depfiles commands config.status: executing default-1 commands config.status: executing po/stamp-it commands =======================================
Execute make update-po
es: .............. done. 110 translated messages. de: ................ done. 108 translated messages, 2 untranslated messages. fi: .............. done. 33 translated messages, 2 fuzzy translations, 75 untranslated messages.
======================================= + make -j4 make all-recursive make[1]: Entering directory '/home/maitra/rpmbuild/BUILD/wbar-2.3.4' Making all in src make[2]: Entering directory '/home/maitra/rpmbuild/BUILD/wbar-2.3.4/src' g++ -DHAVE_CONFIG_H -I. -I.. -DPACKAGE_LOCALE_DIR=""/usr/share/locale"" -DPACKAGE_SRC_DIR=""."" -DPACKAGE_DATA_DIR=""/usr/share"" -Wall -Wunused -Werror -I../src/utils -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -c -o wbar-Bar.o `test -f '../src/core/Bar.cc' || echo './'`../src/core/Bar.cc g++ -DHAVE_CONFIG_H -I. -I.. -DPACKAGE_LOCALE_DIR=""/usr/share/locale"" -DPACKAGE_SRC_DIR=""."" -DPACKAGE_DATA_DIR=""/usr/share"" -Wall -Wunused -Werror -I../src/utils -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -c -o wbar-Icon.o `test -f '../src/core/Icon.cc' || echo './'`../src/core/Icon.cc g++ -DHAVE_CONFIG_H -I. -I.. -DPACKAGE_LOCALE_DIR=""/usr/share/locale"" -DPACKAGE_SRC_DIR=""."" -DPACKAGE_DATA_DIR=""/usr/share"" -Wall -Wunused -Werror -I../src/utils -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -c -o wbar-Main.o `test -f '../src/core/Main.cc' || echo './'`../src/core/Main.cc g++ -DHAVE_CONFIG_H -I. -I.. -DPACKAGE_LOCALE_DIR=""/usr/share/locale"" -DPACKAGE_SRC_DIR=""."" -DPACKAGE_DATA_DIR=""/usr/share"" -Wall -Wunused -Werror -I../src/utils -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -c -o wbar-SuperBar.o `test -f '../src/core/SuperBar.cc' || echo './'`../src/core/SuperBar.cc ../src/core/Main.cc:84:35: error: invalid suffix on literal; C++11 requires a space between literal and string macro [-Werror=literal-suffix] command = PACKAGE_NAME" "DEFAULT_ARGV; ^ g++ -DHAVE_CONFIG_H -I. -I.. -DPACKAGE_LOCALE_DIR=""/usr/share/locale"" -DPACKAGE_SRC_DIR=""."" -DPACKAGE_DATA_DIR=""/usr/share"" -Wall -Wunused -Werror -I../src/utils -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -c -o wbar-SuperIcon.o `test -f '../src/core/SuperIcon.cc' || echo './'`../src/core/SuperIcon.cc g++ -DHAVE_CONFIG_H -I. -I.. -DPACKAGE_LOCALE_DIR=""/usr/share/locale"" -DPACKAGE_SRC_DIR=""."" -DPACKAGE_DATA_DIR=""/usr/share"" -Wall -Wunused -Werror -I../src/utils -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -c -o wbar-XWin.o `test -f '../src/core/XWin.cc' || echo './'`../src/core/XWin.cc g++ -DHAVE_CONFIG_H -I. -I.. -DPACKAGE_LOCALE_DIR=""/usr/share/locale"" -DPACKAGE_SRC_DIR=""."" -DPACKAGE_DATA_DIR=""/usr/share"" -Wall -Wunused -Werror -I../src/utils -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -c -o wbar-App.o `test -f '../src/utils/App.cc' || echo './'`../src/utils/App.cc g++ -DHAVE_CONFIG_H -I. -I.. -DPACKAGE_LOCALE_DIR=""/usr/share/locale"" -DPACKAGE_SRC_DIR=""."" -DPACKAGE_DATA_DIR=""/usr/share"" -Wall -Wunused -Werror -I../src/utils -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -c -o wbar-Config.o `test -f '../src/utils/Config.cc' || echo './'`../src/utils/Config.cc g++ -DHAVE_CONFIG_H -I. -I.. -DPACKAGE_LOCALE_DIR=""/usr/share/locale"" -DPACKAGE_SRC_DIR=""."" -DPACKAGE_DATA_DIR=""/usr/share"" -Wall -Wunused -Werror -I../src/utils -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -c -o wbar-Utils.o `test -f '../src/utils/Utils.cc' || echo './'`../src/utils/Utils.cc g++ -DHAVE_CONFIG_H -I. -I.. -DPACKAGE_LOCALE_DIR=""/usr/share/locale"" -DPACKAGE_SRC_DIR=""."" -DPACKAGE_DATA_DIR=""/usr/share"" -Wall -Wunused -Werror -I../src/utils -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -c -o wbar-OptParser.o `test -f '../src/utils/OptParser.cc' || echo './'`../src/utils/OptParser.cc cc1plus: all warnings being treated as errors Makefile:551: recipe for target 'wbar-Main.o' failed make[2]: *** [wbar-Main.o] Error 1 make[2]: *** Waiting for unfinished jobs.... make[2]: Leaving directory '/home/maitra/rpmbuild/BUILD/wbar-2.3.4/src' Makefile:404: recipe for target 'all-recursive' failed make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory '/home/maitra/rpmbuild/BUILD/wbar-2.3.4' Makefile:345: recipe for target 'all' failed make: *** [all] Error 2 error: Bad exit status from /var/tmp/rpm-tmp.YMyuP9 (%build)
RPM build errors: Bad exit status from /var/tmp/rpm-tmp.YMyuP9 (%build)
Thanks very much again!
Best wishes, Ranjan
____________________________________________________________ FREE 3D EARTH SCREENSAVER - Watch the Earth right on your desktop! Check it out at http://www.inbox.com/earth
On Sun, 26 Jun 2016 12:44:59 -0500, Ranjan Maitra wrote:
Revisit the build output and look for a real error message from the compiler, not these that Make prints.
Where is this build output? I get the following complete output when I use:
Here:
../src/core/Main.cc:84:35: error: invalid suffix on literal; C++11 requires a space between literal and string macro [-Werror=literal-suffix] command = PACKAGE_NAME" "DEFAULT_ARGV;
And the line above that is the full invocation of the compiler.
Michael,
Thanks!
Here:
../src/core/Main.cc:84:35: error: invalid suffix on literal; C++11 requires a space between literal and string macro [-Werror=literal-suffix] command = PACKAGE_NAME" "DEFAULT_ARGV;
And the line above that is the full invocation of the compiler.
So, how should I fix this? Is this something that has to be taken care of, upstream?
Many thanks again!
Best wishes, Ranjan
____________________________________________________________ Can't remember your password? Do you need a strong and secure password? Use Password manager! It stores your passwords & protects your account. Check it out at http://mysecurelogon.com/manager
On Sun, 2016-06-26 at 18:09 -0500, Ranjan Maitra wrote:
So, how should I fix this? Is this something that has to be taken care of, upstream?
The normal procedure, as a package maintainer, would be for you to fix it by writing a patch, applying the patch to your spec file, and submit the patch for inclusion upstream.
~link
On Sun, 26 Jun 2016 23:35:39 +0200 Michael Schwendt mschwendt@gmail.com wrote:
On Sun, 26 Jun 2016 12:44:59 -0500, Ranjan Maitra wrote:
Revisit the build output and look for a real error message from the compiler, not these that Make prints.
Where is this build output? I get the following complete output when I use:
Here:
../src/core/Main.cc:84:35: error: invalid suffix on literal; C++11 requires a space between literal and string macro [-Werror=literal-suffix] command = PACKAGE_NAME" "DEFAULT_ARGV;
And the line above that is the full invocation of the compiler.
I don't get an error when I try compiling on the commandline.
Here is what I try (as per the INSTALL file):
./configure make make check
All of them pass (absolutely no errors or warnings!). So, is there something wrong with my spec file which gets me the above error?
I have uploaded my SPEC file here (again):
http://paste.fedoraproject.org/385559/46704294
Many thanks and best wishes, Ranjan
____________________________________________________________ FREE 3D EARTH SCREENSAVER - Watch the Earth right on your desktop! Check it out at http://www.inbox.com/earth
On Mon, 27 Jun 2016 10:56:52 -0500 Ranjan Maitra maitra.mbox.ignored@inbox.com wrote:
On Sun, 26 Jun 2016 23:35:39 +0200 Michael Schwendt mschwendt@gmail.com wrote:
On Sun, 26 Jun 2016 12:44:59 -0500, Ranjan Maitra wrote:
Revisit the build output and look for a real error message from the compiler, not these that Make prints.
Where is this build output? I get the following complete output when I use:
Here:
../src/core/Main.cc:84:35: error: invalid suffix on literal; C++11 requires a space between literal and string macro [-Werror=literal-suffix] command = PACKAGE_NAME" "DEFAULT_ARGV;
And the line above that is the full invocation of the compiler.
I don't get an error when I try compiling on the commandline.
Here is what I try (as per the INSTALL file):
./configure make make check
All of them pass (absolutely no errors or warnings!). So, is there something wrong with my spec file which gets me the above error?
I have uploaded my SPEC file here (again):
The error is very clear. The C++ standard that rpmbuild uses as its default (C++ 11?), detects an error in the file main.c at line 84, character 35.
When you use the command line, you are probably defaulting to an earlier standard that accepted this. IIRC, a new standard also came out last year or the year before. C++ 14 or 15.
I don't use c++ a lot, but I recall that there is an option you can set to specify the version to use. If you use info gcc (or the friendlier pinfo gcc), you can track it down, and then put it into your spec file as part of the gcc options. I *think* that is called C++-OPTIONS in spec files.
Or, you can create a patch to fix the main file by adding the space it is asking for, add it to the spec file, and also send it upstream.
Since the fix appears trivial, the second is probably the better path to follow, as it future proofs the code.