Tool definition for linux cross-compilation on windows
-
I see 5.2.1 , Ooooo new Qt release ;)
-
[quote author="marius.maximus" date="1391721007"]Maybe your toolchain do not have pthread_condattr_setclock ?
[/quote]Yes, you are probably right. I was not able to track this one down before posting. However, I suspected already the same as you.
[quote author="marius.maximus" date="1391722383"]I see 5.2.1 , Ooooo new Qt release ;)[/quote]
Yes, I must have downloaded while it was very fresh. Unfortunately, it did not change things.
[edit, koahnig]
-
Please
comment line with pthread_condattr_setclock function call
In corelib/thread/qwaitcondition_unix.cpp -
How did you fix this issues guys ? I'm seriously considering down grading to Qt4 that do not have these problems
-
[quote author="class101" date="1396092288"]How did you fix this issues guys ? I'm seriously considering down grading to Qt4 that do not have these problems[/quote]
I saw that I am having not only these issues when compiling on windows. I decided to continue the route on Ubuntu until having a solution. However, also there are remaining some questions waiting for a solution.
Since I had to shift priorities, I am having a couple of loose ends in that respect.Do you have a solution with Qt4?
-
For QT_CONFIGURE_SETTINGS_PATH
In Qt4 (4.8.6 - https://qt.gitorious.org/qt/qt) there is no solution because there is no issue like that as far I tested only Qt5 brings this issue.For the other issue switching Windows commands by Linux commands I have found that it also comes from a Qt5 regression
in unix.conf, this line is new from Qt5 and instead should be changed to
@include(shell-unix.conf)@unix.conf
@!isEmpty(QMAKE_SH) {
include(shell-unix.conf)
} else {
include(shell-win32.conf)
}@Will try marlus solution about the first issue, completely ignored its comment my bad, may be working
But now I'm building my own qmake.conf with most unnecessary and conflicting += to = and I save it somewhere else so I will not experience regression issues in the future and I have a better control on the options that are used, I think that's the best we can do instead of counting on configuration you can include but not supporting Windows operating system...
-
I would interested to know of your progress, I will continue with this effort when having solved the other issues. It would make live a bit easier.
-
Sure, What are you other issues? I may have solved them here
Me I fail near the end when compiling plugins
@x86_64-unknown-linux-gnu-g++ -pipe -m64 -w -Wl,--no-undefined -Wl,-O1 -Wl,-rpath,X:/libs/qt-5_3_0/qt-linux64-gcc48/lib -o libqsqlite.so .obj\smain.obj .obj\qsql_sqlite.obj .obj\sqlite3.obj .obj\moc_qsql_sqlit
e_p.obj -LX:/libs/qt5/qtbase/lib -lQt5Sql -lQt5Core -lpthread
X:/libs/compilers/gcc-4.8.2-x86_64-unknown-linux-gnu/lib/gcc/x86_64-unknown-linux-gnu/4.8.2/../../../../x86_64-unknown-linux-gnu/lib/../lib64/crt1.o: In function_start': (.text+0x20): undefined reference to
main'
collect2.exe: error: ld returned 1 exit status
Makefile:159: recipe for target '........\plugins\sqldrivers\libqsqlite.so' failed@ -
UCLinux is the problem or not that the issue. So it is more that I still need to be convinced that UCLinux will not create more problems for me. Since I am compiling at the moment under Ubuntu, I bypassing the obvious windows issues.
Can you compile other plugins without a problem?
-
Yet haven't tested much I was testing the elder scrolls online that launched today heh
But as far I tested yet it is the same error when compiling bearer plugin next to sqlite so it seems this error is global to all plugins, haven't found a workaround yet ;( -
finally solved the undefined reference to `main' issue here
It was an error in my qmake.conf, oI was setting QMAKE_LFLAGS_PLUGIN = #$$QMAKE_LFLAGS_SHLIB but QMAKE_LFLAGS_SHLIB was declared after this line because I sort variable alphabetically so technically instead of doing QMAKE_LFLAGS_PLUGIN = -shared it was QMAKE_LFLAGS_PLUGIN = and so one why the plugins were executables and not libraries
so everything compiled fine here (just not tested Opengl and WebKit and I don't need and don't have mesa compiled yet)
you comment the 2 lines in configureapp.cpp
@//if ((platform() != WINDOWS) && (platform() != WINDOWS_CE) && (platform() != WINDOWS_RT))@
and you change unix.conf
@!isEmpty(QMAKE_SH) {
include(shell-unix.conf)
} else {
include(shell-win32.conf)
}@but better if you do like me, rebuild a complete qmake.conf, basically I replace the 3 #includes by all the variables they hide, and I use += only when needed for CONFIG and DEFINES for example, changing most += by =
@configure.bat -confirm-license -release -opensource -platform win32-g++ -xplatform linux-g++-64 -shared -no-opengl -no-angle -skip qtquick1 -skip declarative -nomake examples -nomake tests -prefix X:/libs/qt-5_3_0/qt-linux64-gcc48 -sysconfdir X:/libs/qt-5_3_0/qt-linux64-gcc48/etc/xdg
@