Compiling on Fedora 19, 64bit & gnucash python bindings 64 bit

Geert Janssens janssens-geert at telenet.be
Tue Aug 20 04:45:01 EDT 2013


On 19-08-13 22:37, Alex Aycinena wrote:
> Geert,
>
> I noted that you are using Fedora 19, 64bit from your message to John:
>
> > John,
> >
> > This commit seems to generate compile warnings on 64-bit systems 
> (I'm on Fedora 19, 64bit now):
> >
> < snip>
> > Geert
>
> I recently upgraded my laptop to Fedora 19, 64bit, and my desktop is 
> still Fedora 18, 64bit. The latest release, r23146, builds fine on 
> F18, but when I try to build this same release on F19, I get a bunch 
> of swig errors as follows:
>
> libtool: compile:  gcc -DHAVE_CONFIG_H -I. 
> -I/home/gnucash-dev/svncheckouts/gnucash-clean/src/test-core -I../.. 
> -I/home/gnucash-dev/svncheckouts/gnucash-clean/src 
> -I/home/gnucash-dev/svncheckouts/gnucash-clean/src/libqof/qof -pthread 
> -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -pthread 
> -I/usr/include/guile/2.0 -Werror -Wdeclaration-after-statement -g -g 
> -Wall -Wunused -Wmissing-prototypes -Wmissing-declarations -Wno-unused 
> -MT libtest_core_guile_la-swig-unittest-support-guile.lo -MD -MP -MF 
> .deps/libtest_core_guile_la-swig-unittest-support-guile.Tpo -c 
> swig-unittest-support-guile.c  -fPIC -DPIC -o 
> .libs/libtest_core_guile_la-swig-unittest-support-guile.o
> swig-unittest-support-guile.c: In function 'SWIG_Guile_scm2newstr':
> swig-unittest-support-guile.c:778:3: error: 'scm_i_deprecated_stringp' 
> is deprecated (declared at 
> /usr/include/guile/2.0/libguile/strings.h:242) 
> [-Werror=deprecated-declarations]
>    SCM_ASSERT (SCM_STRINGP(str), str, 1, FUNC_NAME);
>    ^
> swig-unittest-support-guile.c:780:3: error: 
> 'scm_i_deprecated_string_length' is deprecated (declared at 
> /usr/include/guile/2.0/libguile/strings.h:244) 
> [-Werror=deprecated-declarations]
>    l = SCM_STRING_LENGTH(str);
>    ^
> swig-unittest-support-guile.c:781:3: error: 'scm_must_malloc' is 
> deprecated (declared at /usr/include/guile/2.0/libguile/gc.h:374) 
> [-Werror=deprecated-declarations]
>    ret = (char *) SWIG_malloc( (l + 1) * sizeof(char));
>    ^
> swig-unittest-support-guile.c:784:3: error: 
> 'scm_i_deprecated_string_chars' is deprecated (declared at 
> /usr/include/guile/2.0/libguile/strings.h:243) 
> [-Werror=deprecated-declarations]
>    memcpy(ret, SCM_STRING_CHARS(str), l);
>    ^
> swig-unittest-support-guile.c: In function 'ensure_smob_tag':
> swig-unittest-support-guile.c:1076:3: error: 'scm_sym2var' is 
> deprecated (declared at 
> /usr/include/guile/2.0/libguile/deprecated.h:818) 
> [-Werror=deprecated-declarations]
>    SCM variable = scm_sym2var(scm_str2symbol(scheme_variable_name),
>    ^
> swig-unittest-support-guile.c:1076:3: error: 'scm_str2symbol' is 
> deprecated (declared at 
> /usr/include/guile/2.0/libguile/deprecated.h:718) 
> [-Werror=deprecated-declarations]
> swig-unittest-support-guile.c:1077:9: error: 
> 'scm_module_lookup_closure' is deprecated (declared at 
> /usr/include/guile/2.0/libguile/deprecated.h:826) 
> [-Werror=deprecated-declarations]
>          scm_module_lookup_closure(swig_module),
>          ^
> swig-unittest-support-guile.c:1081:5: error: 'scm_ulong2num' is 
> deprecated (declared at 
> /usr/include/guile/2.0/libguile/deprecated.h:670) 
> [-Werror=deprecated-declarations]
>      SCM_VARIABLE_SET(variable,
>      ^
> swig-unittest-support-guile.c:1086:5: error: 'scm_num2ulong' is 
> deprecated (declared at 
> /usr/include/guile/2.0/libguile/deprecated.h:683) 
> [-Werror=deprecated-declarations]
>      *tag_variable = scm_num2ulong(SCM_VARIABLE_REF(variable), 0,
>      ^
> swig-unittest-support-guile.c: In function 'SWIG_Guile_Init':
> swig-unittest-support-guile.c:1124:3: error: 'scm_c_make_keyword' is 
> deprecated (declared at 
> /usr/include/guile/2.0/libguile/deprecated.h:741) 
> [-Werror=deprecated-declarations]
>    swig_keyword = scm_permanent_object(scm_c_make_keyword((char*) 
> "init-smob"));
>    ^
> swig-unittest-support-guile.c:1125:3: error: 'scm_str2symbol' is 
> deprecated (declared at 
> /usr/include/guile/2.0/libguile/deprecated.h:718) 
> [-Werror=deprecated-declarations]
>    swig_symbol = scm_permanent_object(scm_str2symbol("swig-smob"));
>    ^
> swig-unittest-support-guile.c: In function 'SWIG_Guile_GetModule':
> swig-unittest-support-guile.c:1141:3: error: 'scm_sym2var' is 
> deprecated (declared at 
> /usr/include/guile/2.0/libguile/deprecated.h:818) 
> [-Werror=deprecated-declarations]
>    variable = scm_sym2var(scm_str2symbol("swig-type-list-address" 
> SWIG_RUNTIME_VERSION SWIG_TYPE_TABLE_NAME),
>    ^
> swig-unittest-support-guile.c:1141:3: error: 'scm_str2symbol' is 
> deprecated (declared at 
> /usr/include/guile/2.0/libguile/deprecated.h:718) 
> [-Werror=deprecated-declarations]
> swig-unittest-support-guile.c:1142:11: error: 
> 'scm_module_lookup_closure' is deprecated (declared at 
> /usr/include/guile/2.0/libguile/deprecated.h:826) 
> [-Werror=deprecated-declarations]
>            scm_module_lookup_closure(module),
>            ^
> < snip>
>
> swig-unittest-support-guile.c:1786:3: error: 'scm_must_free' is 
> deprecated (declared at /usr/include/guile/2.0/libguile/gc.h:382) 
> [-Werror=deprecated-declarations]
>    if (must_free1 && arg1) SWIG_free(arg1);
>    ^
> cc1: all warnings being treated as errors
> make[3]: *** [libtest_core_guile_la-swig-unittest-support-guile.lo] 
> Error 1
> make[3]: Leaving directory 
> `/home/gnucash-dev/svncheckouts/gnucash-clean-build/src/test-core'
> make[2]: *** [all-recursive] Error 1
> make[2]: Leaving directory 
> `/home/gnucash-dev/svncheckouts/gnucash-clean-build/src'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory 
> `/home/gnucash-dev/svncheckouts/gnucash-clean-build'
> make: *** [all] Error 2
>
> My F18 has swig 2.0.8-1 while F19 has 2.0.10-1. Perhaps that is the cause.
>
> What did you do to get gnucash to build on F19?
Alex,

I don't see these same warnings. For me, Gnucash builds and runs just 
fine. Did you start in a clean build directory ?

And which guile packages do you have installed ? On my system I have these:
$ rpm -qa | grep guile
guile-devel-2.0.9-1.fc19.x86_64
guile-2.0.9-1.fc19.x86_64
compat-guile18-1.8.8-6.fc19.x86_64
>
> I also wanted to ask on the list about compiling gnucash for the 
> python bindings in a 64bit environment. When I configure with 
> --enable-python, I get:
>
> configure: error: cannot find Python.h in /usr/include/python2.7
>
> In have python 2.7 installed (in fact a lot of python related 
> packages). I don't know if the problem is a missing package or a 
> 32-bit vs. 64-bit issue.
>
> Have you compiled with --enable-python and gotten it to work on F18 or 
> 19 64bit? Can you, or anyone else give me some pointers as to what to do?
>
Yes, this works fine on my system as well. Did you install python-devel ?
> Thanks and regards,
>
> Alex
>
Geert


More information about the gnucash-devel mailing list