Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Rebuilding Windows CE NK.nb0 image

148 views
Skip to first unread message

Jamie

unread,
Jul 28, 2008, 2:07:23 AM7/28/08
to
Hello,

I am building a Windows CE 6.0 BSP for an ARM based embedded board. I got
the BSP from the board manufacturer.

I was able to build the original BSP image using Platform Builder/VS 2005.

Now when I make a small change in the BSP code and do a rebuild, it takes
enormous amount of time. I am lost as to why it should take so much time when
I have only modified a single source file.

I rebuild it by : VS2005-> "Build" Menu -> Build <project name>.

I am new to Windows programming, VS 2005 etc, so please let me know if I
have missed something obvious.

Jamie

Erwin Zwart

unread,
Jul 28, 2008, 2:30:19 AM7/28/08
to
Hi Jamie,

http://www.guruce.com/blogpost/whattobuildwhen

Erwin Zwart

"Jamie" <Ja...@discussions.microsoft.com> wrote in message
news:EF04003D-CDC0-4F9E...@microsoft.com...

Luca Calligaris

unread,
Jul 28, 2008, 2:37:33 AM7/28/08
to
Which option are you using to rebuild your image? If you are simply
modifying the BSP code you can shorten the time rebuilding only the modified
component and performing a makeimg; the build system is quite complex so
these may not be the only steps required; you'd better familiarize with the
build system taking a look at the help or you can check Bruce Eitman's blog
for further information on the build process:
http://geekswithblogs.net/BruceEitman/archive/2008/06/06/platform-builder-summary-of-building-windows-ce.aspx

--

Luca Calligaris
www.eurotech.it

"Jamie" <Ja...@discussions.microsoft.com> ha scritto nel messaggio
news:EF04003D-CDC0-4F9E...@microsoft.com...

Jamie

unread,
Jul 29, 2008, 12:13:01 AM7/29/08
to
Hi,

Thanks for the quick response. Nice article!

I have actually modified a file in the PRIVATE area but did not do a "build
and sysgen". I merely did a "Build" -> "Build Solution".

So is my CE installation hosed? The build logs are attached below.. and it
looks like its doing build and sysgen. Pls let me know.

Is there a way around avoiding the re-install of CE?

Rgds,
Jamie

------ Build started: Project: OSDesign2, Configuration: Realview Platform
Baseboard for ARM926EJ-S ARMV4I Release Platform Builder (_TGTCPU) ------
Starting Build: blddemo -q
==============
BLDDEMO: Generating OS Design Folders
BLDDEMO: Done Generating OS Design Folders
BLDDEMO: Generating OS Design Files to
C:\WINCE600\OSDesigns\OSDesign2\OSDesign2\Wince600\ARMVPB_ARMV4I\oak
BLDDEMO: Done Generating OS Design Files
CEBUILD: Deleting old build logs
CEBUILD: Skipping directly to SYSGEN phase
Building dep trees: winceos dcom gdiex ie script servers shellsdk shell rdp
wceshellfe wceappsfe directx voip datasync netcfv2 SQLCE cellcore ostest
speech OSDesign2
CEBUILD: Running sysgen preproc (for COMMON)
Starting sysgen phase for project ( common )


User selected the following SYSGEN variables
sysgen_as_base=1
sysgen_as_file=1
sysgen_audio=1
sysgen_auth=1
sysgen_auth_ntlm=1
sysgen_auth_schannel=1
sysgen_autoras=1
sysgen_aygshell=1
sysgen_battery=1
sysgen_bth=1
sysgen_bth_ag=1
sysgen_cachefilt=1
sysgen_certs=1
sysgen_connmc=1
sysgen_crypto=1
sysgen_cursor=1
sysgen_dotnetv2=1
sysgen_dotnetv2_support=1
sysgen_eap=1
sysgen_ethernet=1
sysgen_eth_80211=1
sysgen_fsreplbit=1
sysgen_help=1
sysgen_iabase=1
sysgen_ie_jscript=1
sysgen_irda=1
sysgen_menu_overlap=1
sysgen_modem=1
sysgen_msim=1
sysgen_notify=1
sysgen_obex_client=1
sysgen_obex_server=1
sysgen_pm=1
sysgen_ppp=1
sysgen_pptp=1
sysgen_qvgap=1
sysgen_redir=1
sysgen_shell=1
sysgen_standardshell=1
sysgen_tcpip6=1
sysgen_touch=1


Checking for uncleared variables
Done checking for uncleared variables

Report:
SYSGEN_ASYNCMAC=1
sysgen_as_base=1
sysgen_as_file=1
sysgen_audio=1
SYSGEN_AUDIO_STDWAVEFILES=1
sysgen_auth=1
sysgen_auth_ntlm=1
sysgen_auth_schannel=1
sysgen_autoras=1
sysgen_aygshell=1
sysgen_battery=1
sysgen_bth=1
sysgen_bth_ag=1
sysgen_cachefilt=1
SYSGEN_CEDDK=1
sysgen_certs=1
SYSGEN_COMMCTRL=1
SYSGEN_COMMDLG=1
sysgen_connmc=1
SYSGEN_CORELOC=1
SYSGEN_CORESTRA=1
SYSGEN_CPP_EH_AND_RTTI=1
SYSGEN_CREDMAN=1
sysgen_crypto=1
SYSGEN_CTLPNL=1
sysgen_cursor=1
SYSGEN_DEVICE=1
SYSGEN_DEVLOAD=1
SYSGEN_DHCPSRV=1
SYSGEN_DISPLAY=1
sysgen_dotnetv2=1
sysgen_dotnetv2_support=1
sysgen_eap=1
sysgen_ethernet=1
sysgen_eth_80211=1
SYSGEN_FMTMSG=1
SYSGEN_FONTS_TAHOMA_1_07=1
SYSGEN_FSDBASE=1
SYSGEN_FSPASSWORD=1
sysgen_fsreplbit=1
SYSGEN_FULL_CRT=1
SYSGEN_GRADFILL=1
sysgen_help=1
sysgen_iabase=1
sysgen_ie_jscript=1
SYSGEN_IMAGING=1
SYSGEN_IMAGING_BMP_DECODE=1
SYSGEN_IMAGING_BMP_ENCODE=1
SYSGEN_IMAGING_GIF_DECODE=1
SYSGEN_IMAGING_GIF_ENCODE=1
SYSGEN_IMAGING_JPG_DECODE=1
SYSGEN_IMAGING_JPG_ENCODE=1
SYSGEN_IMAGING_PNG_DECODE=1
SYSGEN_IMAGING_PNG_ENCODE=1
SYSGEN_IMM=1
SYSGEN_IPHLPAPI=1
sysgen_irda=1
sysgen_menu_overlap=1
SYSGEN_MINGDI=1
SYSGEN_MINGWES=1
SYSGEN_MININPUT=1
SYSGEN_MINWMGR=1
sysgen_modem=1
SYSGEN_MSGQUEUE=1
sysgen_msim=1
SYSGEN_MSXML_DOM=1
SYSGEN_MSXML_XQL=1
SYSGEN_NDIS=1
SYSGEN_NDISUIO=1
SYSGEN_NKCOMPR=1
SYSGEN_NKMAPFILE=1
SYSGEN_NLED=1
sysgen_notify=1
sysgen_obex_client=1
sysgen_obex_server=1
SYSGEN_OLE=1
sysgen_pm=1
sysgen_ppp=1
sysgen_pptp=1
sysgen_qvgap=1
sysgen_redir=1
SYSGEN_RELFSD=1
SYSGEN_SERDEV=1
SYSGEN_SERVICES=1
sysgen_shell=1
SYSGEN_SOFTKB=1
sysgen_standardshell=1
SYSGEN_STDIO=1
SYSGEN_STDIOA=1
SYSGEN_STOREMGR=1
SYSGEN_STRSAFE=1
SYSGEN_TAPI=1
SYSGEN_TCPIP=1
sysgen_tcpip6=1
SYSGEN_TIMESVC_DST=1
SYSGEN_TOOLHELP=1
sysgen_touch=1
SYSGEN_UIPROXY=1
SYSGEN_UNIMODEM=1
SYSGEN_VEM=1
SYSGEN_WININET=1
SYSGEN_WINSOCK=1
CE_MODULES=coredll kcoredll nk nkloader oem oalioctl fpcrt msim commctrl
commdlg shell loaddbg shellcelog relfsd secur32 ntlmssp ntlmssp_svc spnego
schannel credman notify rnaapp connmc ndispwr netui asyncmac unimodem
servicesd servicesStart servicesEnum services tcpstk tcpip6 ipv6hlp dhcpv6l
irdastk winsock afd ws2 ws2instl wspm nspm ws2k ws2serv ssllsp rtl8139
smsc100fd ne2000 dhcp ethman wzcsvc wzcsapi islp2nds ar6k_ndis_cf wzctool
eapol eap eapchap eaptls netmui ndisuio veim dhcpsrv ndis autoras ppp ircomm
tapi pptp rsaenh crypt32 msasn1 redir netbios btsvc btd btdrt btagsvc bthuart
bthamb bthsc bthcsr bthuniv wendyser wcestreambt sio950 iphlpapi softkb gwes
keybd pointer display fonts waveapi audiodrv wavesamples uiproxy cxport
battdrvr nleddrvr device regenum busenum pm giisr mmtimer pci pcmconv serial
pccard 8042keyboard nopkeyboard ceddk cachefilt zlib filesys fsdmgr romfsd
toolhelp vmini rt_tests
_COREDLL_COMPONENTS=lmem showerr corecrt corestrw tnotify tapilib cryptapi
tbtcore coresip rectapi wmgr_c mgdi_c accel_c messagedialogboxthunk shcore
shortcut shexec shmisc fileopen fileinfo shellapis dsa timezones mmwave mmsnd
mmmix battery nled devenum devload coreimm coresioa corestra coresiow fmtmsg
serdev multiui coreloc crt_cpp_eh_and_rtti full_crt crypthash rsa32
COREDLL_COMPONENTS=coremain thunks lmem showerr corecrt corestrw tnotify
tapilib cryptapi tbtcore coresip rectapi wmgr_c mgdi_c accel_c
messagedialogboxthunk shcore shortcut shexec shmisc fileopen fileinfo
shellapis dsa timezones mmwave mmsnd mmmix battery nled devenum devload
coreimm coresioa corestra coresiow fmtmsg serdev multiui coreloc
crt_cpp_eh_and_rtti full_crt crypthash rsa32 lmem showerr corecrt corestrw
tnotify tapilib cryptapi tbtcore coresip rectapi wmgr_c mgdi_c accel_c
messagedialogboxthunk shcore shortcut shexec shmisc fileopen fileinfo
shellapis dsa timezones mmwave mmsnd mmmix battery nled devenum devload
coreimm coresioa corestra coresiow fmtmsg serdev multiui coreloc
crt_cpp_eh_and_rtti full_crt crypthash rsa32
KCOREDLL_COMPONENTS=kcoremain kthunks lmem showerr corecrt corestrw tnotify
tapilib cryptapi tbtcore coresip rectapi wmgr_c mgdi_c accel_c
messagedialogboxthunk shcore shortcut shexec shmisc fileopen fileinfo
shellapis dsa timezones mmwave mmsnd mmmix battery nled devenum devload
coreimm coresioa corestra coresiow fmtmsg serdev multiui coreloc
crt_cpp_eh_and_rtti full_crt crypthash rsa32 lmem showerr corecrt corestrw
tnotify tapilib cryptapi tbtcore coresip rectapi wmgr_c mgdi_c accel_c
messagedialogboxthunk shcore shortcut shexec shmisc fileopen fileinfo
shellapis dsa timezones mmwave mmsnd mmmix battery nled devenum devload
coreimm coresioa corestra coresiow fmtmsg serdev multiui coreloc
crt_cpp_eh_and_rtti full_crt crypthash rsa32
NK_COMPONENTS= nkcompr nkmapfile nkmsgq oemstub nklogger
OEM_COMPONENTS=nkstub oemmain oemmain_statickitl
FILESYS_COMPONENTS=fsheap fsmain fsprofile fsadvertise fsysram fsreghive
fsreplbit fsdbase fspass
DEVICE_COMPONENTS= devcore iorm pmif
PM_COMPONENTS= pm_default_pdd pm_mdd pm_pdd_common
GWE1_COMPONENTS=wmbase gweshare gwesmain immthunk msgque GSetWinLong CePtr
foregnd idle kbdui uibase msgbeep audio
GWE2_COMPONENTS=mgbase mgbitmap mgblt mgblt2 mgdc mgdibsec mgdraw mgrgn
mgwinmgr tchui calibrui mggradfill mgalphablendstub mgtt mgdrwtxt mgpal
mgpalnat
GWE3_COMPONENTS=accel btnctl caret cascade imectl clipbd cmbctl defwndproc
dlgmgr dlgmnem edctl gcache gwectrl icon iconcmn imgctl lbctl loadbmp loadimg
menu menuscrl mOverlap MouseAndTouchCursor iconcurs mcursor mcursor8 cursor
cursor8 mNoTapUI
GWE4_COMPONENTS=nclient oom sbcmn scbctl startup stcctl winmgr startui oomui
sbcmnview nclientview gcacheview btnctlview stcctlview cmbctlview edctlview
lbctlview menuview msgbox msgbox_hpc dlgmgr_hpc menu_hpc cmbctl_hpc
EditControlOs timer column atom drawmbar hotkey syscolor mgdx mgalias journal
mgtci
DCOM_MODULES= ole32 oleaut32 uuid
OLE32_COMPONENTS=mcombase mcommem mcomstr mcommon mcomlib ole232 docfile msf
exp mcomstm
GDIEX_MODULES= imaging
IMAGING_COMPONENTS= img_png img_libpng img_pngencoder img_pngdecoder
img_gif img_liblzw img_gifencoder img_gifdecoder img_jpeg img_jpegfull
img_jpegmem img_jpegencoder img_jpegdecoder img_bmp img_bmpencoder
img_bmpdecoder
IE_MODULES= shdocvw msxml3 wininet shlwapi uuid ieceext
SCRIPT_MODULES= jscript
SERVERS_MODULES= obexapi obexsrvr timesvc
SHELLSDK_MODULES= aygshell
AYGSHELL_COMPONENTS= aygshcore aygshhpc aygqvga
SHELL_MODULES= explorer shcore ceshell qvgap
CESHELL_COMPONENTS= ceshapi ceshui taskbarlist
SHCORE_COMPONENTS= shcore path
WCESHELLFE_MODULES= control ctlpnl cplmain AdvBacklight connpnl intlp
stdwavefiles bthpnl
DATASYNC_MODULES= cefobj repllog rapisrv eventrst rra_stm systemcpl udp2tcp
NETCFV2_MODULES= dotnetv2
CEBUILD: Running sysgen -p dcom preproc
Starting sysgen phase for project ( dcom )
CEBUILD: Running sysgen -p gdiex preproc
Starting sysgen phase for project ( gdiex )
CEBUILD: Running sysgen -p ie preproc
Starting sysgen phase for project ( ie )
CEBUILD: Running sysgen -p script preproc
Starting sysgen phase for project ( script )
CEBUILD: Running sysgen -p servers preproc
Starting sysgen phase for project ( servers )
CEBUILD: Running sysgen -p shellsdk preproc
Starting sysgen phase for project ( shellsdk )
CEBUILD: Running sysgen -p shell preproc
Starting sysgen phase for project ( shell )
CEBUILD: Running sysgen -p rdp preproc
Starting sysgen phase for project ( rdp )
CEBUILD: Running sysgen -p wceshellfe preproc
Starting sysgen phase for project ( wceshellfe )
CEBUILD: Running sysgen -p wceappsfe preproc
Starting sysgen phase for project ( wceappsfe )
CEBUILD: Running sysgen -p directx preproc
Starting sysgen phase for project ( directx )
CEBUILD: Running sysgen -p voip preproc
Starting sysgen phase for project ( voip )
CEBUILD: Running sysgen -p datasync preproc
Starting sysgen phase for project ( datasync )
CEBUILD: Running sysgen -p netcfv2 preproc
Starting sysgen phase for project ( netcfv2 )
CEBUILD: Running sysgen -p SQLCE preproc
Starting sysgen phase for project ( SQLCE )
CEBUILD: Running sysgen -p cellcore preproc
Starting sysgen phase for project ( cellcore )
CEBUILD: Running sysgen -p ostest preproc
Starting sysgen phase for project ( ostest )
CEBUILD: Running sysgen -p speech preproc
Starting sysgen phase for project ( speech )
CEBUILD: Running sysgen postproc (for COMMON)
Starting sysgen phase for project ( common )


User selected the following SYSGEN variables
SYSGEN_ASYNCMAC=1
sysgen_as_base=1
sysgen_as_file=1
sysgen_audio=1
SYSGEN_AUDIO_STDWAVEFILES=1
sysgen_auth=1
sysgen_auth_ntlm=1
sysgen_auth_schannel=1
sysgen_autoras=1
sysgen_aygshell=1
sysgen_battery=1
sysgen_bth=1
sysgen_bth_ag=1
sysgen_cachefilt=1
SYSGEN_CEDDK=1
sysgen_certs=1
SYSGEN_COMMCTRL=1
SYSGEN_COMMDLG=1
sysgen_connmc=1
SYSGEN_CORELOC=1
SYSGEN_CORESTRA=1
SYSGEN_CPP_EH_AND_RTTI=1
SYSGEN_CREDMAN=1
sysgen_crypto=1
SYSGEN_CTLPNL=1
sysgen_cursor=1
SYSGEN_DEVICE=1
SYSGEN_DEVLOAD=1
SYSGEN_DHCPSRV=1
SYSGEN_DISPLAY=1
sysgen_dotnetv2=1
sysgen_dotnetv2_support=1
sysgen_eap=1
sysgen_ethernet=1
sysgen_eth_80211=1
SYSGEN_FMTMSG=1
SYSGEN_FONTS_TAHOMA_1_07=1
SYSGEN_FSDBASE=1
SYSGEN_FSPASSWORD=1
...

Michel Verhagen (eMVP)

unread,
Jul 29, 2008, 2:38:10 AM7/29/08
to
Your build log is fine, it has the -q parameter so it doesn't do a
"Build and Sysgen". If you are sure you've never clicked "Build and
Sysgen" from the build menu your CE installation should still be fine.

Now that you've read the article you know you should never change
anything in the PUBLIC, PRIVATE or PLATFORM\COMMON folders (general
rule: do not change anything in any folders supplied by MS). You should
"clone" the component you want to change.

Tell us a bit more about what file you changed, why you did this and
what you're trying to accomplish (see also
http://guruce.com/blogpost/howtoaskquestionsonnewsgroups).

There may be better ways to get to a solution or at the very least we
can help you clone the component you want to change.

Good luck,

Michel Verhagen, eMVP
Check out my blog: http://GuruCE.com/blog

GuruCE Ltd.
Microsoft Embedded Partner
http://GuruCE.com
Consultancy, training and development services.

> ....

Jamie

unread,
Jul 29, 2008, 3:12:03 AM7/29/08
to

I do not have a need to clone any PRIVATE/PUBLIC code, I was just playing
around with the supplied code to learn about the CE environment.

Since I had modified some PRIVATE code and performed a build, just wanted to
know whether I may have hosed my install.


Thanks!
Jamie

Michel Verhagen (eMVP)

unread,
Jul 29, 2008, 3:15:21 AM7/29/08
to
No, but the changes you made in the private component will not be in
your final image since the private tree does not get build (unless you
do a build & sysgen which is something you don't want of course). That's
why if you want to change anything in PRIVATE, you HAVE to clone for
those changes to end up in your final image.
0 new messages