[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-bindings
Subject:    Re: [Kde-bindings] Building Qyoto on Windows
From:       Steven Boswell II <ulatekh () yahoo ! com>
Date:       2012-06-02 17:56:13
Message-ID: 1338659773.93650.YahooMailNeo () web160403 ! mail ! bf1 ! yahoo ! com
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


Enclosed are my latest build instructions for MS Windows.
Also enclosed is a patch that hacks assemblygen to work around a problem we're \
currently experiencing with QModelIndex.

Steven Boswell


________________________________
 From: Jeff Alstadt <jeff.alstadt@centare.com>
To: "kde-bindings@kde.org" <kde-bindings@kde.org> 
Sent: Saturday, June 2, 2012 10:16 AM
Subject: [Kde-bindings] Building Qyoto on Windows
 

 
I am interested in building Qyoto on Windows using VS 2010. 
If so does anyone have any steps that could be followed.
 
I was able to get it to build on Linux successfully.
 
Any advice would be greatly appreciated.
 
Regards,
Jeff Alstadt
 
 
_______________________________________________
Kde-bindings mailing list
Kde-bindings@kde.org
https://mail.kde.org/mailman/listinfo/kde-bindings


[Attachment #5 (text/html)]

<html><body><div style="color:#000; background-color:#fff; font-family:times new \
roman, new york, times, serif;font-size:12pt"><div><span>Enclosed are my latest build \
instructions for MS Windows.</span></div><div><span>Also enclosed is a patch that \
hacks assemblygen to work around a problem we're currently experiencing with \
QModelIndex.</span></div><div><span><br></span></div><div><span>Steven \
Boswell</span></div><div><br></div>  <div style="font-size: 12pt; font-family: 'times \
new roman', 'new york', times, serif; "> <div style="font-size: 12pt; font-family: \
'times new roman', 'new york', times, serif; "> <div dir="ltr"> <font size="2" \
face="Arial"> <hr size="1">  <b><span style="font-weight:bold;">From:</span></b> Jeff \
Alstadt &lt;jeff.alstadt@centare.com&gt;<br> <b><span style="font-weight: \
bold;">To:</span></b> "kde-bindings@kde.org" &lt;kde-bindings@kde.org&gt; <br> \
<b><span style="font-weight: bold;">Sent:</span></b> Saturday, June 2, 2012 10:16  \
AM<br> <b><span style="font-weight: bold;">Subject:</span></b> [Kde-bindings] \
Building Qyoto on Windows<br> </font> </div> <br> <div id="yiv561786903">

 
 
<style><!--
#yiv561786903  
 _filtered #yiv561786903 {font-family:"Cambria Math";panose-1:2 4 5 3 5 4 6 3 2 4;}
 _filtered #yiv561786903 {font-family:Calibri;panose-1:2 15 5 2 2 2 4 3 2 4;}
#yiv561786903  
#yiv561786903 p.yiv561786903MsoNormal, #yiv561786903 li.yiv561786903MsoNormal, \
#yiv561786903 div.yiv561786903MsoNormal  \
{margin:0in;margin-bottom:.0001pt;font-size:11.0pt;font-family:"sans-serif";} \
#yiv561786903 a:link, #yiv561786903 span.yiv561786903MsoHyperlink  \
{color:blue;text-decoration:underline;} #yiv561786903 a:visited, #yiv561786903 \
span.yiv561786903MsoHyperlinkFollowed  {color:purple;text-decoration:underline;}
#yiv561786903 span.yiv561786903EmailStyle17
	{font-family:"sans-serif";color:windowtext;}
#yiv561786903 .yiv561786903MsoChpDefault
	{font-family:"sans-serif";}
 _filtered #yiv561786903 {margin:1.0in 1.0in 1.0in 1.0in;}
#yiv561786903 div.yiv561786903WordSection1
	{}
--></style>

<div>
<div class="yiv561786903WordSection1">
<div class="yiv561786903MsoNormal">I am interested in building Qyoto on Windows using \
VS 2010.  </div> 
<div class="yiv561786903MsoNormal">If so does anyone have any steps that could be \
followed.</div>  <div class="yiv561786903MsoNormal"> &nbsp;</div> 
<div class="yiv561786903MsoNormal">I was able to get it to build on Linux \
successfully.</div>  <div class="yiv561786903MsoNormal"> &nbsp;</div> 
<div class="yiv561786903MsoNormal">Any advice would be greatly appreciated.</div> 
<div class="yiv561786903MsoNormal"> &nbsp;</div> 
<div class="yiv561786903MsoNormal">Regards,</div> 
<div class="yiv561786903MsoNormal">Jeff Alstadt</div> 
<div class="yiv561786903MsoNormal"> &nbsp;</div> 
<div class="yiv561786903MsoNormal"> &nbsp;</div> 
</div>
</div>

</div><br>_______________________________________________<br>Kde-bindings mailing \
list<br><a ymailto="mailto:Kde-bindings@kde.org" \
href="mailto:Kde-bindings@kde.org">Kde-bindings@kde.org</a><br><a \
href="https://mail.kde.org/mailman/listinfo/kde-bindings" \
target="_blank">https://mail.kde.org/mailman/listinfo/kde-bindings</a><br><br><br> \
                </div> </div>  </div></body></html>
--1466435115-98815861-1338659773=:93650--


["qyoto-windows-build.txt" (text/plain)]

General setup:
Install QtSDK.
Install CMake.
Copy C:\QtSDK\mingw\bin\* to C:\QtSDK\mingw\libexec\gcc\mingw32\4.4.0\ (version may \
vary). Copy libgcc_s_dw2-1.dll from your MinGW bin directory to your CMake bin \
directory.

Downloading projects:
git clone git://anongit.kde.org/smokegen
git clone git://anongit.kde.org/smokeqt
git clone -b assemblies git://gitorious.org/assemblygen/assemblygen.git

smokegen:
In CMake, set your source directory to point to smokegen, and your build directory to \
smokegen-build (in the same directory as smokegen). Press the "Configure button",
When asked to specify the generator, select "MinGW Makefiles" and "Specify native \
compilers". Set the C compiler to the MinGW compiler in your Qt directory (e.g. \
"C:/QtSDK/mingw/bin/gcc.exe") and the C++ compiler similarly (e.g. \
"C:/QtSDK/mingw/bin/g++.exe"). Once Configure finishes, set CMAKE_BUILD_TYPE to \
Release, and edit CMAKE_INSTALL_PREFIX to what you like (e.g. "C:\Program Files \
(x86)\qyoto").  All 3 projects are going to be installed into the same directory, so \
you may as well name it "qyoto". If it's not set, set QT_QMAKE_EXECUTABLE to the \
location of your qmake.ee, e.g. "C:/QtSDK/Desktop/Qt/4.7.4/mingw/bin/qmake.exe". \
Press the "Generate" button. Open up QT Creator and load the \
smokegen-build/cmake-install.cmake project. Qt will want to run CMake again; let it.  \
If the Generator is not already set to "MinGW Generator (Mingw as a GCC for Windows \
targets)", set it to that. Once that finishes, Build All.  When that finishes, close \
the project inside Qt Creator. With an MSYS window run as administrator, cd to \
smokegen-build and install with "mingw32-make install/fast". Rename "smokegen-build" \
to "smokegen-build-installed".  This will prevent CMake from accidentally finding it \
when building later projects.

smokeqt:
In CMake, set your source directory to point to smokeqt, and your build directory to \
smokeqt-build (in the same directory as smokeqt). Press the "Configure button",
When asked to specify the generator, select "MinGW Makefiles" and "Specify native \
compilers". Set the C compiler to the MinGW compiler in your Qt directory (e.g. \
"C:/QtSDK/mingw/bin/gcc.exe") and the C++ compiler similarly (e.g. \
"C:/QtSDK/mingw/bin/g++.exe"). Once Configure finishes, set CMAKE_BUILD_TYPE to \
Release, and edit CMAKE_INSTALL_PREFIX to what you set it for smokegen (e.g. \
"C:\Program Files (x86)\qyoto"). If it's not set, set QT_QMAKE_EXECUTABLE to the \
location of your qmake.ee, e.g. "C:/QtSDK/Desktop/Qt/4.7.4/mingw/bin/qmake.exe". If \
it's not set, set Smoke_DIR to the share/smoke/cmake directory under where you \
installed smokegen, e.g. "C:/Program files (x86)/qyoto/share/smoke/cmake". If you \
like, feel free to check "WITH_QT3_SUPPORT".  It's off by default, but will build \
under Windows. Press the "Generate" button.
Open up QT Creator and load the smokeqt-build/cmake-install.cmake project.
Qt will want to run CMake again; let it.  If the Generator is not already set to \
"MinGW Generator (Mingw as a GCC for Windows targets)", set it to that. Once that \
finishes, Build All.  When that finishes, close the project inside Qt Creator. With \
an MSYS window run as administrator, cd to smokeqt-build and install with \
"mingw32-make install/fast". Rename "smokeqt-build" to "smokeqt-build-installed".  \
This will prevent CMake from accidentally finding it when building later projects.

qyoto:
In CMake, set your source directory to point to qyoto, and your build directory to \
qyoto-build (in the same directory as qyoto). Press the "Configure button",
When asked to specify the generator, select "MinGW Makefiles" and "Specify native \
compilers". Set the C compiler to the MinGW compiler in your Qt directory (e.g. \
"C:/QtSDK/mingw/bin/gcc.exe") and the C++ compiler similarly (e.g. \
"C:/QtSDK/mingw/bin/g++.exe"). Once Configure finishes, set CMAKE_BUILD_TYPE to \
Release, and edit CMAKE_INSTALL_PREFIX to what you set it for smokegen and smokeqt \
(e.g. "C:\Program Files (x86)\qyoto"). If it's not set, set QT_QMAKE_EXECUTABLE to \
the location of your qmake.ee, e.g. "C:/QtSDK/Desktop/Qt/4.7.4/mingw/bin/qmake.exe". \
If it's not set, set Smoke_DIR to the share/smoke/cmake directory under where you \
installed smokegen and smokeqt, e.g. "C:/Program files \
(x86)/qyoto/share/smoke/cmake". Press the "Generate" button.
Open up QT Creator and load the qyoto-build/cmake-install.cmake project.
Qt will want to run CMake again; let it.  If the Generator is not already set to \
"MinGW Generator (Mingw as a GCC for Windows targets)", set it to that. Once that \
finishes, Build All.  When that finishes, close the project inside Qt Creator. With \
an MSYS window run as administrator, cd to qyoto-build and install with "mingw32-make \
install/fast".

Using Qyoto:
Put your qyoto bin directory (e.g. "C:/Program files (x86)/qyoto/bin") into your \
system path.  (The QtSDK installer should have already put its bin path, e.g. \
"C:\QtSDK\Desktop\Qt\4.7.4\mingw\bin", into your system path.  If it's not there, put \
it there.) The assemblies are in your qyoto lib directory (e.g. "C:/Program files \
(x86)/qyoto/lib").  They're not installed in the GAC directory; that's a future \
project.  When you select them in MonoDevelop (while editing assemblies), they'll \
show in the ".Net Assembly" tab, where you'll have to browse the filesystem.  You'll \
know it's a .NET assembly when you click on it and version information displays below \
the file-list box (e.g. "qt-dotnet, Version=4.5.0.0, Culture=neutral, \
PublicKeyToken=194a23ba31c08164").  That won't show up if it's a regular DLL.

========
WARNING!
========
Qyoto is not fully functional under Windows!  Hopefully, they'll get found and fixed \
as more people use it, so we need your help.  Here are some known bugs:

QObject.Connect<> (source-object, SIGNAL("string"), templated-method) does not work.  \
Instead, use QObject.Connect<> (source-object, SIGNAL("string"), target-object, \
SLOT("string")).  Add the [Q_SLOT] attribute to the function on your target-object to \
make it a slot.  (Note that the non-templated version of QObject.Connect() works \
fine.) Copying/cutting text doesn't seem to affect the clipboard -- you'll paste \
whatever was in the system clipboard before. Dialogs and message boxes sometimes \
don't work.  The pattern is unclear.


["assemblygen-4.8.3-hack_fix_qevent_qmodelindex_crash.patch" (application/octet-stream)]

--- a/assemblies/qyoto-qtcore/native/handlers.cpp
+++ b/assemblies/qyoto-qtcore/native/handlers.cpp
@@ -663,7 +663,7 @@ marshall_basetype(Marshall *m)
 		    o->allocated = true;
 		}
 		// Keep a mapping of the pointer so that it is only wrapped once
-		mapPointer(obj, o, o->classId, 0);
+        //mapPointer(obj, o, o->classId, 0);
 		
 		m->var().s_class = obj;
 	}


_______________________________________________
Kde-bindings mailing list
Kde-bindings@kde.org
https://mail.kde.org/mailman/listinfo/kde-bindings


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic