>Any other methods?
>You can send a list?
No, because each time I copy what you did in your patch to add
Q_EXPORT to a different location, yet another new 'undefined
symbols' message appears. The messages do not all appear at the
same time in one nice dump.
Reversing commit 2ee14b64 resolves the problem.
Darrell
Darrell, Slavek,
Can you confirm the size of the python-trinity package you are building. I
built python-trinity last night for the first time and I was bewildered by the
fact it took 20 minutes to build and resulted in a package that was over 20M.
10:51 phoinix:/dat_e/tde/pkg> l i686/tde-python-trinity-R14preRC1-1-i686.pkg.tar.xz
-rw-r--r-- 2442140 Feb 10 04:01 i686/tde-python-trinity-R14preRC1-1-i686.pkg.tar.xz
During the build, there was a wholesale lack of any build output. At times I
thought the build was hung, but checking with top, the build was cranking away
with cclplus pegging one of the cores at 100%.
I don't know if a library path change is needed or whether the build just
spins it wheels looking through /lib, but something seems like it is caught in a
race condition.
There is also a hardcoded search path for KDE353 or kde353 stuck in the build
somewhere.
What are others seeing?
--
David C. Rankin, J.D.,P.E.
All,
Last night I kicked off a build and the build failed at tdebase due to missing
htdig dependency. Simple fix, just added htdig as a dependency, but why the new
requirement?
--
David C. Rankin, J.D.,P.E.
Darrell,
I think these are a couple of stray doc packages, I think the help files are
in the correct spots, but these stray docs ended up in random locations:
22:47 valhalla:~> l1 /opt/trinity/share/doc/
kbfx
ksquirrel-libs
tde
22:48 valhalla:~> l1 /opt/trinity/share/doc/tde/
HTML
22:48 valhalla:~> l1 /opt/trinity/share/doc/tde/HTML/
<snip>
kdiff3
The ksquirrel-libs docs may be the whole doc package, but the others have doc
generation scripts and AUTHOR/HACKING type file. What do you suggest? Delete
them during packaging?
--
David C. Rankin, J.D.,P.E.
All,
Does anyone have a list of what the dependencies/build-order is for all of the
tde/main/libraries/x files are? I have been successfully building in this order:
<snip>
'tdelibs'
'tdebase'
'libraries/libksquirrel'
'libraries/libkdcraw'
'libraries/libkexiv2'
'libraries/libkipi'
'libraries/kipi-plugins'
'libraries/libtdeldap'
'libraries/libtqt-perl'
'libraries/mlt'
'libraries/mlt++'
I would like to turn this around and build all dependencies, then libraries,
the tde:
"dependencies/$useqt"
'dependencies/tqtinterface'
'dependencies/arts'
'dependencies/dbus-tqt'
'dependencies/dbus-1-tqt'
'dependencies/tqca-tls'
'dependencies/libart-lgpl'
'dependencies/avahi-tqt'
'dependencies/libcaldav'
'dependencies/libcarddav'
'dependencies/sip4-tqt'
'dependencies/python-tqt'
'dependencies/tqscintilla'
'libraries/libksquirrel'
'libraries/libkdcraw'
'libraries/libkexiv2'
'libraries/libkipi'
'libraries/kipi-plugins'
'libraries/libtdeldap'
'libraries/libtqt-perl'
'tdelibs'
'tdebase'
However, I have 'tdebase' listed as a dependency for 'libraries/libksquirrel'.
Can anyone confirm this is required, or do I just have a spurious 'tdebase'
stuck in the dependency list?
--
David C. Rankin, J.D.,P.E.
Darrell, Slavek, E, All,
I have spent the past few days attempting to work out a version neutral port
of superkaramba so that it will build on both python2 and python 3.3.3 systems.
I have done it -- I think... The patch is:
tdeutils-superkaramba-python2_004.diff
The easy version neutral changes needed are the following:
PyString_CheckExact -> PyBytes_CheckExact
PyString_FromString -> PyBytes_FromString
PyString_FromStringAndSize -> PyBytes_FromStringAndSize
PyInt_FromLong -> PyLong_FromLong
However, help to get the "karamba" module initialized properly in
karamba_python.cpp at 359 the new python 3 module initialization routine must be
used.
I have tried to followed: http://docs.python.org/3/howto/cporting.html under
the heading of "Module initialization and state" to include preprocessor checks
needed to accommodate python2 and python. Essentially for python 3, you must
define the karamba module with 'static struct PyModuleDef karambadef = {foo' and
then call 'PyModule_Create(&karambadef);' instead of calling
'Py_InitModule((char*)"karamba", karamba_methods);' To work with both python2
and python, preprocessor checks are included as follows:
New code:
struct module_state {
PyObject *error;
};
#if PY_MAJOR_VERSION >= 3
#define GETSTATE(m) ((struct module_state*)PyModule_GetState(m))
#else
#define GETSTATE(m) (&_state)
static struct module_state _state;
#endif
static PyObject *
error_out(PyObject *m) {
struct module_state *st = GETSTATE(m);
PyErr_SetString(st->error, "something bad happened in karamba_python.cpp");
return NULL;
}
<snip>
#if PY_MAJOR_VERSION >= 3
static int karamba_traverse(PyObject *m, visitproc visit, void *arg) {
Py_VISIT(GETSTATE(m)->error);
return 0;
}
static int karamba_clear(PyObject *m) {
Py_CLEAR(GETSTATE(m)->error);
return 0;
}
static struct PyModuleDef karambadef = {
PyModuleDef_HEAD_INIT,
"karamba",
NULL,
sizeof(struct module_state),
karamba_methods,
NULL,
karamba_traverse,
karamba_clear,
NULL
};
#define INITERROR return NULL
#else
#define INITERROR return
#endif
PyThreadState* KarambaPython::mainThreadState = 0;
KarambaPython::KarambaPython(const ThemeFile& theme, bool reloading):
pythonThemeExtensionLoaded(false), pName(0), pModule(0), pDict(0)
{
PyThreadState* myThreadState;
char pypath[1024];
getLock(&myThreadState);
// load the .py file for this .theme
PyRun_SimpleString((char*)"import sys");
//Add theme path to python path so that we can find the python file
snprintf(pypath, 1023, "sys.path.insert(0, '%s')", theme.path().ascii());
PyRun_SimpleString(pypath);
PyRun_SimpleString((char*)"sys.path.insert(0, '')");
PyImport_AddModule((char*)"karamba");
#if PY_MAJOR_VERSION >= 3
PyModule_Create(&karambadef);
#else
Py_InitModule((char*)"karamba", karamba_methods);
#endif
That's it. Then it builds on bleeding-edge arch without issue. Darrell, will
you try this patch and confirm that it works fine with python2. Then let's get a
few more eyes on it and if no objections, push it.
The patch is included below.
--
David C. Rankin, J.D.,P.E.
All,
We are working on a new web site design. Work is in progress. At
the moment I will share only that the new design looks great.
We would like some new Trinity screen shots.
Limitations:
* Must be from git (R14).
* No personal information exposed --- keep everything generic.
* No strange or unsual color combinations, no black or dark
backgrounds and wallpapers.
* Trinity apps only for these images. Certain free/libre non-
Trinity exceptions are acceptable, but only in the panel or desktop
icons.
* Screen shots from virtual machines must be full screen to appear
as a full desktop.
* Please remember we are advertising Trinity and not your desktop,
your 82 inch Jumbotron monitor, your conky talents, etc. :)
Requests:
* We need one primary classic desktop shot. This particular shot
must be a default desktop, such that all of the device icons appear
as well as the default wallpaper. Add one Trinity app, but do not
cover the default desktop elements. I am thinking the default
screen with the release notes (help handbook) and tooltips dialog.
* A couple more classic desktop shots that are not default.
* At least one traditional, "Look everybody, I have a dozen apps
open!" image.
Other screen shots are open to your liking within the previous
limitations.
Send all files to me through the list or directly.
More news about the new web site design soon to come.
Please forward this request to the user list. (Yeah, I know, I
should subscribe....)
Thank you!
Darrell
> What scope should it be declared in? When building with
>autotools, I do not experience this failure.
One idea is you are using a bleeding edge Python. Those Python
developers are like grocery store managers: they have to keep
changing the location of things to appear like they actually do
something constructive.
The tdeutils/superkaramba/src/meter_python.cpp file is the only
place I find the function PyString_CheckExact being used. The
meter_python.cpp has the following include:
#include <Python.h>
I have Python 2.7 installed. The Python.h header file has a bunch
of other header file includes, one of which PyString_CheckExact is
defined.
Perhaps look into where PyString_CheckExact is defined in your
version of Python. My guess is your version of Python.h no longer
contains an include where PyString_CheckExact is defined or perhaps
PyString_CheckExact has been replaced by a different function.
Just guessing.
The only thing certain in free/libre software is tomorrow somebody
upstream will break something that works today.
Darrell
>> Anybody else notice the following output spew when starting
>Amarok?
>> I traced the introduction of the bug to the first few days of
>Sept. 2013.
>No, all ok on my system. Just this:
>
>Amarok: [Loader] Starting amarokapp..
>Amarok: [Loader] Don't run gdb, valgrind, etc. against this
>binary! Use amarokapp.
>tdecore (TDEAction): WARNING: TDEAction::insertTDEAccel( tdeaccel
>= 0x93fa30 ): TDEAccel object already contains an action name
>"play_pause"
>tdecore (TDEAction): WARNING: TDEAction::insertTDEAccel( tdeaccel
>= 0x93fa30 ): TDEAccel object already contains an action name
>"play_pause"
Are you compiling with cmake or autotools? I am unable to build
with cmake.
Darrell