Free and easy Qt 5.1.0 or Qt 4.8.5 reporting engine [closed] - qt

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 6 years ago.
Improve this question
i got hard to print report using NCReport library
so there an other esay solution for printing
i always got errors when i want to compiler my programme using qt 4.8.5 and ncreport engine
her is the error
C:\test\build-Ncreport-Qt_4_8_5_MinGW_32_bit-Debug\debug\mainwindow.o:-1: In function `MainWindow':
C:\test\Ncreport\mainwindow.cpp:12: erreur : undefined reference to `_imp___ZN8NCReportC1EP7QObject'
C:\test\Ncreport\mainwindow.cpp:13: erreur : undefined reference to `_imp___ZN8NCReport5resetEb'
C:\test\Ncreport\mainwindow.cpp:14: erreur : undefined reference to `_imp___ZN8NCReport13setReportFileERK7QString'
C:\test\Ncreport\mainwindow.cpp:15: erreur : undefined reference to `_imp___ZN8NCReport18runReportToPrinterEibP7QWidgetRK7QString'
C:\test\Ncreport\mainwindow.cpp:12: erreur : undefined reference to `_imp___ZN8NCReportC1EP7QObject'
C:\test\Ncreport\mainwindow.cpp:13: erreur : undefined reference to `_imp___ZN8NCReport5resetEb'
C:\test\Ncreport\mainwindow.cpp:14: erreur : undefined reference to `_imp___ZN8NCReport13setReportFileERK7QString'
C:\test\Ncreport\mainwindow.cpp:14: erreur : undefined reference to `_imp___ZN8NCReport13setReportFileERK7QString'
C:\test\Ncreport\mainwindow.cpp:15: erreur : undefined reference to `_imp___ZN8NCReport18runReportToPrinterEibP7QWidgetRK7QString'
:-1: erreur : collect2: ld returned 1 exit status

You need to use the following with qmake:
LIBS += -L C:/test/Ncreport/lib -lNCReport2
where libNCReport2.a will be the name of the ncreport library, i.e. you do not need to use the "lib" prefix, nor the ".a" extension.
If that still does not help with the undefined symbols, you need to go down the way to actually look into the static library whether the symbols are present that you are trying to use in your application, i.e. whether your application is compatible with the NociSoft software they provided for you.
You can check the symbols with mingw since it has the 'nm' binary installed by default. If the symbols are not present, you will either need to grab the compatible version from NociSoft, or you need to comply in your application with the library you have.

QtRPT and QtRptDesigner
QtRPT is the easy-to-use print report engine written in C++ QtToolkit. It allows combining several reports in one XML file. For separately taken field, you can specify some condition depending on which this field will display in different font and background color, etc. The project consists of two parts: report library QtRPT and report designer application QtRptDesigner. Report file is a file in XML format. The report designer makes easy to create report XML file. Thanks to Qt library, our project can be used in programs for work in the operating systems Windows, Linux, MacOS
http://qtrpt.sourceforge.net/

Related

What happened to the QGeoMapType?

Question is mainly on the title. Details are,
I am asked to convert a slightly old Qt project that is claimed to be compatible with 5.12, which seems it is not, to Qt 5.15 or higher. So, I am debugging errors and I saw,
#include <QtLocation/private/qgeomaptype_p.h>
...
QGeoMapType::MapStyle getMapStyle() { return _mapType; }
However, this doesn't work out in Qt 5.15.5. I googled the errors and can't get much.
Error output:
...MapProvider.h:35: error: Use of undeclared identifier 'QGeoMapType'
Okey, after a little more digging I realized that this file is in another directory in my system.
Qt\5.15.2\msvc2019_64\include\QtLocation\5.15.2\QtLocation\private
As you can see, because of 5.15.2 directory it seems Qt can't find the files. After I changed include path to
#include "QtLocation/5.15.2/QtLocation/private/qgeomaptype_p.h"
the filesystem can find it. However, now the problem is Qt can't find some files in qgeomaptype_p.h , all of them are missing QtLocation/5.15.2 prefix.

About ROS_RMPT_SLAM package compiling issue

While doing catkin_make ROS_MRPT_SLAM, I got following error
In file included from /usr/include/mrpt/base/include/mrpt/utils/CFileGZInputStream.h:12:0,
from /home/ian/catkin_ws/src/mrpt_slam/mrpt_ekf_slam_2d/include/mrpt_ekf_slam_2d/mrpt_ekf_slam_2d.h:11,
from /home/ian/catkin_ws/src/mrpt_slam/mrpt_ekf_slam_2d/src/mrpt_ekf_slam_2d.cpp:7:
/usr/include/mrpt/base/include/mrpt/utils/CStream.h: In member function ‘void mrpt::utils::CStream::WriteVariant(T)’:
/usr/include/mrpt/base/include/mrpt/utils/CStream.h:313:15: error: use of ‘auto’ in lambda parameter declaration only available with -std=c++14 or -std=gnu++14
t.match([&](auto& o) { this->WriteObject(o); });
^
/usr/include/mrpt/base/include/mrpt/utils/CStream.h: In lambda function:
/usr/include/mrpt/base/include/mrpt/utils/CStream.h:313:45: error: no matching function for call to ‘mrpt::utils::CStream::WriteObject(int&)’
t.match([&](auto& o) { this->WriteObject(o); });
I guess it's compatibility matter or something because there were missing header files and so on.
This is the ROS_PACKAGE wiki: http://wiki.ros.org/mrpt_slam
And I just followed instruction from official MRPT website.
If the developer or anyone who is familiar with mrpt toolkit sees this question, may I get some advice about these errors?
By the way, I installed mrpt toolkit using the following website's instruction: http://www.mrpt.org/MRPT_in_GNU/Linux_repositories.
I'm the main author of MRPT and of part of the ROS packages.
Sorry for the mess, but you found us in the transition between the mrpt series 1.5.* and a new mayor rewrite based on C++14 which currently is published in git as mrpt 1.9.9 and eventually will be released as 2.0.0.
This transition must be propagated to the ros nodes, but so far we have upgraded mrpt_navigation only, mrpt_slam is in the to-do list.
So: a solution is to install an mrpt version of the 1.5.* series, and to build the ros packages from sources, paying attention to checking out the branches named compat-mrpt-1.5.
Hope this helps!

frama-c gui warning Mime type 'text/x-csrc' not found

While running
frama-c-gui aluminium
on open suse 13.1 gives a warning message:
[gui] warning: Mime type 'text/x-csrc' not found
What could be the cause and solution for this?
frama-c is relying on the gtksourceview library to provide syntax highlighting in the GUI (both for the normalized code and the original source view). It thus asks gtksourceview for the language definition corresponding to the text/x-csrc mime type, corresponding to C source files. The warning is emitted if gtksourceview does not find such language definition.
You might want to check whether your installation of gtksourceview indeed includes proper language definitions (on my Debian, this is located under /usr/share/gtksourceview-2.0/language-specs/, and if not whether there is some package that could provide them.

How to set "C++ Standard Library Type" to "static" in Xcode 4?

I have an Xcode 3.2 project (sqlite3 with icu) that builds correctly, and I'm trying to recreate it in Xcode 4. I'm getting link errors:
Undefined symbols for architecture x86_64:
"vtable for __cxxabiv1::__si_class_type_info", referenced from:
typeinfo for icu_48::SortKeyByteSinkin libicui18n.a(ucol.ao)
...
"___gxx_personality_v0", referenced from:
Dwarf Exception Unwind Info (__eh_frame) in libicui18n.a(uregex.ao)
...
I had this once before, with Xcode 3.2. I it then by changing build setting Linking-> C++ Standard Library Type to static (the default is dynamic). If I understand the docs correctly, the actual flag is STANDARD_C_PLUS_PLUS_LIBRARY_TYPE.
But I can't find that setting in Xcode 4!
EDIT
The main module (sqlite3) is C, but the ICU library is C++, presumably with C declarations. I can build sqlite3 fine by itself, it's when I need to link in the ICU library that the trouble starts.
Your app may be C but it looks like libicui18n includes C++.
What happens if you rename your main.m to main.mm? That should cause it to be linked against the standard C++ library.

illegal text reloc to non_lazy_ptr error while building in xcode 4 with libav* libraries

I'm trying to build a simple application that uses ffmpeg's libav* libraries in xcode 4 and getting the following error:
ld: illegal text reloc to non_lazy_ptr from /ffmpeg/temp/ffmpeg-0.8/builduni/lib/libavcodec.a(ac3.o) in _ff_ac3_bit_alloc_calc_psd for architecture i386
I've already tried to run ranlib -c libavcodec.a to fix this problem, but nothing happend.
One more thing: my libav* libraries are fat binaries (i386 + x86_64).
Any ideas what can it be?
I have the same error. Finally, I got the solution at
http://lists.apple.com/archives/unix-porting/2008/Jan/msg00027.html
just add other link flag:
-read_only_relocs suppress
* EXPLANATION * The two assembly commands load the absolutes address of _trail into R15. Doing so is fine if _trail is ultimately
in the same linkage unit. _trail is in libmodule.dylib. For this to
work, at runtime the dynamic loader (dyld) would have to rewrite the
two instructions. Normally dyld only updates data pointers. One work
around is to make libdyalog an archive (e.g. libdyalog.a) and link
that with pere.s. Then all the code would be in the same linkage unit,
so there would be no need for runtime text relocs. The runtime (dyld)
does support text relocs (updating instructions) for i386, but you
need to link with -read_only_relocs suppress.

Resources