QtSerialPort



  • I planned to play with QtSerialPort but it seems that I can not build it (under 4.8.3) because MinGW give an error:
    @
    c:/qt_lib/mingw/bin/../lib/gcc/mingw32/4.6.2/../../../libmingw32.a(main.o): In function main': C:\MinGW\msys\1.0\src\mingwrt/../mingw/main.c:73: undefined reference toWinMain@16'
    collect2: ld returned 1 exit status
    mingw32-make[2]: *** [release\libSerialPort.a] Error 1
    mingw32-make[2]: Leaving directory C:/Qt_lib/qtserialport/src-build-Desktop_Qt_4_8_3_MinGW-Release/serialport' mingw32-make[1]: *** [release] Error 2 mingw32-make[1]: Leaving directoryC:/Qt_lib/qtserialport/src-build-Desktop_Qt_4_8_3_MinGW-Release/serialport'
    mingw32-make: *** [sub-serialport-make_default] Error 2
    11:08:20: The process "C:\Qt_lib\mingw\bin\mingw32-make.exe" exited with code 2.
    Error while building/deploying project src (target: Desktop Qt 4.8.3 MinGW)
    When executing step 'Make'
    @
    I tried to build with MSVC 2010 ( qt 5.0.0) but another error:
    @
    :-1: error: Failed to run: C:\Qt_lib\5.0.0-beta2\msvc2010\bin\syncqt.bat -module QtAddOnSerialPort -mkspecsdir C:\Qt_lib\5.0.0-beta2\msvc2010/mkspecs -outdir C:/Qt_lib/qtserialport
    @
    How can I fix this?
    Thanks for answers in advance!

    [code tags added, koahnig]



    1. About Qt4.8.3 and MinGW.

    If you use ready made Qt 4.8.3 libraries from Digia's site that:

    1. About Qt5 and MSVC 2010

    There should be without errors. I will try check again.



  • Thanks, I will digg on it! If you want some log files, welcome!



  • bq. Thanks, I will digg on it! If you want some log files, welcome!

    I'm try build on Qt5-beta1, all building is fine, without errors.



  • @AttilaPethe

    bq. I tried to build with MSVC 2010 ( qt 5.0.0) but another error:

    QtSerialPort has nothing to do with this error.
    If you looked closely compiler log then would see what Qt5 is required to build "perl.exe".



  • I installed perl, but now the error if I want to build for MSVC2010 is:
    Could not find any sync.profile for your module!

    The complete log:
    22:03:34: Running steps for project src...
    22:03:34: Starting: "C:\Qt_lib\5.0.0-beta2\msvc2010\bin\qmake.exe" C:\Qt_lib\qtserialport\src\src.pro -r -spec win32-msvc2010 "CONFIG+=debug" "CONFIG+=qml_debug"
    Reading C:/Qt_lib/qtserialport/src/serialport/serialport.pro [C:/Qt_lib/qtserialport/src-build-Desktop_Qt_5_0_0_beta2_MSVC2010_32bit_SDK-Debug/serialport]
    Could not find any sync.profile for your module!
    Pass <module directory> to syncqt to sync your header files.
    syncqt failed at C:\Qt_lib\5.0.0-beta2\msvc2010\bin\syncqt line 775.
    Project MESSAGE: C:\Qt_lib\5.0.0-beta2\msvc2010\bin\syncqt.bat -module QtAddOnSerialPort -mkspecsdir C:\Qt_lib\5.0.0-beta2\msvc2010/mkspecs -outdir C:/Qt_lib/qtserialport
    Project ERROR: Failed to run: C:\Qt_lib\5.0.0-beta2\msvc2010\bin\syncqt.bat -module QtAddOnSerialPort -mkspecsdir C:\Qt_lib\5.0.0-beta2\msvc2010/mkspecs -outdir C:/Qt_lib/qtserialport
    22:03:34: The process "C:\Qt_lib\5.0.0-beta2\msvc2010\bin\qmake.exe" exited with code 3.
    Error while building/deploying project src (target: Desktop Qt 5.0.0 beta2 MSVC2010 32bit (SDK))
    When executing step 'qmake'

    I can build and run QextSerialPort very well, but I want to compare the two libs (QextSerialPort and QtSerialPort) and choose one for a project...

    Please give an idea how to build this QtSerialPort. I tried to copy sync.profile in several location but failed evry time. Thanks in advance!



  • Why not put the translation here?

    On Path where Qt was installed open the file: mkspecs\win32-g++\qmake.conf

    There are 2 changes todo:

    First find the line with:
    CONFIG += qt warn_on release link_prl copy_dir_files debug_and_release debug_and_release_target precompile_header

    and add dll like this:

    CONFIG += qt warn_on release link_prl copy_dir_files debug_and_release debug_and_release_target precompile_header dll

    second find the line with:
    QMAKE_IDC = $$[QT_INSTALL_BINS]$${DIR_SEPARATOR}idc.exe
    and put below:
    QMAKE_RCC = $$[QT_INSTALL_BINS]$${DIR_SEPARATOR}rcc.exe

    That was found "here":http://www.prog.org.ru/index.php?topic=23489.msg166069#msg166069.



  • 2 AttilaPethe

    I newly checked out the build QtSerialPort add-on with QtCreator 2.6 & Windows 7 x32 & MSVC 2010 compiler & Qt5-beta2-msvc2010.

    All the compiled fine, just open qtserialport.pro from QtCreator and build.

    Also try remove all *.user files and build directory and try build again.

    2 israelins85

    Thx.



  • Great! Now I managed to compile under MinGW. Thanks a lot. Congratulations for YOU.
    But under msvc2010 steel have trouble: The whole log is here:

    15:35:50: Running steps for project src...
    15:35:50: Starting: "C:\Qt_lib\5.0.0-beta2\msvc2010\bin\qmake.exe" C:\Qt_lib\qtserialport\src\src.pro -r -spec win32-msvc2010
    Reading C:/Qt_lib/qtserialport/src/serialport/serialport.pro [C:/Qt_lib/qtserialport/src-build-Desktop_Qt_5_0_0_beta2_MSVC2010_32bit_SDK-Release/serialport]
    Could not find any sync.profile for your module!
    Pass <module directory> to syncqt to sync your header files.
    syncqt failed at C:\Qt_lib\5.0.0-beta2\msvc2010\bin\syncqt line 775.
    Project MESSAGE: C:\Qt_lib\5.0.0-beta2\msvc2010\bin\syncqt.bat -module QtAddOnSerialPort -mkspecsdir C:\Qt_lib\5.0.0-beta2\msvc2010/mkspecs -outdir C:/Qt_lib/qtserialport
    Project ERROR: Failed to run: C:\Qt_lib\5.0.0-beta2\msvc2010\bin\syncqt.bat -module QtAddOnSerialPort -mkspecsdir C:\Qt_lib\5.0.0-beta2\msvc2010/mkspecs -outdir C:/Qt_lib/qtserialport
    15:35:50: The process "C:\Qt_lib\5.0.0-beta2\msvc2010\bin\qmake.exe" exited with code 3.
    Error while building/deploying project src (target: Desktop Qt 5.0.0 beta2 MSVC2010 32bit (SDK))
    When executing step 'qmake'

    No more steps only the qmake. I checked sync.profile and it seems all right. No idea why is not found. Even I tryed to copy to several place but steel is unfound... I use W7Pro 64bit...



  • If I look to that line in syncqt:

    if we have no $basedir we cannot be sure which sources you want, so die

    die "Could not find any sync.profile for your module!\nPass <module directory> to syncqt to sync your header files.\nsyncqt failed" if (!$basedir);

    But if we look closer we can see that:
    $basedir = locateSyncProfile($out_basedir);
    furthermore: our $out_basedir = getcwd();
    And the Cwd, pathname of current working directory is specifyed automaticly by Qt in the project settings as C:\Qt_lib\qtserialport\src-build-Desktop_Qt_5_0_0_beta2_MSVC2010_32bit_SDK-Release.
    Where can be the bug?
    Perl fails to get the curent working directory name? About $basedir it says that: undefined value.



  • I do not know.

    You have installed ActivePerl or another?

    Because needed ActivePerl.

    PS: I have successfully built Qt5-beta2 + QtCreator 2.6 + Microsoft SDK 7.1 and on Win7x64.



  • I have ActivePerl 5.16.1 Build 1601 (64-bit), Qt5-beta2 + QtCreator 2.6 + Microsoft SDK 7.0A and on Win7pro×64. I think the error is in perl or perl script. The script is executed, only $basedir remain undefined. I have no perl knowledge but I will dig it soon. The error is in lines:
    our $out_basedir = getcwd();
    $basedir = locateSyncProfile($out_basedir);
    I will try to specify $basedir manually in perl script and see if getcwd() returns the working directory or not. But this is not a long term solution. (I mention again that in the project configuration the out directories are present.)



  • I do not acknowledge the problem.

    I again checked the compilation with the environment similar as you:

    ActivePerl 5.16.1 Build 1601 (64-bit),
    Qt5-beta2 + QtCreator 2.6
    Microsoft Visual Studio 2010 (SDK 7.0A)
    Win7pro×64.

    All compiled fine.



  • I compiled well under Qt5 but only after I specify manually the output directory in the qtsync script. I changed line 78 from
    @our $out_basedir = getcwd();@

    to

    @our $out_basedir = "C:/myqtserialportlocation";@

    After this the compilation went well.

    Thanks for help!


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.