Trying to get OFX working on an amd64 laptop
Derek Atkins
warlord at MIT.EDU
Tue Oct 12 22:23:47 EDT 2004
Sorry, I don't know what to tell you... Sounds like a g++ bug to me...
-derek
Bill Suit <bsuit at bellsouth.net> writes:
> While attempting to address your information needs, I decided to rebuild
> libofx-0.6.6. I am not able to complete the build, with the following
> info provided from the failed build:
>
> ...
> creating ofx2qif
> make[2]: Leaving directory
> `/home/var/tmp/portage/libofx-0.6.6/work/libofx-0.6.6/ofx2qif'
> Making all in ofxdump
> make[2]: Entering directory
> `/home/var/tmp/portage/libofx-0.6.6/work/libofx-0.6.6/ofxdump'
> if g++ -DHAVE_CONFIG_H -I. -I. -I.. -I../inc -march=athlon64 -O2
> -pipe -MT ofxdump.o -MD -MP -MF ".deps/ofxdump.Tpo" \
> -c -o ofxdump.o `test -f 'ofxdump.cpp' || echo './'`ofxdump.cpp; \
> then mv ".deps/ofxdump.Tpo" ".deps/ofxdump.Po"; \
> else rm -f ".deps/ofxdump.Tpo"; exit 1; \
> fi
> ofxdump.cpp: In function `int
> ofx_proc_transaction_cb(OfxTransactionData)':
> ofxdump.cpp:207: error: `data' cannot appear in a constant-expression
> ofxdump.cpp:207: error: `.' cannot appear in a constant-expression
> ofxdump.cpp:209: error: `data' cannot appear in a constant-expression
> ofxdump.cpp:209: error: `.' cannot appear in a constant-expression
> ...
>
> and the two error lines, 'data' and '.', repeat approx. another 20 or so
> times.
>
>>From the ofxdump.cpp file:
>
> ...
> int ofx_proc_transaction_cb(struct OfxTransactionData data) #this is
> line 196#
> {
> char dest_string[255];
> cout<<"ofx_proc_transaction():\n";
>
> if(data.account_id_valid==true){
> cout<<" Account ID : "<<data.account_id<<"\n";
> }
>
> if(data.transactiontype_valid==true){
> switch(data.transactiontype){
> case data.OFX_CREDIT: strncpy(dest_string, "CREDIT: Generic credit",
> sizeof(dest_string)); #this is line 207#
> break;
> case data.OFX_DEBIT: strncpy(dest_string, "DEBIT: Generic debit",
> sizeof(dest_string));
> break;
> case data.OFX_INT: strncpy(dest_string, "INT: Interest earned or
> paid (Note: Depends on signage of amount)", sizeof(dest_string));
> break;
> case data.OFX_DIV: strncpy(dest_string, "DIV: Dividend",
> sizeof(dest_string));
> break;
> ...
> and this section of code ends on line 243,
> ...
> case data.OFX_REPEATPMT: strncpy(dest_string, "REPEATPMT: Repeating
> payment/standing order", sizeof(dest_string));
> break;
> case data.OFX_OTHER: strncpy(dest_string, "OTHER: Other",
> sizeof(dest_string));
> break;
> default : strncpy(dest_string, "Unknown transaction type",
> sizeof(dest_string));
> break;
> } #this is line 243#
>
>>From the config.log file an error message like the following:
>
> ...
> configure:2730: $? = 0
> configure:2733: test -s conftest.o
> configure:2736: $? = 0
> configure:2762: g++ -c -march=athlon64 -O2 -pipe conftest.cc >&5
> conftest.cc: In function `int main()':
> conftest.cc:13: error: `exit' undeclared (first use this function)
> conftest.cc:13: error: (Each undeclared identifier is reported only once
> for each function it appears in.)
> configure:2768: $? = 1
> configure: failed program was:
> | /* confdefs.h. */
>
> which first appeared in the 'core tests' section and repeated about 5-6
> different times farther down the log until the log ends with:
>
> ## ----------- ##
> ## confdefs.h. ##
> ## ----------- ##
>
> #define HAVE_DLFCN_H 1
> #define HAVE_EVENTGENERATOR_H 1
> #define HAVE_INTTYPES_H 1
> #define HAVE_MEMORY_H 1
> #define HAVE_PARSEREVENTGENERATORKIT_H 1
> #define HAVE_SGMLAPPLICATION_H 1
> #define HAVE_STDINT_H 1
> #define HAVE_STDLIB_H 1
> #define HAVE_STRINGS_H 1
> ...
> #define PACKAGE_VERSION ""
> #define SP_MULTI_BYTE 1
> #define STDC_HEADERS 1
> #define STDC_HEADERS 1
> #define VERSION "0.6.6"
> #endif
> #ifdef __cplusplus
> extern "C" void std::exit (int) throw (); using std::exit;
>
> configure: exit 0
>
> Thanks for any pointers with this. If I'm to correct/repair any of the
> code around line 207 and down, please be specific as to what I need to
> do. Bill
>
>
> On Tue, 2004-10-05 at 09:32, Derek Atkins wrote:
>> Link/compiled -- same difference from my standpoint. The module did
>> not get built/installed.
>>
>> As I said, without more information there's no way to help you. If you
>> could provide the log output from "make all" in src/import-export/ofx
>> that would be a start. Also, how did you "make install"?
>>
>> -derek
>>
>> Bill Suit <bsuit at bellsouth.net> writes:
>>
>> > In a few tests Benoit had me run, which were not copied to my post, he
>> > determined that the module had compiled. The problem, as I understood it
>> >>From him, is in the linking process. I think this is what he was
>> > indicating with my searching for libgncmod-ofx.so? Or are you saying
>> > that because the libgncmod-ofx.so does not exist, then the ofx module
>> > did not compile?
>> >
>> > Not withstanding the above, at this time, am I beating a 'dead horse'?
>> > TIA, Bill
>> >
>> > BTW, do you know of any distro that has a functioning 64bit compiled
>> > gnucash with ofx working? I'll install it also, if you do.
>> >
>> >
>> > On Sat, 2004-10-02 at 15:44, Derek Atkins wrote:
>> >> This certainly looks like the module didn't compile. Without
>> >> MUCH more information there's no way to divine how/why it failed
>> >> to build.
>> >>
>> >> -derek
>
>
>
--
Derek Atkins, SB '93 MIT EE, SM '95 MIT Media Laboratory
Member, MIT Student Information Processing Board (SIPB)
URL: http://web.mit.edu/warlord/ PP-ASEL-IA N1NWH
warlord at MIT.EDU PGP key available
More information about the gnucash-devel
mailing list