chicken-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-users] c++ example


From: Thomas Chust
Subject: Re: [Chicken-users] c++ example
Date: Wed, 1 Dec 2010 15:36:22 +0100

2010/12/1 David Dreisigmeyer <address@hidden>:
> This may be getting closer.  Here's my code again (the names are
> slightly different from above):

Hello David,

some more remarks about the example:

> [...]
> #include <iostream>
> #include "punCpp.h"
> [...]

None of the iostream functionality is ever used in the example and for
all we know the file "punCpp.h" doesn't even exist. However, stdio
functionality is used in the example. I think the right incantations
for this situation would be:

  #include <cstdio>

> [...]
> new-host:chicken daviddreisigmeyer$ csc-4.6.0 -s -c++ pun_module.scm 
> punCpp.cpp
> Undefined symbols:
>  "punCpp()", referenced from:
>      f_34(long, long, long)in pun_module.o
> ld: symbol(s) not found
> collect2: ld returned 1 exit status
> [...]

When I fix the problems in the C++ file that I described above, this
command works just fine on my machine (i686 Linux 2.6.35, glibc
2.11.90, gcc 4.5.0, GNU ld 2.20.51.0.2, CHICKEN 4.6.3).

Some linkers however require the object files on the command line to
be in a specific order for symbol resolution to work properly. I would
suggest to switch the order of command line arguments and try
something like this:

  csc -c++ -s punCpp.cpp pun_module.scm -J
  csi -R pun_module '(test_pun)'

I hope that helps :-)

Ciao,
Thomas


-- 
When C++ is your hammer, every problem looks like your thumb.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]