Compile from Source code

 

reinder's picture

Is there documentation which will describe the compile postbooks process on windows and/or on linux.

sbal's picture
User offline. Last seen 40 years 36 weeks ago. Offline
Joined: 11/17/2007

Is it possible to compile PostBooks/OpenRPT/CSVimp with open version of Qt? Documentation mentions only commercial one.

kyuri's picture
User offline. Last seen 40 years 36 weeks ago. Offline
Joined: 12/07/2007

Thanks gmoskowitz for that quick reply (thought i have to count n days before the community replies). Im tasked to evaluate opensource erp's and I find openmfg/postbooks very functional, easy to get running.... but the base hard to compile???

I'll check the documentations. i'll give feedback soon.

yogiyang's picture
User offline. Last seen 1 week 5 days ago. Offline
Joined: 12/26/2007

I would like to know as to which compilers and other development tools are used by OpenMFG developers in your company for compiling PostBooks.

Please give names of the compilers so that we can try to compile using them if they are freeware or OS tools.

Is it possible to compile PostBooks in VC++ 2005 Express?

TIA

zzzzz's picture
User offline. Last seen 40 years 36 weeks ago. Offline
Joined: 03/24/2006

yogiyang

i'm a user of openmfg and redoing the app right now. There are a couple of gotchas here and there using MS compilers and QT i'll have to dig up my notes.

I'm use VS2003, and paid the 3K for QT with VS2003 integration. If you can afford it get both tools it makes using QT allot easier.

One of the gotchas is Intellisense does not work as expected and i have to write the instructions once i figure out why Intellisense does work in all cases. I got about half of the problems figured out.

ptyler's picture
User offline. Last seen 14 hours 20 min ago. Offline
Joined: 12/10/2008

Hi:

The 2.3.0 PostBooks-docs package on SourceForge contains detailed developer documentation which I believe will answer most of your questions about how to compile the application. You can get to those resources here:

http://sourceforge.net/project/showfile ... _id=196195

Meanwhile, if you might be interested in learning more about developing code to incorporate into PostBooks/OpenMFG, we do offer developer training. And our next training session is coming up later this month.

Details on all our upcoming training classes can be found here:

http://www.xtuple.org/index.php?option= ... 0&Itemid=1

Regards,
Pierce

ned
ned's picture
User offline. Last seen 4 hours 46 min ago. Offline
Joined: 10/20/2008
Compiling PostBooks

Try the Developer Documentation at http://downloads.sourceforge.net/postbo ... erDocs.zip - due to the way SourceForge hides older download files, it's easy to miss.

jrogelstad's picture
User offline. Last seen 14 hours 37 min ago. Offline
Joined: 12/10/2008
Compile from Source code

Yes. You only need to use the commercial one if you have ambitions to commercialize (i.e. sell) your build.

From: sbal [mailto:dev@xtuple.org]
Sent: Saturday, December 01, 2007 12:16 PM
To: dev@xtuple.org
Subject: [xTuple-dev] Re: Compile from Source code

Is it possible to compile PostBooks/OpenRPT/CSVimp with open version of Qt? Documentation mentions only commercial one.

Post generated using Mail2Forum at xTuple forums

kyuri's picture
User offline. Last seen 40 years 36 weeks ago. Offline
Joined: 12/07/2007

I'm trying to checkout postbook with wincvs. But according to developer docs env setup, I will need the following:

- Hostname to use for accessing the OpenMFG CVS repository
- Username to use for accessing the OpenMFG CVS repository
- CVS tag to use when checking out OpenRPT
- CVS tag to use when checking out OpenMFG

How do I get this usernames and cvs tags?

gmoskowitz's picture
User offline. Last seen 15 hours 24 min ago. Offline
Joined: 12/10/2008

kyuri,

I just posted an update of the developer docs on SourceForge. Look at the downloads page for PostBooks to find the 2.3.0 release of Postbooks-docs.

The version of the developer env setup doc you are reading is somewhat out of date. People who want to build PostBooks do not need access to the OpenMFG CVS repository. That is only required if you are building the OpenMFG version of the software.

Use the R2_0_0 tag to get the latest stable OpenRPT.

Gil

cryan's picture
User offline. Last seen 3 days 14 hours ago. Offline
Joined: 12/10/2008

hmmm. It looks as if the variable is not being passed correctly. The simplest way to address this would be rename your openrpt-2.3.0-source directory to be openrpt. Then running qmake normally should let the script find the directory name that it is looking for. I'll have to look into the scripts later to see if some intelligence can be added to handle the openrpt-version-source naming convention.

kkmfg's picture
User offline. Last seen 40 years 36 weeks ago. Offline
Joined: 02/11/2007

Keep in mind that, if you do windows development, you will need a commercial license of QT to use any version of Visual C++ (including Express). You can, however, compile with MingGW with the open source version of QT.

ned
ned's picture
User offline. Last seen 4 hours 46 min ago. Offline
Joined: 10/20/2008
Compile from Source code

We use mingw here at xTuple. Visual what?

On 2/14/2008 4:27 PM kkmfg wrote:

Quote:

Keep in mind that, if you do windows development, you will need a
commercial license of QT to use any version of Visual C++ (including
Express). You can, however, compile with MingGW with the open source
version of QT.

Post generated using Mail2Forum at xTuple forums

pprkut's picture
User offline. Last seen 30 weeks 23 hours ago. Offline
Joined: 03/17/2008
re: Compile from Source code

I tried compiling from source, but stumbled over some problems. I read the developer guide, but it didn't really help me.
I downloaded both OpenRPT and Postbooks from Sourceforge. Building OpenRPT is no problem. It runs fine too. But I can't make postbooks compile. A plain 'qmake-qt4' does not find OPENRPT_DIR, and I don't really know which directory is needed.
Does it need the source directory, or the location of the binaries?

This is also interesting for me as I want to provide packages for Slackware.

cryan's picture
User offline. Last seen 3 days 14 hours ago. Offline
Joined: 12/10/2008

When compiling PostBooks make sure that you have the xtuple directory next to the openrpt directory. For example:

-src
--openrpt
--xtuple

When it is setup like this the compiling PostBooks should be able to find the openrpt builds. The other option you could try if you have it in a different location is to do 'qmake "OPENRPT_DIR=/path/to/openrpt"'.

yogiyang's picture
User offline. Last seen 1 week 5 days ago. Offline
Joined: 12/26/2007

zzzzz":3av9v8ep wrote:
yogiyang

i'm a user of openmfg and redoing the app right now. There are a couple of gotchas here and there using MS compilers and QT i'll have to dig up my notes.

I'm use VS2003, and paid the 3K for QT with VS2003 integration. If you can afford it get both tools it makes using QT allot easier.

One of the gotchas is Intellisense does not work as expected and i have to write the instructions once i figure out why Intellisense does work in all cases. I got about half of the problems figured out.

First of all Thanks for extending a helping hand.

I just want to add TDS, VAT and Taxation features to PostBooks as per the rules and regulations of my country. I am not interested in anything else.

I am using VS 2005 Express editions for my development. I am not an expert developer in C++.

In fact I never wanted to modify the code in any way when I downloaded PostBooks. I was under the impression that it would have been programmed with the latest Database and development concepts like MVC so it would have its Presenter (GUI) and Business logic separately layed out I will be able to add fields to existing forms (UI) as per my requirements and relocate existing fields as per my preference, but I cannot find a way to do something like this so Ultimately I have decided to resort to modify the code to make changes to the interface and to add new functionality to PostBooks as required by our organization.

I have worked with TineyERP where in you can modify an Xml file (which again is stored in the server) to make changes to the UI like adding fields, hiding fields, etc. etc.

Last thing is that I am expecting to see the complete ER Diagram of the database of PostBooks so that it becomes easy to make head and tail of data and how it is inter related, etc. etc. Currently without any such material it is a painfull process trying to detect as to what goes where and how it may affect other parts.

I just hope xTuple takes the time to document the whole database and explaing what is stored in which table, etc. etc.

ned
ned's picture
User offline. Last seen 4 hours 46 min ago. Offline
Joined: 10/20/2008
Compile from Source code

Hello,

On 1/7/2008 4:12 AM yogiyang wrote:

Quote:
I just want to add TDS, VAT and Taxation features to PostBooks as per
the rules and regulations of my country. I am not interested in anything
else.

Have you read the documentation for our existing VAT support? http://www.xtuple.com/docs/userguide/gl14.php

Quote:
Last thing is that I am expecting to see the complete ER Diagram of the
database of PostBooks so that it becomes easy to make head and tail of
data and how it is inter related, etc. etc. Currently without any such
material it is a painfull process trying to detect as to what goes where
and how it may affect other parts.

We will have a schema diagram available shortly. It's big.

Cheers,
Ned

Post generated using Mail2Forum at xTuple forums

yogiyang's picture
User offline. Last seen 1 week 5 days ago. Offline
Joined: 12/26/2007
Re: Compile from Source code

ned":2di9ecip wrote:
Hello,
Have you read the documentation for our existing VAT support? http://www.xtuple.com/docs/userguide/gl14.php

I have gone through the documentation. But what is provided is a bit too complicated for our requirement. It is perfect for a country where every state is having its own federal laws like the US but not for my country. So I want to implement it in a way which is easy to follow and use by a conventional user. To use what you provided it would require lot of brain storming and experimentation. I also want to add VAT reporting to product reports as required by our laws.

ned":2di9ecip wrote:
We will have a schema diagram available shortly. It's big.

Please also add documentation as to what goes in which table.

Thanks for prompt reply.

Regards,

Yogi Yang

yogiyang's picture
User offline. Last seen 1 week 5 days ago. Offline
Joined: 12/26/2007

ptyler":1iy6nxbf wrote:
Hi:

http://sourceforge.net/project/showfile ... _id=196195

Meanwhile, if you might be interested in learning more about developing code to incorporate into PostBooks/OpenMFG, we do offer developer training. And our next training session is coming up later this month.

Sorry I had avoided downloading the documentation. My fault. Sorry again. There is lot of information on what in needed and how we can compile the sourcecode.

Not practical to come for Asia to America for developer training. The cost is prohibitive.

Thanks,

Regards,

Yogi Yang

pprkut's picture
User offline. Last seen 30 weeks 23 hours ago. Offline
Joined: 03/17/2008

ok, so after unpacking those two packages, I have two directories. One is 'openrpt-2.3.0-source' and the other is 'xtuple-2.3.1-source'. I already said that openrpt is not the problem. When compiling postbooks I enter the second directory, which contains another folder 'xtuple' and three text files.
I enter xtuple and find the qmake project file. Now I tried the following commands:

qmake-qt4 OPENRPT_DIR=../../openrpt-2.3.0-source/bin/
qmake-qt4 OPENRPT_DIR=../../openrpt-2.3.0-source/OpenRPT/
qmake-qt4 OPENRPT_DIR=/mnt/progs/slack/sbo/test/openrpt-2.3.0-source/

all of them generate the Makefile successfully, but compiling stops with following error:

g++ -c -pipe -Wall -W -O2 -D_REENTRANT -DMAKELIB -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED -I/usr/lib/qt/mkspecs/default -I. -I../common -I..//OpenRPT/renderer -I..//OpenRPT/wrtembed -I..//MetaSQL -I/usr/lib/qt/include -Itmp/ -I. -Itmp/ -o tmp/metrics.o metrics.cpp
In file included from metrics.cpp:59:
metrics.h:65:23: error: xsqlquery.h: No such file or directory
metrics.cpp:60:20: error: QVariant: No such file or directory
metrics.h:98: error: ‘QVariant’ has not been declared
metrics.cpp: In member function ‘void Parameters::load()’:
metrics.cpp:71: error: ‘XSqlQuery’ was not declared in this scope
metrics.cpp:71: error: expected `;' before ‘q’
metrics.cpp:72: error: ‘q’ was not declared in this scope
metrics.cpp: In member function ‘void Parameters::set(const QString&, const QString&)’:
metrics.cpp:149: error: invalid conversion from ‘const char*’ to ‘int’
metrics.cpp:149: error: initializing argument 2 of ‘void Parameters::_set(const QString&, int)’
metrics.cpp: At global scope:
metrics.cpp:152: error: ‘QVariant’ has not been declared
metrics.cpp: In member function ‘void Parameters::_set(const QString&, int)’:
metrics.cpp:154: error: ‘XSqlQuery’ was not declared in this scope
metrics.cpp:154: error: expected `;' before ‘q’
metrics.cpp:155: error: ‘q’ was not declared in this scope
metrics.cpp: In member function ‘void Preferences::remove(const QString&)’:
metrics.cpp:196: error: ‘XSqlQuery’ was not declared in this scope
metrics.cpp:196: error: expected `;' before ‘q’
metrics.cpp:197: error: ‘q’ was not declared in this scope

For once, it seems the include paths are hardcoded to "../", since this never changes. But even when generating symlinks (ie a ../common pointing to ../../openrpt-2.3.0-source/common) it exits with the same error.

pprkut's picture
User offline. Last seen 30 weeks 23 hours ago. Offline
Joined: 03/17/2008

I have replaced every appearance of ${OPENRPT_DIR} with the static path "../openrpt", which is the right one for my setup. The build command now looks like this:

g++ -c -pipe -Wall -W -O2 -D_REENTRANT -DMAKELIB -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED -I/usr/lib/qt/mkspecs/default -I. -I../../openrpt/common -I../../openrpt/OpenRPT/renderer -I../../openrpt/OpenRPT/wrtembed -I../../openrpt/MetaSQL -I/usr/lib/qt/include -Itmp/ -I. -Itmp/ -o tmp/metrics.o metrics.cpp

From my point of view everything should be fine. However it still throws the same error. Somehow it doesn't find xsqlquery.h.

pprkut's picture
User offline. Last seen 30 weeks 23 hours ago. Offline
Joined: 03/17/2008

True, that does work for finding the directory. But the compilation error stays the same.

cryan's picture
User offline. Last seen 3 days 14 hours ago. Offline
Joined: 12/10/2008

I am at a loss at to why you are seeing that behavior. Look in global.pri. This file does some basic checking including searching for the openrpt directory. It determines the relative path to openrpt then other places will use that as part of config. For example in common.pro it sets the include with an extra ../ because it is one directory lower than the global.pri script.

gmoskowitz's picture
User offline. Last seen 15 hours 24 min ago. Offline
Joined: 12/10/2008
regarding the problem finding an openrpt header when buildin

pprkut,

Dumb question:
cd xtuple/common
ls ../../openrpt/common
What do you see?

Gil

pprkut's picture
User offline. Last seen 30 weeks 23 hours ago. Offline
Joined: 03/17/2008

I see this

<br />
Makefile<br />
booledit.cpp<br />
booledit.h<br />
booledit.ui<br />
common.pro<br />
common_fr.qm<br />
common_fr.ts<br />
dbtools.cpp<br />
dbtools.h<br />
doubleedit.cpp<br />
doubleedit.h<br />
doubleedit.ui<br />
header.h<br />
intedit.cpp<br />
intedit.h<br />
intedit.ui<br />
languageoptions.cpp<br />
languageoptions.h<br />
listedit.cpp<br />
listedit.h<br />
listedit.ui<br />
login.cpp<br />
login.h<br />
login.ui<br />
loginOptions.cpp<br />
loginOptions.h<br />
loginOptions.ui<br />
memdbloader.cpp<br />
memdbloader.h<br />
newvariant.cpp<br />
newvariant.h<br />
newvariant.ui<br />
parameter.cpp<br />
parameter.h<br />
parameteredit.cpp<br />
parameteredit.h<br />
parameteredit.ui<br />
paramlistedit.cpp<br />
paramlistedit.h<br />
paramlistedit.ui<br />
parsexmlutils.cpp<br />
parsexmlutils.h<br />
qlistboxvariant.cpp<br />
qlistboxvariant.h<br />
qrc_OpenRPTCommon.cpp<br />
querysource.cpp<br />
querysource.h<br />
quuencode.cpp<br />
quuencode.h<br />
reportpageoptions.cpp<br />
reportpageoptions.h<br />
stringedit.cpp<br />
stringedit.h<br />
stringedit.ui<br />
tmp/<br />
xsqlquery.cpp<br />
xsqlquery.h<br />
xvariant.cpp<br />
xvariant.h<br />

yogiyang's picture
User offline. Last seen 1 week 5 days ago. Offline
Joined: 12/26/2007
re: Compile from Source code

While trying to compile the source I am getting following errors.
I am using MinGW32 and QT Open Source version.
I am using the source that I downloaded from Source Forge server - Open Books 2.3.0

Quote:

D:\PostBooks\xtuple>C:\MinGW\bin\mingw32-make
cd common\ && C:/MinGW/bin/mingw32-make -f Makefile
mingw32-make[1]: Entering directory `D:/PostBooks/xtuple/common'
C:/MinGW/bin/mingw32-make -f Makefile.Release
mingw32-make[2]: Entering directory `D:/PostBooks/xtuple/common'
mingw32-make[2]: Nothing to be done for `first'.
mingw32-make[2]: Leaving directory `D:/PostBooks/xtuple/common'
mingw32-make[1]: Leaving directory `D:/PostBooks/xtuple/common'
cd widgets\ && C:/MinGW/bin/mingw32-make -f Makefile.dll
mingw32-make[1]: Entering directory `D:/PostBooks/xtuple/widgets'
C:/MinGW/bin/mingw32-make -f Makefile.dll.Release
mingw32-make[2]: Entering directory `D:/PostBooks/xtuple/widgets'
g++ -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-rel
oc -Wl,-s -mthreads -Wl -shared -Wl,--out-implib,c:\Qt\4.3.4\plugins\designer\li
bxtuplewidgets.a -o c:\Qt\4.3.4\plugins\designer\xtuplewidgets.dll object_script
.xtuplewidgets.Release -L"c:\Qt\4.3.4\lib" -L../lib -L../../../openrpt/lib -lxt
uplecommon -lcommon -lrenderer -lQtScript4 -lQt3Support4 -lQtSql4 -lQtXml4 -lQtG
ui4 -lQtCore4 -lQtDesigner4
C:\MinGW\bin\..\lib\gcc\mingw32\3.4.2\..\..\..\..\mingw32\bin\ld.exe: cannot fin
d -lcommon
collect2: ld returned 1 exit status
mingw32-make[2]: *** [c:\Qt\4.3.4\plugins\designer\xtuplewidgets.dll] Error 1
mingw32-make[2]: Leaving directory `D:/PostBooks/xtuple/widgets'
mingw32-make[1]: *** [release] Error 2
mingw32-make[1]: Leaving directory `D:/PostBooks/xtuple/widgets'
C:\MinGW\bin\mingw32-make: *** [sub-widgets-dll-pro-make_default] Error 2

Any idea what must be wrong here?

TIA

Yogi Yang

cybernetics's picture
User offline. Last seen 1 year 38 weeks ago. Offline
Joined: 12/10/2008

in the manual they have

cd OpenRPT−checkout−dir
qmake
make

1) Did the qmake look ok.
2) What is the ouput of the set command without params?

i.e.
C:\>set
ALLUSERSPROFILE=C:\Documents and Settings\All Users
CLASSPATH=.;C:\Program Files\Java\j2re1.4.2_11\lib\ext\QTJava.zip
.
.
..

yogiyang's picture
User offline. Last seen 1 week 5 days ago. Offline
Joined: 12/26/2007
re: Compile from Source code

The path in my environment is

Quote:
Path=C:\Program Files\PC Connectivity Solution\;C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\;C:\Program Files\Borland\BDS\4.0\Bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\Intel\DMIX;C:\Program Files\Microsoft SQL Server\90\Tools\binn\;C:\wu\Python25;C:\wu\Python25\Tools\Scripts;C:\wu\VCL\Zeos\Dlls;C:\Documents and Settings\Administrator\My Documents\Borland Studio Projects\Bpl;C:\Program Files\Microsoft Visual Studio\Common\Tools\WinNT;C:\Program Files\Microsoft Visual Studio\Common\MSDev98\Bin;C:\Program Files\Microsoft Visual Studio\Common\Tools;C:\Program Files\Microsoft Visual Studio\VC98\bin;C:\Curl;C:\Curl\include\curl;C:\MinGW\bin;C:\Qt\4.3.4\bin

QMake worked without any errors. In fact it did not give any kind of messages. the only thing that happened is that it generated the 'Makefile' that is it.

Any thing wrong here?

My directory structure is as follows (just in case if this will help in diagnosis of my problem):
D:\PostBooks
D:\PostBooks\xtuple

D:\OpenRPT

C:\Curl
C:\Curl\curl-7.18.0

C:\MinGW

C:\Qt\4.3.4\bin

TIA

Regards,

Yogi Yang

gmoskowitz's picture
User offline. Last seen 15 hours 24 min ago. Offline
Joined: 12/10/2008

yogiyang,

I've had trouble building with MinGW if Visual Studio is in my PATH, INCLUDE, and LIB variables. Try

cd D:\PostBooks\xtuple<br />
mingw32-make clean<br />
del Makefile<br />
del common\Makefile common\Makefile.*

Then
[:1n47wypo]Close the CMD window.
Remove the portions of your PATH, INCLUDE, and LIB environment variable settings that refer to Visual Studio.
Open a fresh CMD window.
Try to build again.[/:u:1n47wypo]

Gil

[/]
yogiyang's picture
User offline. Last seen 1 week 5 days ago. Offline
Joined: 12/26/2007

Ok will give this a try.

tsdogs's picture
User offline. Last seen 19 weeks 4 days ago. Offline
Joined: 03/03/2008

Yogi,
is mingw in your path? This seems to be more a problem creating the ar, but maybe that's normal on windows
no idea on what u are using, but building on linux looks much faster, that ofcourse depends on the processor.

Alessandro

yogiyang's picture
User offline. Last seen 1 week 5 days ago. Offline
Joined: 12/26/2007

tsdogs,

Yes Mingw is in my path. Here is the path that is active when I am compiling
Here it is

Quote:

ALLUSERSPROFILE=C:\Documents and Settings\All Users
APPDATA=C:\Documents and Settings\Administrator\Application Data
CLIENTNAME=Console
CommonProgramFiles=C:\Program Files\Common Files
ComSpec=C:\WINDOWS\system32\cmd.exe
HOMEDRIVE=C:
HOMEPATH=\Documents and Settings\Administrator
include=C:\Program Files\Microsoft Visual Studio\VC98\atl\include;C:\Program Files\Microsoft Visual Studio\VC98\mfc\include;C:\Program Files\Microsoft Visual Studio\VC98\include
lib=C:\Program Files\Microsoft Visual Studio\VC98\mfc\lib;C:\Program Files\Microsoft Visual Studio\VC98\lib
MSDevDir=C:\Program Files\Microsoft Visual Studio\Common\MSDev98

Path=C:\WINDOWS\system32;C:\WINDOWS;C:\Curl;C:\Curl\include\curl;C:\MinGW\bin;C:\Qt\4.3.4\bin

PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH
ProgramFiles=C:\Program Files
PROMPT=$P$G
SystemDrive=C:
SystemRoot=C:\WINDOWS
TEMP=C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp
TMP=C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp
VS80COMNTOOLS=C:\Program Files\Microsoft Visual Studio 8\Common7\Tools\
windir=C:\WINDOWS

I have spaced out the path to make it easy to spot it.
Is what is above enought do I need to add anything more here?

I forgot to mention that my QT is 4.3.4... I hope the problem is not due to version conflict or something like that.

Regars,

Yogi Yang

kyuri's picture
User offline. Last seen 40 years 36 weeks ago. Offline
Joined: 12/07/2007
re: Compile from Source code

Those are really weird errors.

By the way, even with open source QT, you can still compile and run it. I tested it on Visual Studio 2005 to compile QT applications, and can even run it debug and release mode.
I do not encounter problems using the open source version. Just do the qmake -project and nmake thing correctly. That is using qmake, you have to generate a platform independent .pro file and convert it to vcproj.

kkmfg":17yfc6r1 wrote:
Keep in mind that, if you do windows development, you will need a commercial license of QT to use any version of Visual C++ (including Express). You can, however, compile with MingGW with the open source version of QT.

..

yogiyang's picture
User offline. Last seen 1 week 5 days ago. Offline
Joined: 12/26/2007
Re: re: Compile from Source code

kyuri":ui4km3ab wrote:
Those are really weird errors.

By the way, even with open source QT, you can still compile and run it. I tested it on Visual Studio 2005 to compile QT applications, and can even run it debug and release mode.
I do not encounter problems using the open source version. Just do the qmake -project and nmake thing correctly. That is using qmake, you have to generate a platform independent .pro file and convert it to vcproj.

kkmfg":ui4km3ab wrote:
Keep in mind that, if you do windows development, you will need a commercial license of QT to use any version of Visual C++ (including Express). You can, however, compile with MingGW with the open source version of QT.

..
I am not doing any kind of commercial development.

I am just interested in learning how to compile as I think this is a very complicated task.

I am trying to recheck out the source from SVN and then re try it again with a hope that it will work righ out of the box.

I really feel that there should be some instructions for compiling PostBooks using Borland C++ also.

Regards,

Yogi Yang

yogiyang's picture
User offline. Last seen 1 week 5 days ago. Offline
Joined: 12/26/2007

I am wondering if there is a suitable IDE which we can use for editing code and for compiling instead of giving command line commands for compiling PostBooks.

tsdogs's picture
User offline. Last seen 19 weeks 4 days ago. Offline
Joined: 03/03/2008

There is QDevelop which is in early stages though. http://qdevelop.free.fr/index.php
Visual Studio, is the most used on Windows I think. I dubt there is a way to use Borland C++ to develop QT applications.

tsdogs's picture
User offline. Last seen 19 weeks 4 days ago. Offline
Joined: 03/03/2008

Eclipse could also be used...

yogiyang's picture
User offline. Last seen 1 week 5 days ago. Offline
Joined: 12/26/2007
re: Compile from Source code

After cleaning up I gave following commands

Quote:

cd\openrpt
qmake (this completes almost immediately without any messages at all)
mingw32-make

It took around 15 minutes on my 2.47 GHz PentiumD with 512 MB RAM.

cd\postbooks
cd xtuple
qmake (this completes almost immediately without any messages at all)
mingw32-make --makefile=makefile >d:\tt.txt

The compilation process is not yet completed!

On giving the following command:
mingw32-make --makefile=makefile >d:\tt.txt

I get these warnings

Quote:

Creating library file: c:\Qt\4.3.4\plugins\designer\libxtuplewidgets.a
OpenMFGWidgets.h:0: Warning: No relevant classes found. No output generated.
Warning: name _targetAmountLit is already used
'' isn't a valid widget
'' isn't a valid widget
'' isn't a valid widget
'' isn't a valid widget
'_ustomerDeposits' isn't a valid widget
'' isn't a valid widget
'' isn't a valid widget
'' isn't a valid widget
'' isn't a valid widget
'' isn't a valid widget
'' isn't a valid widget
'_name' isn't a valid widget
'' isn't a valid widget
'' isn't a valid widget
'' isn't a valid widget
'' isn't a valid widget
'_porecv' isn't a valid widget
'' isn't a valid widget
'' isn't a valid widget
'' isn't a valid widget
'' isn't a valid widget
'' isn't a valid widget
'' isn't a valid widget
'' isn't a valid widget
'' isn't a valid widget
'' isn't a valid widget
'' isn't a valid widget
'comboBox2' isn't a valid widget
'comboBox2' isn't a valid widget
'comboBox2' isn't a valid widget
'_comments' isn't a valid widget
'_price' isn't a valid widget
Warning: name tab is already used
Warning: name tab is already used
'_minimumOrder' isn't a valid widget
'_number' isn't a valid widget
'' isn't a valid widget
'_firstInvoiceNum' isn't a valid widget
'' isn't a valid widget
'' isn't a valid widget
'_effective' isn't a valid widget
'_account' isn't a valid widget
'_viewPOItem' isn't a valid widget
Warning: name _neo is already used
'_operation' isn't a valid widget
Warning: name _count is already used
../../../openrpt/lib/libwrtembed.a(reporthandler.o)(.text+0x17183):reporthandler
.cpp: undefined reference to `PreviewDialog::PreviewDialog(ORODocument*, QPrinte
r*, QWidget*)'
../../../openrpt/lib/libwrtembed.a(reporthandler.o)(.text+0x171bf):reporthandler
.cpp: undefined reference to `PreviewDialog::~PreviewDialog()'
../../../openrpt/lib/libwrtembed.a(reporthandler.o)(.text+0x17322):reporthandler
.cpp: undefined reference to `PreviewDialog::~PreviewDialog()'
../../../openrpt/lib/libwrtembed.a(reporthandler.o)(.text+0x173a3):reporthandler
.cpp: undefined reference to `PreviewDialog::~PreviewDialog()'
collect2: ld returned 1 exit status
mingw32-make[2]: *** [..\bin\xtuple.exe] Error 1
mingw32-make[1]: *** [release] Error 2
mingw32-make: *** [sub-guiclient-make_default] Error 2

The tt.txt file that is generated is currently around 2.7 MB. I am not attaching it here.

The compiling process is finally completed after 3 hours.
Regards,

Yogi Yang

yogiyang's picture
User offline. Last seen 1 week 5 days ago. Offline
Joined: 12/26/2007

tsgods,

Thanks for the command switch...

The lib folder is empty currently after running clean command that you have suggested.

Any idea how we can capture the screen output to a file or something like that?

tsdogs's picture
User offline. Last seen 19 weeks 4 days ago. Offline
Joined: 03/03/2008

yogiyang,

using this removes all the Makefiles too

<br />
mingw32-make distclean<br />

Is there a libcommon.dll (dll I suppose, I'm using Linux... version ) in
../../../openrpt/lib
which should be d:\openrpt\lib
?

cybernetics's picture
User offline. Last seen 1 year 38 weeks ago. Offline
Joined: 12/10/2008
re: Compile from Source code

The error that is in your listings seems to be a linker problem.
ld returned 1 exit status

While you seem to have your path statements correct it you seem to have Visual Studio elements in your lib and include variables and no mention of the QT and Postgresql stuff.

You might want to adjust this batch file to represent your locations and execute it in the command window just before you do the qmake.

rem<br />
PATH %PATH%;e:\PostgreSQL\8.2\bin<br />
set INCLUDE=e:\PostgreSQL\8.2\include;%INCLUDE%<br />
set LIB=e:\PostgreSQL\8.2\lib;%LIB%<br />
rem<br />
PATH %PATH%;e:\mingw\bin<br />
set INCLUDE=e:\mingw\include;;%INCLUDE%<br />
set LIB=e:\mingw\lib;%LIB%<br />
rem<br />
PATH %PATH%;E:\Qt\4.3.4\bin<br />
set INCLUDE=E:\Qt\4.3.4\include;%INCLUDE%<br />
set LIB=E:\Qt\4.3.4\lib;%LIB%

also

<br />
set LIB=;<br />
set INCLUDE=;<br />

should clean out any visual studio entries for that command window for that session only.

The instructions as published do work. I did it last week completely from scratch having never used Mingw before.

-- Martin --

yogiyang's picture
User offline. Last seen 1 week 5 days ago. Offline
Joined: 12/26/2007
Re: re: Compile from Source code

cybernetics":oy1hh1bz wrote:
The error that is in your listings seems to be a linker problem.
ld returned 1 exit status

While you seem to have your path statements correct it you seem to have Visual Studio elements in your lib and include variables and no mention of the QT and Postgresql stuff.

You might want to adjust this batch file to represent your locations and execute it in the command window just before you do the qmake.

rem<br />
PATH %PATH%;e:\PostgreSQL\8.2\bin<br />
set INCLUDE=e:\PostgreSQL\8.2\include;%INCLUDE%<br />
set LIB=e:\PostgreSQL\8.2\lib;%LIB%<br />
rem<br />
PATH %PATH%;e:\mingw\bin<br />
set INCLUDE=e:\mingw\include;;%INCLUDE%<br />
set LIB=e:\mingw\lib;%LIB%<br />
rem<br />
PATH %PATH%;E:\Qt\4.3.4\bin<br />
set INCLUDE=E:\Qt\4.3.4\include;%INCLUDE%<br />
set LIB=E:\Qt\4.3.4\lib;%LIB%

also

<br />
set LIB=;<br />
set INCLUDE=;<br />

should clean out any visual studio entries for that command window for that session only.

The instructions as published do work. I did it last week completely from scratch having never used Mingw before.

-- Martin --
Martin,
Thanks for pointing out missing paths to PostgreSQL.

Even after correcting everything as per your suggestions and as per others suggestions in this thread yet I am not able to compile.

I also downloaded QDevelop as per tsdog's suggestion as well as Eclipse.

But QDevelop just crashes when I try to open the main project file of XTuple (xtuple.pro). Against this OpenRTP project opens without any problems and compiles to exe without any problems.

By the way the source that I checked out from SVN created following folders
- csvimp
- updater
- xtuple
- xtupledocs
- xtupleserver

and its size is wooping 2075.4 MB!?!

I hope there is nothing wrong.

Regards,

Yogi Yang

tsdogs's picture
User offline. Last seen 19 weeks 4 days ago. Offline
Joined: 03/03/2008

It's probably 'cause there are the debugging informations still in the exe
doing a strip -s (where is the executable) would remove such info and reduce the size

yogiyang's picture
User offline. Last seen 1 week 5 days ago. Offline
Joined: 12/26/2007

tsdogs":ygy7f916 wrote:
It's probably 'cause there are the debugging informations still in the exe
doing a strip -s (where is the executable) would remove such info and reduce the size

Thanks I will try that.

cryan's picture
User offline. Last seen 3 days 14 hours ago. Offline
Joined: 12/10/2008

Another reason for the bloated file on windows can be if you compiled the application with RTTI and exceptions enabled. For some reason with MinGW this causes the executable size to bloat. There have been other threads on this if you require additional information.

http://www.xtuple.org/phpBB2/viewtopic.php?t=1982

yogiyang's picture
User offline. Last seen 1 week 5 days ago. Offline
Joined: 12/26/2007

cryan":1ww4n006 wrote:
Another reason for the bloated file on windows can be if you compiled the application with RTTI and exceptions enabled. For some reason with MinGW this causes the executable size to bloat. There have been other threads on this if you require additional information.

http://www.xtuple.org/phpBB2/viewtopic.php?t=1982
Thanks Cryan.

The other thread nailed the bloating problem to an extent. Now I will try and compress the EXE furhter using UPX or some such thing.

Regards,

Yogi Yang

yogiyang's picture
User offline. Last seen 1 week 5 days ago. Offline
Joined: 12/26/2007
re: Compile from Source code

At last the code got compiled!

Thanks to all who extended a helping hand.

The Checked out code did not compile but the source code that I downloaded from Source Forge did compile. It took around 3 hours to compile.
http://downloads.sourceforge.net/postbo ... g_mirror=0

One last question: The compiled exe is very large.
The precompiled exe is 18.6 MB while my compiled exe is 29.3 MB. Any idea?

Thanks,

Regards,

Yogi Yang

yogiyang's picture
User offline. Last seen 1 week 5 days ago. Offline
Joined: 12/26/2007

tsdogs":1sbzicqr wrote:
Eclipse could also be used...

I think I will evaluate Eclipse.

One more update is that even after checking out from SVN the code on compilation is giving same errors.

What to do now?

I am planning to format my system and try to compile the code on a fresh installation. Hope it works then.

cryan's picture
User offline. Last seen 3 days 14 hours ago. Offline
Joined: 12/10/2008

Quote:
../../../openrpt/lib/libwrtembed.a(reporthandler.o)(.text+0x17183):reporthandler
.cpp: undefined reference to `PreviewDialog::PreviewDialog(ORODocument*, QPrinte
r*, QWidget*)'
../../../openrpt/lib/libwrtembed.a(reporthandler.o)(.text+0x171bf):reporthandler
.cpp: undefined reference to `PreviewDialog::~PreviewDialog()'
../../../openrpt/lib/libwrtembed.a(reporthandler.o)(.text+0x17322):reporthandler
.cpp: undefined reference to `PreviewDialog::~PreviewDialog()'
../../../openrpt/lib/libwrtembed.a(reporthandler.o)(.text+0x173a3):reporthandler
.cpp: undefined reference to `PreviewDialog::~PreviewDialog()'
collect2: ld returned 1 exit status
mingw32-make[2]: *** [..\bin\xtuple.exe] Error 1
mingw32-make[1]: *** [release] Error 2
mingw32-make: *** [sub-guiclient-make_default] Error 2

Based on the errors above I would guess that the version of OpenRPT you are using is older and does not have the PreviewDialog function in it. You may want to check that you have a newer version. Either checkout from CVS the latest or download the 2.3.0 version of OpenRPT as that should have that functionality in it.

All the other errors before that are nothing important and mostly leftover bits from converting from Qt3 to Qt4 that hasn't been cleaned up yet.

yogiyang's picture
User offline. Last seen 1 week 5 days ago. Offline
Joined: 12/26/2007

cryan":2wnw7wbd wrote:
Based on the errors above I would guess that the version of OpenRPT you are using is older and does not have the PreviewDialog function in it. You may want to check that you have a newer version. Either checkout from CVS the latest or download the 2.3.0 version of OpenRPT as that should have that functionality in it.

All the other errors before that are nothing important and mostly leftover bits from converting from Qt3 to Qt4 that hasn't been cleaned up yet.
I have reverified. I am compiling the source of OpenRPT 2.3.0 and not an older version.

Thanks for looking into my problem.

Regards,

Yogi Yang