CuteCash build errors -no rule to make target... iso-currencies-to-c.in

classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

CuteCash build errors -no rule to make target... iso-currencies-to-c.in

Mark Murray
Hi,

I am trying to build cuteCash, but get the following make errors:

make[2]: *** No rule to make target
`../src/engine/iso-currencies-to-c.in', needed by
`src/engine/iso-4217-currencies.c'.  Stop.
make[1]: *** [src/engine/CMakeFiles/engine.dir/all] Error 2
make: *** [all] Error 2

CMakeList.txt for src/engine has the following

# Command to generate the iso-4217-currencies.c file
SET (ISO_4217_C ${CMAKE_CURRENT_BINARY_DIR}/iso-4217-currencies.c)
ADD_CUSTOM_COMMAND (
  OUTPUT ${ISO_4217_C}
  DEPENDS iso-4217-currencies.scm iso-currencies-to-c.in
  COMMAND
    ${GUILE_EXECUTABLE} -s
"${CMAKE_CURRENT_SOURCE_DIR}/iso-currencies-to-c.in"
"${CMAKE_CURRENT_SOURCE_DIR}"
)
# Add dependency on iso-4217-currencies.c
SET_SOURCE_FILES_PROPERTIES (gnc-commodity.c PROPERTIES OBJECT_DEPENDS
${ISO_4217_C})

However, the only currency files in the directory are:
iso-4217-currencies.xml, and
iso-currencies-to-c.xsl

I'm new to CMake, so would appreciate any guidance to solve this
problem.
I'm working on a Linux box (Linux Mint 17).
git pull is up-to-date.

Thanks
Mark

_______________________________________________
gnucash-devel mailing list
[hidden email]
https://lists.gnucash.org/mailman/listinfo/gnucash-devel
Reply | Threaded
Open this post in threaded view
|

Re: CuteCash build errors -no rule to make target... iso-currencies-to-c.in

Derek Atkins
CuteCash still exists?

-derek

(In all seriousness, CuteCash has always been a pet project from one
GnuCash developer as a proof-of-concept for wrapping the engine in C++
and using Qt..  It's not supported by anyone other than that one
developer)

Mark Murray <[hidden email]> writes:

> Hi,
>
> I am trying to build cuteCash, but get the following make errors:
>
> make[2]: *** No rule to make target
> `../src/engine/iso-currencies-to-c.in', needed by
> `src/engine/iso-4217-currencies.c'.  Stop.
> make[1]: *** [src/engine/CMakeFiles/engine.dir/all] Error 2
> make: *** [all] Error 2
>
> CMakeList.txt for src/engine has the following
>
> # Command to generate the iso-4217-currencies.c file
> SET (ISO_4217_C ${CMAKE_CURRENT_BINARY_DIR}/iso-4217-currencies.c)
> ADD_CUSTOM_COMMAND (
>   OUTPUT ${ISO_4217_C}
>   DEPENDS iso-4217-currencies.scm iso-currencies-to-c.in
>   COMMAND
>     ${GUILE_EXECUTABLE} -s
> "${CMAKE_CURRENT_SOURCE_DIR}/iso-currencies-to-c.in"
> "${CMAKE_CURRENT_SOURCE_DIR}"
> )
> # Add dependency on iso-4217-currencies.c
> SET_SOURCE_FILES_PROPERTIES (gnc-commodity.c PROPERTIES OBJECT_DEPENDS
> ${ISO_4217_C})
>
> However, the only currency files in the directory are:
> iso-4217-currencies.xml, and
> iso-currencies-to-c.xsl
>
> I'm new to CMake, so would appreciate any guidance to solve this
> problem.
> I'm working on a Linux box (Linux Mint 17).
> git pull is up-to-date.
>
> Thanks
> Mark
>
> _______________________________________________
> gnucash-devel mailing list
> [hidden email]
> https://lists.gnucash.org/mailman/listinfo/gnucash-devel
>
>

--
       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
       [hidden email]                        PGP key available
_______________________________________________
gnucash-devel mailing list
[hidden email]
https://lists.gnucash.org/mailman/listinfo/gnucash-devel
Reply | Threaded
Open this post in threaded view
|

[Solved] CuteCash build errors -no rule to make target... iso-currencies-to-c.in

Mark Murray
OK. That's disappointing, I was starting to like Qt.

Now I'll learn how to use GTK+.

Mark


On Mon, 2015-04-20 at 10:32 -0400, Derek Atkins wrote:

> CuteCash still exists?
>
> -derek
>
> (In all seriousness, CuteCash has always been a pet project from one
> GnuCash developer as a proof-of-concept for wrapping the engine in C++
> and using Qt..  It's not supported by anyone other than that one
> developer)
>
> Mark Murray <[hidden email]> writes:
>
> > Hi,
> >
> > I am trying to build cuteCash, but get the following make errors:
> >
> > make[2]: *** No rule to make target
> > `../src/engine/iso-currencies-to-c.in', needed by
> > `src/engine/iso-4217-currencies.c'.  Stop.
> > make[1]: *** [src/engine/CMakeFiles/engine.dir/all] Error 2
> > make: *** [all] Error 2
> >
> > CMakeList.txt for src/engine has the following
> >
> > # Command to generate the iso-4217-currencies.c file
> > SET (ISO_4217_C ${CMAKE_CURRENT_BINARY_DIR}/iso-4217-currencies.c)
> > ADD_CUSTOM_COMMAND (
> >   OUTPUT ${ISO_4217_C}
> >   DEPENDS iso-4217-currencies.scm iso-currencies-to-c.in
> >   COMMAND
> >     ${GUILE_EXECUTABLE} -s
> > "${CMAKE_CURRENT_SOURCE_DIR}/iso-currencies-to-c.in"
> > "${CMAKE_CURRENT_SOURCE_DIR}"
> > )
> > # Add dependency on iso-4217-currencies.c
> > SET_SOURCE_FILES_PROPERTIES (gnc-commodity.c PROPERTIES OBJECT_DEPENDS
> > ${ISO_4217_C})
> >
> > However, the only currency files in the directory are:
> > iso-4217-currencies.xml, and
> > iso-currencies-to-c.xsl
> >
> > I'm new to CMake, so would appreciate any guidance to solve this
> > problem.
> > I'm working on a Linux box (Linux Mint 17).
> > git pull is up-to-date.
> >
> > Thanks
> > Mark
> >
> > _______________________________________________
> > gnucash-devel mailing list
> > [hidden email]
> > https://lists.gnucash.org/mailman/listinfo/gnucash-devel
> >
> >
>


_______________________________________________
gnucash-devel mailing list
[hidden email]
https://lists.gnucash.org/mailman/listinfo/gnucash-devel
Reply | Threaded
Open this post in threaded view
|

Re: CuteCash build errors -no rule to make target... iso-currencies-to-c.in

Christian Stimming-4
In reply to this post by Mark Murray
Hi Mark,

thanks for the feedback about the cutecash build system. In fact, this build
error was introduced this January as the auto-generation of some files was
changed on the Makefile.am side, but not on the cmake side. This isn't much of
a big problem. I've just committed the fix and you should be able to build
cutecash again. Have fun with this!

Contrary to what other voices here said, the "cutecash" experiment is still
able to compile and also run. To my surprise, it takes only very little effort
to keep it up to date in terms of the build system. It still serves to show
various things:

- The cmake build system could be used to build gnucash as well. For cutecash,
it builds the first 20% of gnucash, but it could be extended to build all of
gnucash just as well. Cmake has some advantages over automake such as it
configures way faster; however, migrating the existing build system is a lot
of work for little benefit, so we don't discuss this so far.

- Cutecash shows it is possible to run a C++ GUI toolkit on top of the C code
of the gnucash engine, using some of the glibmm/gtkmm wrappers

- Cutecash shows that some new features such as Undo/Redo can be implemented
rather easily once we get away from C

- Cutecash shows that another GUI on top of the gnucash engine is possible, so
that some new features are available (Undo) while the minimal subset of
existing features can be maintained. Of course, 95% of the features in main
gnucash cannot be found in a new GUI, as each feature requires a lot of GUI
code implementation, which nobody will want to do.

That's why I still keep the cutecash experiment in a state where it can be
compiled and run. Except for the rare occasions when the build system changes,
which is what you ran into.

Regards,

Christian


Am Montag, 20. April 2015, 14:24:19 schrieb Mark Murray:

> Hi,
>
> I am trying to build cuteCash, but get the following make errors:
>
> make[2]: *** No rule to make target
> `../src/engine/iso-currencies-to-c.in', needed by
> `src/engine/iso-4217-currencies.c'.  Stop.
> make[1]: *** [src/engine/CMakeFiles/engine.dir/all] Error 2
> make: *** [all] Error 2
>
> CMakeList.txt for src/engine has the following
>
> # Command to generate the iso-4217-currencies.c file
> SET (ISO_4217_C ${CMAKE_CURRENT_BINARY_DIR}/iso-4217-currencies.c)
> ADD_CUSTOM_COMMAND (
>   OUTPUT ${ISO_4217_C}
>   DEPENDS iso-4217-currencies.scm iso-currencies-to-c.in
>   COMMAND
>     ${GUILE_EXECUTABLE} -s
> "${CMAKE_CURRENT_SOURCE_DIR}/iso-currencies-to-c.in"
> "${CMAKE_CURRENT_SOURCE_DIR}"
> )
> # Add dependency on iso-4217-currencies.c
> SET_SOURCE_FILES_PROPERTIES (gnc-commodity.c PROPERTIES OBJECT_DEPENDS
> ${ISO_4217_C})
>
> However, the only currency files in the directory are:
> iso-4217-currencies.xml, and
> iso-currencies-to-c.xsl
>
> I'm new to CMake, so would appreciate any guidance to solve this
> problem.
> I'm working on a Linux box (Linux Mint 17).
> git pull is up-to-date.
>
> Thanks
> Mark
>
> _______________________________________________
> gnucash-devel mailing list
> [hidden email]
> https://lists.gnucash.org/mailman/listinfo/gnucash-devel

_______________________________________________
gnucash-devel mailing list
[hidden email]
https://lists.gnucash.org/mailman/listinfo/gnucash-devel
Reply | Threaded
Open this post in threaded view
|

Re: CuteCash build errors -no rule to make target... iso-currencies-to-c.in

Geert Janssens-4
On Wednesday 22 April 2015 22:49:04 Christian Stimming wrote:

> Hi Mark,
>
> thanks for the feedback about the cutecash build system. In fact, this
> build error was introduced this January as the auto-generation of
> some files was changed on the Makefile.am side, but not on the cmake
> side. This isn't much of a big problem. I've just committed the fix
> and you should be able to build cutecash again. Have fun with this!
>
> Contrary to what other voices here said, the "cutecash" experiment is
> still able to compile and also run. To my surprise, it takes only
> very little effort to keep it up to date in terms of the build
> system. It still serves to show various things:
>
> - The cmake build system could be used to build gnucash as well. For
> cutecash, it builds the first 20% of gnucash, but it could be
> extended to build all of gnucash just as well. Cmake has some
> advantages over automake such as it configures way faster; however,
> migrating the existing build system is a lot of work for little
> benefit, so we don't discuss this so far.
>
> - Cutecash shows it is possible to run a C++ GUI toolkit on top of the
> C code of the gnucash engine, using some of the glibmm/gtkmm wrappers
>
> - Cutecash shows that some new features such as Undo/Redo can be
> implemented rather easily once we get away from C
>
> - Cutecash shows that another GUI on top of the gnucash engine is
> possible, so that some new features are available (Undo) while the
> minimal subset of existing features can be maintained. Of course, 95%
> of the features in main gnucash cannot be found in a new GUI, as each
> feature requires a lot of GUI code implementation, which nobody will
> want to do.
>
> That's why I still keep the cutecash experiment in a state where it
> can be compiled and run. Except for the rare occasions when the build
> system changes, which is what you ran into.
>
> Regards,
>
> Christian

Hi Christian,

I'm quite happy the Cutecash experiment is still functional and showing these benefits. For me
Qt is still a viable candidate to eventually replace gtk as GUI toolkit. In that context Cutecash
is an invaluable source of experience and examples of how to do it.

So thanks for keeping it up to date.

Regards,

Geert

_______________________________________________
gnucash-devel mailing list
[hidden email]
https://lists.gnucash.org/mailman/listinfo/gnucash-devel
Reply | Threaded
Open this post in threaded view
|

Re: CuteCash build errors -no rule to make target... iso-currencies-to-c.in

Mark Murray
On Wed, 2015-04-22 at 23:43 +0200, Geert Janssens wrote:

> On Wednesday 22 April 2015 22:49:04 Christian Stimming wrote:
>
> > Hi Mark,
>
> >
>
> > thanks for the feedback about the cutecash build system. In fact,
> this
>
> > build error was introduced this January as the auto-generation of
>
> > some files was changed on the Makefile.am side, but not on the cmake
>
> > side. This isn't much of a big problem. I've just committed the fix
>
> > and you should be able to build cutecash again. Have fun with this!
>
> >
>
> > Contrary to what other voices here said, the "cutecash" experiment
> is
>
> > still able to compile and also run. To my surprise, it takes only
>
> > very little effort to keep it up to date in terms of the build
>
> > system. It still serves to show various things:
>
> >
>
> > - The cmake build system could be used to build gnucash as well. For
>
> > cutecash, it builds the first 20% of gnucash, but it could be
>
> > extended to build all of gnucash just as well. Cmake has some
>
> > advantages over automake such as it configures way faster; however,
>
> > migrating the existing build system is a lot of work for little
>
> > benefit, so we don't discuss this so far.
>
> >
>
> > - Cutecash shows it is possible to run a C++ GUI toolkit on top of
> the
>
> > C code of the gnucash engine, using some of the glibmm/gtkmm
> wrappers
>
> >
>
> > - Cutecash shows that some new features such as Undo/Redo can be
>
> > implemented rather easily once we get away from C
>
> >
>
> > - Cutecash shows that another GUI on top of the gnucash engine is
>
> > possible, so that some new features are available (Undo) while the
>
> > minimal subset of existing features can be maintained. Of course,
> 95%
>
> > of the features in main gnucash cannot be found in a new GUI, as
> each
>
> > feature requires a lot of GUI code implementation, which nobody will
>
> > want to do.
>
> >
>
> > That's why I still keep the cutecash experiment in a state where it
>
> > can be compiled and run. Except for the rare occasions when the
> build
>
> > system changes, which is what you ran into.
>
> >
>
> > Regards,
>
> >
>
> > Christian
>
>  
>
> Hi Christian,
>
>  
>
> I'm quite happy the Cutecash experiment is still functional and
> showing these benefits. For me Qt is still a viable candidate to
> eventually replace gtk as GUI toolkit. In that context Cutecash is an
> invaluable source of experience and examples of how to do it.
>
>  
>
> So thanks for keeping it up to date.
>
>  
>
> Regards,
>
>  
>
> Geert
>
>  
>
Hi,

thanks for all the feedback.
Success! I managed to build cuteCash. Hooray.

I'm not sure if or what I can contribute. But at least now I can do some
more exploring.

There are a lot of discussions out there about desktop applications and
tools we can use to build them;
- GTK vs Qt; Qt seems to be winning
- the future of GTK; many comments say it is going in the wrong
direction
- But, Cinnamon desktop is built using GTK, there may be hope
- then there are all the HTML desktop items as well, such as Wt toolkit,
NodeWebKit, Chromium Embedded Framework, TideSDK and XUL Runner and
others.

So, there is plenty to keep me busy.

Regards
Mark

_______________________________________________
gnucash-devel mailing list
[hidden email]
https://lists.gnucash.org/mailman/listinfo/gnucash-devel
Reply | Threaded
Open this post in threaded view
|

Re: CuteCash build errors -no rule to make target... iso-currencies-to-c.in

John Ralls-2

> On Apr 27, 2015, at 4:03 AM, Mark Murray <[hidden email]> wrote:
>
> On Wed, 2015-04-22 at 23:43 +0200, Geert Janssens wrote:
>> On Wednesday 22 April 2015 22:49:04 Christian Stimming wrote:
>>
>>> Hi Mark,
>>
>>>
>>
>>> thanks for the feedback about the cutecash build system. In fact,
>> this
>>
>>> build error was introduced this January as the auto-generation of
>>
>>> some files was changed on the Makefile.am side, but not on the cmake
>>
>>> side. This isn't much of a big problem. I've just committed the fix
>>
>>> and you should be able to build cutecash again. Have fun with this!
>>
>>>
>>
>>> Contrary to what other voices here said, the "cutecash" experiment
>> is
>>
>>> still able to compile and also run. To my surprise, it takes only
>>
>>> very little effort to keep it up to date in terms of the build
>>
>>> system. It still serves to show various things:
>>
>>>
>>
>>> - The cmake build system could be used to build gnucash as well. For
>>
>>> cutecash, it builds the first 20% of gnucash, but it could be
>>
>>> extended to build all of gnucash just as well. Cmake has some
>>
>>> advantages over automake such as it configures way faster; however,
>>
>>> migrating the existing build system is a lot of work for little
>>
>>> benefit, so we don't discuss this so far.
>>
>>>
>>
>>> - Cutecash shows it is possible to run a C++ GUI toolkit on top of
>> the
>>
>>> C code of the gnucash engine, using some of the glibmm/gtkmm
>> wrappers
>>
>>>
>>
>>> - Cutecash shows that some new features such as Undo/Redo can be
>>
>>> implemented rather easily once we get away from C
>>
>>>
>>
>>> - Cutecash shows that another GUI on top of the gnucash engine is
>>
>>> possible, so that some new features are available (Undo) while the
>>
>>> minimal subset of existing features can be maintained. Of course,
>> 95%
>>
>>> of the features in main gnucash cannot be found in a new GUI, as
>> each
>>
>>> feature requires a lot of GUI code implementation, which nobody will
>>
>>> want to do.
>>
>>>
>>
>>> That's why I still keep the cutecash experiment in a state where it
>>
>>> can be compiled and run. Except for the rare occasions when the
>> build
>>
>>> system changes, which is what you ran into.
>>
>>>
>>
>>> Regards,
>>
>>>
>>
>>> Christian
>>
>>
>>
>> Hi Christian,
>>
>>
>>
>> I'm quite happy the Cutecash experiment is still functional and
>> showing these benefits. For me Qt is still a viable candidate to
>> eventually replace gtk as GUI toolkit. In that context Cutecash is an
>> invaluable source of experience and examples of how to do it.
>>
>>
>>
>> So thanks for keeping it up to date.
>>
>>
>>
>> Regards,
>>
>>
>>
>> Geert
>>
>>
>>
> Hi,
>
> thanks for all the feedback.
> Success! I managed to build cuteCash. Hooray.
>
> I'm not sure if or what I can contribute. But at least now I can do some
> more exploring.
>
> There are a lot of discussions out there about desktop applications and
> tools we can use to build them;
> - GTK vs Qt; Qt seems to be winning
> - the future of GTK; many comments say it is going in the wrong
> direction
> - But, Cinnamon desktop is built using GTK, there may be hope
> - then there are all the HTML desktop items as well, such as Wt toolkit,
> NodeWebKit, Chromium Embedded Framework, TideSDK and XUL Runner and
> others.
>
> So, there is plenty to keep me busy.

There are two impediments to switching toolkits: The use of GLib throughout the GnuCash and the mixing of functional code with GUI code. As Christian has shown with CuteCash, the former can be worked around, but the latter would require that the misplaced code be duplicated, which he wisely chose not to do.

Our strategy for the first is to rewrite the core of GnuCash in C++11, removing the GLib dependencies; for the second to extract all of the code that isn't Gtk calls into the core if it belongs there or into a "controllers" directory for things like format conversion. We'd appreciate help with either task.

Regards,
John Ralls


_______________________________________________
gnucash-devel mailing list
[hidden email]
https://lists.gnucash.org/mailman/listinfo/gnucash-devel