Skip to main content

Error compiling CLDC

6 replies [Last post]
wizermil
Offline
Joined: 2006-08-29
Points: 0

Hello,
I checked out the trunk of all modules (javacall, midp, cldc, tools, pcsl, jsr135), then using the tutorial on the web site, I created a batch file to compile the system. You will find it below.
But during the compilation of cldc i have this error message.

If anybody have an explanation a patch, I'll be glad to know it.

Thanks in advance.

Mathieu

FYI:
OS: windows XP SP3
Java: JDK1.4.2_17
CL: 15.00.21022.08 (Visual Studio 2008)

PS: Sorry for my english, I'm French.

<br />
==============================<br />
starting DEBUG build<br />
==============================<br />
make[1]: Entering directory `C:/phoneme_feature/build_output/cldc/javacall_i386_<br />
vc/target/debug'<br />
make[1]: Nothing to be done for `dependencies'.<br />
make[1]: Leaving directory `C:/phoneme_feature/build_output/cldc/javacall_i386_v<br />
c/target/debug'<br />
make[1]: Entering directory `C:/phoneme_feature/build_output/cldc/javacall_i386_<br />
vc/target/debug'<br />
HotRoutines0.obj : warning LNK4221: no public symbols found; archive member will<br />
 be inaccessible<br />
generated /cygdrive/c/phoneme_feature/build_output/cldc/javacall_i386_vc/target/<br />
debug/../bin/cldc_vm_g.lib<br />
generated /cygdrive/c/phoneme_feature/build_output/cldc/javacall_i386_vc/target/<br />
debug/../bin/cldc_vmx_g.lib<br />
generated /cygdrive/c/phoneme_feature/build_output/cldc/javacall_i386_vc/target/<br />
debug/../bin/cldc_vmtest_g.lib<br />
LINK : warning LNK4098: defaultlib 'MSVCRT' conflicts with use of other libs; us<br />
e /NODEFAULTLIB:library<br />
cldc_vm_g.lib(OS_javacall.obj) : error LNK2019: unresolved external symbol _java<br />
call_os_initialize referenced in function "public: static void __cdecl JVMOs::in<br />
itialize(void)" (?initialize@JVMOs@@SAXXZ)<br />
cldc_vm_g.lib(OS_javacall.obj) : error LNK2019: unresolved external symbol _java<br />
call_os_dispose referenced in function "public: static void __cdecl JVMOs::dispo<br />
se(void)" (?dispose@JVMOs@@SAXXZ)<br />
../bin/cldc_vm_g.exe : fatal error LNK1120: 2 unresolved externals<br />
make[1]: *** [../bin/cldc_vm_g.exe] Error 96<br />
make[1]: Leaving directory `C:/phoneme_feature/build_output/cldc/javacall_i386_v<br />
c/target/debug'<br />
make: *** [_debug] Error 2<br />

My batch file to compile phoneME:

<br />
@echo off<br />
call "C:\Program Files\Microsoft Visual Studio 9.0\VC\bin\vcvars32.bat"</p>
<p>REM set INCLUDE=D:\Program Files\Microsoft Platform SDK\Include\mfc;%INCLUDE%</p>
<p>set MEHOME=C:/phoneme_feature<br />
set BUILD_OUTPUT_DIR=%MEHOME%/build_output<br />
set CYG4ME=%MEHOME%/cyg4me<br />
set JDK_DIR=C:/j2sdk1.4.2_17<br />
set PATH=%CYG4ME%/bin;%JDK_DIR%/bin;%PATH%<br />
set USE_VS2005=true</p>
<p>echo *********************************<br />
echo * Javacall                      *<br />
echo *********************************<br />
set JAVACALL_DIR=%MEHOME%/javacall<br />
set JAVACALL_PROJECT_DIR=%MEHOME%/javacall<br />
set JAVACALL_OUTPUT_DIR=%BUILD_OUTPUT_DIR%/javacall<br />
set TOOLS_DIR=%MEHOME%/tools<br />
call make -C %MEHOME%/javacall/configuration/phoneMEFeature/win32_x86</p>
<p>echo .<br />
echo *********************************<br />
echo * Pcsl                          *<br />
echo *********************************<br />
set PCSL_OUTPUT_DIR=%BUILD_OUTPUT_DIR%/pcsl<br />
set PCSL_PLATFORM=javacall_i386_vc<br />
set JAVACALL_OUTPUT_DIR=%BUILD_OUTPUT_DIR%/javacall<br />
call make -C %MEHOME%/pcsl</p>
<p>echo .<br />
echo *********************************<br />
echo * Cldc                          *<br />
echo *********************************<br />
set JVMWorkSpace=%MEHOME%/cldc<br />
set JVMBuildSpace=%BUILD_OUTPUT_DIR%/cldc<br />
set ENABLE_PCSL=true<br />
set ENABLE_ISOLATES=true<br />
set PCSL_OUTPUT_DIR=%BUILD_OUTPUT_DIR%/pcsl<br />
set JAVACALL_OUTPUT_DIR=%BUILD_OUTPUT_DIR%/javacall<br />
call make -C %JVMWorkSpace%/build/javacall_i386_vc</p>
<p>echo .<br />
echo *********************************<br />
echo * Midp                          *<br />
echo *********************************<br />
set MIDP_OUTPUT_DIR=%BUILD_OUTPUT_DIR%/midp<br />
set PCSL_OUTPUT_DIR=%BUILD_OUTPUT_DIR%/pcsl<br />
set CLDC_DIST_DIR=%BUILD_OUTPUT_DIR%/cldc/javacall_i386_vc/dist<br />
set USE_MULTIPLE_ISOLATES=true<br />
set JAVACALL_PLATFORM=win32_i386_vc<br />
set JAVACALL_OUTPUT_DIR=%BUILD_OUTPUT_DIR%/javacall<br />
make -C %MEHOME%/midp/build/javacall<br />
Pause<br />

Reply viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
danila
Offline
Joined: 2006-09-25
Points: 0

Hi Mathieu,

the problem with missing function definitions was fixed, please retry with the latest trunk.

The contribution process is documented at
https://mobileandembedded.dev.java.net/content/contribute.html

Danila

danila
Offline
Joined: 2006-09-25
Points: 0

Hi Mathieu,

you should probably update your working copy of javacall component.
javacall_os_initialize() and javacall_os_dispose() were just recently introduced.

Danila

wizermil
Offline
Joined: 2006-08-29
Points: 0

Hi Danila,

I updated all the component of the project and relaunch my script, i still have the same compilation error message. do you have an other idea ?

Mathieu

danila
Offline
Joined: 2006-09-25
Points: 0

Hi Mathieu

I see, the problem is that the new added functions were implemented only for 2 configurations: win32_emul and stubs. This is a bug and will be fixed.
Meanwhile you can try older revisions before 10456, when this change was committed.

Danila

wizermil
Offline
Joined: 2006-08-29
Points: 0

Tanks I'll keep an eye on the future updates.
Do you know how can I contribute to this project (testing software, creating some compiling script ...) ?
I'm developer too and i'd like to add some features at this project like having a view of images loaded in memory, listing io access (stream unclosed ...) and some other stuff like just to help developer or porter of J2ME application to improve it.

Thanks.

Mathieu

Message was edited by: wizermil

Message was edited by: wizermil

chandanvn
Offline
Joined: 2008-05-17
Points: 0

Hi all,
I am trying to build CLDC on ARM.
I am using default make file .\phoneme_feature-mr2-rel-src-b23-08_may-2007\phoneme_feature\cldc\build\wince_arm\Makefile

While building I am getting the error:

==============================
creating ROM generator in debug mode
build flags: NO_DEBUG_SYMBOLS=true
==============================
make[1]: Entering directory `D:/phoneME_feature/phoneme_feature-mr2-rel-src-b23-
08_may-2007/phoneme_feature/cldc/output/cldc/wince_arm/romgen/app'
make[1]: Nothing to be done for `dependencies'.
make[1]: Leaving directory `D:/phoneME_feature/phoneme_feature-mr2-rel-src-b23-0
8_may-2007/phoneme_feature/cldc/output/cldc/wince_arm/romgen/app'
make[1]: *** No rule to make target `/src/vm/cpu/c/AsmStubs_i386.asm', needed by
`AsmStubs_i386.obj'. Stop.
make[1]: Entering directory `D:/phoneME_feature/phoneme_feature-mr2-rel-src-b23-
08_may-2007/phoneme_feature/cldc/output/cldc/wince_arm/romgen/app'
make[1]: Leaving directory `D:/phoneME_feature/phoneme_feature-mr2-rel-src-b23-0
8_may-2007/phoneme_feature/cldc/output/cldc/wince_arm/romgen/app'
make: *** [_romgen] Error 2

Please let me know if anyone has any idea about it.