Build fail: unresolved external symbol mainCRTStartup

Leonid Popov leonid.popov at oracle.com
Tue Nov 12 06:00:51 PST 2013


Thanks Kevin, but unfortunately it didn't help. Even having it cleaned 
completely, the build script still generates 32-bit YarrInterpreter.obj 
and then fails to link it to a 64-bit library. Still investigating.

On 11/11/2013 8:43 PM, Kevin Rushforth wrote:
> Hi Leonid,
>
> Building JavaFX on Windows requires Cygwin, so it doesn't surprise me 
> that it fails with a DOS shell.
>
> The error you are seeing on cygwin seems like a mismatch where part of 
> the build is trying to use a 32-bit build and part trying to use 64-bit.
>
> My recommendation is to try the following, from a cygwin shell:
>
> 1. Ensure that your JAVA_HOME and PATH point to the same version of 
> Java (the 32-bit Java).
>
> 2. Completely clean your repo
>
> cd rt
> gradle clean
> rm -rf buildSrc/build buildSrc/.gradle .gradle
>
>
> 3. Rebuild, making sure you compile both media and webkit (not sure if 
> needed, but better to remove one more variable):
>
> gradle -PCOMPILE_WEBKIT=true -PCOMPILE_MEDIA=true sdk
>
>
> See if the above will work.
>
> -- Kevin
>
>
> Leonid Popov wrote:
>> Hi Steve,
>>
>> Yes, I use 32-bit JDK for building. I tried to build it from both 
>> Windows and Cygwin command shells. The error I mentioned happens when 
>> building from Windows. If I try to build it from Cygwin, I get 
>> another error:
>>
>> Building Webkit configuration /Release/ into 
>> C:\javafx\8my\jfx\rt\modules\web\build/win
>> Calling 'qmake -makefile 
>> C:/javafx/8my/jfx/rt/modules/web/src/main/native/Source/WebKitJava.pro CONFIG-=debug 
>> CONFIG+=release DEFINES+=IMAGEIO=1' in 
>> "C:/javafx/8my/jfx/rt/modules/web/build/win/Release" ...
>>
>>
>> Microsoft (R) Program Maintenance Utility Version 10.00.30319.01
>> Copyright (C) Microsoft Corporation.  All rights reserved.
>>
>>         cd JavaScriptCore\ && C:\MsVS10\VC\BIN\nmake.exe -f 
>> Makefile.JavaScriptCoreJava
>>
>> Microsoft (R) Program Maintenance Utility Version 10.00.30319.01
>> Copyright (C) Microsoft Corporation.  All rights reserved.
>>
>>         lib /NOLOGO  /OUT:..\lib\JavaScriptCoreJava.lib @.\nm2BB0.tmp
>> obj\YarrInterpreter.obj : fatal error LNK1112: module machine type 
>> 'X86' conflicts with target machine type 'x64'
>> NMAKE : fatal error U1077: 'C:\MsVS10\VC\BIN\lib.EXE' : return code 
>> '0x458'
>> Stop.
>> NMAKE : fatal error U1077: 'cd' : return code '0x2'
>> Stop.
>>
>> My script for Cygwin is:
>>
>> export DXSDK_DIR=/cygdrive/c/DXSDK/
>> export WMSDK_DIR=/cygdrive/c/WMSDK/WMFSDK11/
>> export QTSDK_DIR=/cygdrive/c/Qt/4.6.0/
>>
>> export VSINSTALLDIR=/cygdrive/C/MsVS10
>> export WINDOWS_VS_PATH=/cygdrive/C/MsVS10/VC/bin
>>
>> export GRADLE_DIR=/cygdrive/c/tools/gradle/
>>
>> export JDK_HOME=/cygdrive/c/java/8b112/
>> export JAVA_HOME=$JDK_HOME
>>
>> export ANT_HOME=/cygdrive/c/ant/
>>
>> export 
>> PATH=$GRADLE_DIR/bin/:$JAVA_HOME/bin/:$DXSDK_DIR/Utilities/Bin/x86:$PATH
>>
>> $GRADLE_DIR/bin/gradle -PCOMPILE_WEBKIT=true -PCONF=Debug sdk
>>
>> I'm trying but I can't realize what changed after my last successfull 
>> build.
>>
>> Leonid.
>>
>>
>> On 11/8/2013 9:10 PM, Stephen F Northover wrote:
>>> Hi Leonid,
>>>
>>> I have the same configuration as you I think.  I'm just making sure 
>>> I can build.  First, do you have 32-bit JDK8?  Are you running under 
>>> a cygwin shell?  What is your gradle command line?
>>>
>>> Steve
>>>
>>> On 2013-11-08 9:08 AM, Leonid Popov wrote:
>>>> Hi,
>>>>
>>>> I've just cloned a new workspace from 
>>>> ssh://jfxsrc.us.oracle.com//javafx/8.0/scrum/graphics/jfx and tried 
>>>> to build it. The following error encountered:
>>>>
>>>>     link /LIBPATH:"..\lib" /NOLOGO /MAP /INCREMENTAL:NO 
>>>> /SUBSYSTEM:CONSOLE /MANIFEST 
>>>> /MANIFESTFILE:"obj\DerivedSourcesJava.intermediate.manifest" 
>>>> /OUT:..\lib\DerivedSourcesJava.exe 
>>>> @C:\Users\lp154592\AppData\Local\Temp\nm9A16.tmp
>>>> LINK : error LNK2001: unresolved external symbol mainCRTStartup
>>>> ..\lib\DerivedSourcesJava.exe : fatal error LNK1120: 1 unresolved 
>>>> externals
>>>>
>>>> My box is Windows 7 64-bit with MSVS 10 installed; Gradle 1.4 is 
>>>> used for building.
>>>>
>>>> Any suggestions?
>>>>
>>>> Thanks,
>>>> Leonid
>>>
>>



More information about the openjfx-dev mailing list