View Issue Details Jump to Notes ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0012323CMakeCMakepublic2011-07-08 11:562012-01-02 15:56
ReporterDan Thill 
Assigned ToDavid Cole 
PrioritylowSeverityminorReproducibilityalways
StatusclosedResolutionfixed 
PlatformWindowsOSWindows XP-64OS VersionSP3
Product VersionCMake 2.8.4 
Target VersionCMake 2.8.6Fixed in VersionCMake 2.8.6 
Summary0012323: FindDCMTK cannot find all includes for MSVC build of DCMTK
DescriptionWhen FindDCMTK is searching for headers for all the DCMTK libraries, it does not find them if DCMTK was installed via its own CMake INSTALL target. This is because the directory tree is slightly different than what FindDCMTK is expecting.

Fix is simple. Add the following to line 111 of FindDCMTK.cmake:

${DCMTK_DIR}/include/dcmtk/${dir}
Additional InformationBelow is the directory tree of an installed MSVC build of DCMTK 3.5.4

bin
etc
include
lib
share
bin\dcm2pnm.exe
bin\dcm2xml.exe
bin\dcmcjpeg.exe
bin\dcmconv.exe
bin\dcmcrle.exe
bin\dcmdjpeg.exe
bin\dcmdrle.exe
bin\dcmdspfn.exe
bin\dcmdump.exe
bin\dcmftest.exe
bin\dcmgpdir.exe
bin\dcmj2pnm.exe
bin\dcmmkcrv.exe
bin\dcmmkdir.exe
bin\dcmmklut.exe
bin\dcmodify.exe
bin\dcmp2pgm.exe
bin\dcmprscp.exe
bin\dcmprscu.exe
bin\dcmpschk.exe
bin\dcmpsmk.exe
bin\dcmpsprt.exe
bin\dcmpsrcv.exe
bin\dcmpssnd.exe
bin\dcmqridx.exe
bin\dcmqrscp.exe
bin\dcmqrti.exe
bin\dcmquant.exe
bin\dcmscale.exe
bin\dcmsign.exe
bin\dcod2lum.exe
bin\dconvlum.exe
bin\dsr2html.exe
bin\dsr2xml.exe
bin\dsrdump.exe
bin\dump2dcm.exe
bin\echoscu.exe
bin\findscu.exe
bin\mkreport.exe
bin\movescu.exe
bin\pdf2dcm.exe
bin\storescp.exe
bin\storescu.exe
bin\termscu.exe
bin\wlmscpfs.exe
bin\xml2dcm.exe
bin\xml2dsr.exe
etc\dcmpstat.cfg
etc\dcmqrscp.cfg
etc\printers.cfg
etc\storescp.cfg
etc\storescu.cfg
include\dcmtk
include\dcmtk\config
include\dcmtk\dcmdata
include\dcmtk\dcmimage
include\dcmtk\dcmimgle
include\dcmtk\dcmjpeg
include\dcmtk\dcmnet
include\dcmtk\dcmpstat
include\dcmtk\dcmqrdb
include\dcmtk\dcmsign
include\dcmtk\dcmsr
include\dcmtk\dcmtls
include\dcmtk\dcmwlm
include\dcmtk\ofstd
include\dcmtk\config\cfwin32.h
include\dcmtk\config\osconfig.h
include\dcmtk\dcmdata\cmdlnarg.h
include\dcmtk\dcmdata\dcbytstr.h
include\dcmtk\dcmdata\dcchrstr.h
include\dcmtk\dcmdata\dccodec.h
include\dcmtk\dcmdata\dcdatset.h
include\dcmtk\dcmdata\dcddirif.h
include\dcmtk\dcmdata\dcdebug.h
include\dcmtk\dcmdata\dcdefine.h
include\dcmtk\dcmdata\dcdeftag.h
include\dcmtk\dcmdata\dcdicdir.h
include\dcmtk\dcmdata\dcdicent.h
include\dcmtk\dcmdata\dcdict.h
include\dcmtk\dcmdata\dcdirrec.h
include\dcmtk\dcmdata\dcelem.h
include\dcmtk\dcmdata\dcerror.h
include\dcmtk\dcmdata\dcfilefo.h
include\dcmtk\dcmdata\dchashdi.h
include\dcmtk\dcmdata\dcistrma.h
include\dcmtk\dcmdata\dcistrmb.h
include\dcmtk\dcmdata\dcistrmf.h
include\dcmtk\dcmdata\dcistrmz.h
include\dcmtk\dcmdata\dcitem.h
include\dcmtk\dcmdata\dclist.h
include\dcmtk\dcmdata\dcmetinf.h
include\dcmtk\dcmdata\dcobject.h
include\dcmtk\dcmdata\dcofsetl.h
include\dcmtk\dcmdata\dcostrma.h
include\dcmtk\dcmdata\dcostrmb.h
include\dcmtk\dcmdata\dcostrmf.h
include\dcmtk\dcmdata\dcostrmz.h
include\dcmtk\dcmdata\dcovlay.h
include\dcmtk\dcmdata\dcpcache.h
include\dcmtk\dcmdata\dcpixel.h
include\dcmtk\dcmdata\dcpixseq.h
include\dcmtk\dcmdata\dcpxitem.h
include\dcmtk\dcmdata\dcrleccd.h
include\dcmtk\dcmdata\dcrlecce.h
include\dcmtk\dcmdata\dcrlecp.h
include\dcmtk\dcmdata\dcrledec.h
include\dcmtk\dcmdata\dcrledrg.h
include\dcmtk\dcmdata\dcrleenc.h
include\dcmtk\dcmdata\dcrleerg.h
include\dcmtk\dcmdata\dcrlerp.h
include\dcmtk\dcmdata\dcsequen.h
include\dcmtk\dcmdata\dcstack.h
include\dcmtk\dcmdata\dcswap.h
include\dcmtk\dcmdata\dctag.h
include\dcmtk\dcmdata\dctagkey.h
include\dcmtk\dcmdata\dctk.h
include\dcmtk\dcmdata\dctypes.h
include\dcmtk\dcmdata\dcuid.h
include\dcmtk\dcmdata\dcvm.h
include\dcmtk\dcmdata\dcvr.h
include\dcmtk\dcmdata\dcvrae.h
include\dcmtk\dcmdata\dcvras.h
include\dcmtk\dcmdata\dcvrat.h
include\dcmtk\dcmdata\dcvrcs.h
include\dcmtk\dcmdata\dcvrda.h
include\dcmtk\dcmdata\dcvrds.h
include\dcmtk\dcmdata\dcvrdt.h
include\dcmtk\dcmdata\dcvrfd.h
include\dcmtk\dcmdata\dcvrfl.h
include\dcmtk\dcmdata\dcvris.h
include\dcmtk\dcmdata\dcvrlo.h
include\dcmtk\dcmdata\dcvrlt.h
include\dcmtk\dcmdata\dcvrobow.h
include\dcmtk\dcmdata\dcvrof.h
include\dcmtk\dcmdata\dcvrpn.h
include\dcmtk\dcmdata\dcvrpobw.h
include\dcmtk\dcmdata\dcvrsh.h
include\dcmtk\dcmdata\dcvrsl.h
include\dcmtk\dcmdata\dcvrss.h
include\dcmtk\dcmdata\dcvrst.h
include\dcmtk\dcmdata\dcvrtm.h
include\dcmtk\dcmdata\dcvrui.h
include\dcmtk\dcmdata\dcvrul.h
include\dcmtk\dcmdata\dcvrulup.h
include\dcmtk\dcmdata\dcvrus.h
include\dcmtk\dcmdata\dcvrut.h
include\dcmtk\dcmdata\dcxfer.h
include\dcmtk\dcmimage\diargimg.h
include\dcmtk\dcmimage\diargpxt.h
include\dcmtk\dcmimage\dicmyimg.h
include\dcmtk\dcmimage\dicmypxt.h
include\dcmtk\dcmimage\dicocpt.h
include\dcmtk\dcmimage\dicoflt.h
include\dcmtk\dcmimage\dicoimg.h
include\dcmtk\dcmimage\dicomot.h
include\dcmtk\dcmimage\dicoopx.h
include\dcmtk\dcmimage\dicoopxt.h
include\dcmtk\dcmimage\dicopx.h
include\dcmtk\dcmimage\dicopxt.h
include\dcmtk\dcmimage\dicorot.h
include\dcmtk\dcmimage\dicosct.h
include\dcmtk\dcmimage\dihsvimg.h
include\dcmtk\dcmimage\dihsvpxt.h
include\dcmtk\dcmimage\dipalimg.h
include\dcmtk\dcmimage\dipalpxt.h
include\dcmtk\dcmimage\dipipng.h
include\dcmtk\dcmimage\dipitiff.h
include\dcmtk\dcmimage\diqtcmap.h
include\dcmtk\dcmimage\diqtctab.h
include\dcmtk\dcmimage\diqtfs.h
include\dcmtk\dcmimage\diqthash.h
include\dcmtk\dcmimage\diqthitl.h
include\dcmtk\dcmimage\diqthitm.h
include\dcmtk\dcmimage\diqtid.h
include\dcmtk\dcmimage\diqtpbox.h
include\dcmtk\dcmimage\diqtpix.h
include\dcmtk\dcmimage\diqtstab.h
include\dcmtk\dcmimage\diqttype.h
include\dcmtk\dcmimage\diquant.h
include\dcmtk\dcmimage\diregist.h
include\dcmtk\dcmimage\dirgbimg.h
include\dcmtk\dcmimage\dirgbpxt.h
include\dcmtk\dcmimage\diybrimg.h
include\dcmtk\dcmimage\diybrpxt.h
include\dcmtk\dcmimage\diyf2img.h
include\dcmtk\dcmimage\diyf2pxt.h
include\dcmtk\dcmimage\diyp2img.h
include\dcmtk\dcmimage\diyp2pxt.h
include\dcmtk\dcmimgle\dcmimage.h
include\dcmtk\dcmimgle\dibaslut.h
include\dcmtk\dcmimgle\diciefn.h
include\dcmtk\dcmimgle\dicielut.h
include\dcmtk\dcmimgle\dicrvfit.h
include\dcmtk\dcmimgle\didislut.h
include\dcmtk\dcmimgle\didispfn.h
include\dcmtk\dcmimgle\didocu.h
include\dcmtk\dcmimgle\diflipt.h
include\dcmtk\dcmimgle\digsdfn.h
include\dcmtk\dcmimgle\digsdlut.h
include\dcmtk\dcmimgle\diimage.h
include\dcmtk\dcmimgle\diinpx.h
include\dcmtk\dcmimgle\diinpxt.h
include\dcmtk\dcmimgle\diluptab.h
include\dcmtk\dcmimgle\dimo1img.h
include\dcmtk\dcmimgle\dimo2img.h
include\dcmtk\dcmimgle\dimocpt.h
include\dcmtk\dcmimgle\dimoflt.h
include\dcmtk\dcmimgle\dimoimg.h
include\dcmtk\dcmimgle\dimoipxt.h
include\dcmtk\dcmimgle\dimomod.h
include\dcmtk\dcmimgle\dimoopx.h
include\dcmtk\dcmimgle\dimoopxt.h
include\dcmtk\dcmimgle\dimopx.h
include\dcmtk\dcmimgle\dimopxt.h
include\dcmtk\dcmimgle\dimorot.h
include\dcmtk\dcmimgle\dimosct.h
include\dcmtk\dcmimgle\diobjcou.h
include\dcmtk\dcmimgle\diovdat.h
include\dcmtk\dcmimgle\diovlay.h
include\dcmtk\dcmimgle\diovlimg.h
include\dcmtk\dcmimgle\diovpln.h
include\dcmtk\dcmimgle\dipixel.h
include\dcmtk\dcmimgle\diplugin.h
include\dcmtk\dcmimgle\dipxrept.h
include\dcmtk\dcmimgle\diregbas.h
include\dcmtk\dcmimgle\dirotat.h
include\dcmtk\dcmimgle\discalet.h
include\dcmtk\dcmimgle\displint.h
include\dcmtk\dcmimgle\ditranst.h
include\dcmtk\dcmimgle\diutils.h
include\dcmtk\dcmjpeg\ddpiimpl.h
include\dcmtk\dcmjpeg\dipijpeg.h
include\dcmtk\dcmjpeg\djcodecd.h
include\dcmtk\dcmjpeg\djcodece.h
include\dcmtk\dcmjpeg\djcparam.h
include\dcmtk\dcmjpeg\djdecabs.h
include\dcmtk\dcmjpeg\djdecbas.h
include\dcmtk\dcmjpeg\djdecext.h
include\dcmtk\dcmjpeg\djdeclol.h
include\dcmtk\dcmjpeg\djdecode.h
include\dcmtk\dcmjpeg\djdecpro.h
include\dcmtk\dcmjpeg\djdecsps.h
include\dcmtk\dcmjpeg\djdecsv1.h
include\dcmtk\dcmjpeg\djdijg12.h
include\dcmtk\dcmjpeg\djdijg16.h
include\dcmtk\dcmjpeg\djdijg8.h
include\dcmtk\dcmjpeg\djeijg12.h
include\dcmtk\dcmjpeg\djeijg16.h
include\dcmtk\dcmjpeg\djeijg8.h
include\dcmtk\dcmjpeg\djencabs.h
include\dcmtk\dcmjpeg\djencbas.h
include\dcmtk\dcmjpeg\djencext.h
include\dcmtk\dcmjpeg\djenclol.h
include\dcmtk\dcmjpeg\djencode.h
include\dcmtk\dcmjpeg\djencpro.h
include\dcmtk\dcmjpeg\djencsps.h
include\dcmtk\dcmjpeg\djencsv1.h
include\dcmtk\dcmjpeg\djrplol.h
include\dcmtk\dcmjpeg\djrploss.h
include\dcmtk\dcmjpeg\djutils.h
include\dcmtk\dcmnet\assoc.h
include\dcmtk\dcmnet\cond.h
include\dcmtk\dcmnet\dcasccff.h
include\dcmtk\dcmnet\dcasccfg.h
include\dcmtk\dcmnet\dccfenmp.h
include\dcmtk\dcmnet\dccfpcmp.h
include\dcmtk\dcmnet\dccfprmp.h
include\dcmtk\dcmnet\dccfrsmp.h
include\dcmtk\dcmnet\dccftsmp.h
include\dcmtk\dcmnet\dccfuidh.h
include\dcmtk\dcmnet\dcmlayer.h
include\dcmtk\dcmnet\dcmsmap.h
include\dcmtk\dcmnet\dcmtrans.h
include\dcmtk\dcmnet\dcompat.h
include\dcmtk\dcmnet\dicom.h
include\dcmtk\dcmnet\dimse.h
include\dcmtk\dcmnet\diutil.h
include\dcmtk\dcmnet\dul.h
include\dcmtk\dcmnet\extneg.h
include\dcmtk\dcmnet\lst.h
include\dcmtk\dcmpstat\dcmpstat.h
include\dcmtk\dcmpstat\dvcache.h
include\dcmtk\dcmpstat\dviface.h
include\dcmtk\dcmpstat\dvpsab.h
include\dcmtk\dcmpstat\dvpsabl.h
include\dcmtk\dcmpstat\dvpsal.h
include\dcmtk\dcmpstat\dvpsall.h
include\dcmtk\dcmpstat\dvpscf.h
include\dcmtk\dcmpstat\dvpscu.h
include\dcmtk\dcmpstat\dvpscul.h
include\dcmtk\dcmpstat\dvpsda.h
include\dcmtk\dcmpstat\dvpsdal.h
include\dcmtk\dcmpstat\dvpsdef.h
include\dcmtk\dcmpstat\dvpsfs.h
include\dcmtk\dcmpstat\dvpsga.h
include\dcmtk\dcmpstat\dvpsgal.h
include\dcmtk\dcmpstat\dvpsgl.h
include\dcmtk\dcmpstat\dvpsgll.h
include\dcmtk\dcmpstat\dvpsgr.h
include\dcmtk\dcmpstat\dvpsgrl.h
include\dcmtk\dcmpstat\dvpshlp.h
include\dcmtk\dcmpstat\dvpsib.h
include\dcmtk\dcmpstat\dvpsibl.h
include\dcmtk\dcmpstat\dvpsmsg.h
include\dcmtk\dcmpstat\dvpsov.h
include\dcmtk\dcmpstat\dvpsovl.h
include\dcmtk\dcmpstat\dvpspl.h
include\dcmtk\dcmpstat\dvpspll.h
include\dcmtk\dcmpstat\dvpspr.h
include\dcmtk\dcmpstat\dvpsprt.h
include\dcmtk\dcmpstat\dvpsri.h
include\dcmtk\dcmpstat\dvpsril.h
include\dcmtk\dcmpstat\dvpsrs.h
include\dcmtk\dcmpstat\dvpsrsl.h
include\dcmtk\dcmpstat\dvpssp.h
include\dcmtk\dcmpstat\dvpsspl.h
include\dcmtk\dcmpstat\dvpssv.h
include\dcmtk\dcmpstat\dvpssvl.h
include\dcmtk\dcmpstat\dvpstat.h
include\dcmtk\dcmpstat\dvpstx.h
include\dcmtk\dcmpstat\dvpstxl.h
include\dcmtk\dcmpstat\dvpstyp.h
include\dcmtk\dcmpstat\dvpsvl.h
include\dcmtk\dcmpstat\dvpsvll.h
include\dcmtk\dcmpstat\dvpsvw.h
include\dcmtk\dcmpstat\dvpsvwl.h
include\dcmtk\dcmpstat\dvsighdl.h
include\dcmtk\dcmqrdb\dcmqrcbf.h
include\dcmtk\dcmqrdb\dcmqrcbg.h
include\dcmtk\dcmqrdb\dcmqrcbm.h
include\dcmtk\dcmqrdb\dcmqrcbs.h
include\dcmtk\dcmqrdb\dcmqrcnf.h
include\dcmtk\dcmqrdb\dcmqrdba.h
include\dcmtk\dcmqrdb\dcmqrdbi.h
include\dcmtk\dcmqrdb\dcmqrdbs.h
include\dcmtk\dcmqrdb\dcmqridx.h
include\dcmtk\dcmqrdb\dcmqropt.h
include\dcmtk\dcmqrdb\dcmqrptb.h
include\dcmtk\dcmqrdb\dcmqrsrv.h
include\dcmtk\dcmqrdb\dcmqrtis.h
include\dcmtk\dcmsign\dcsignat.h
include\dcmtk\dcmsign\sialgo.h
include\dcmtk\dcmsign\siautopr.h
include\dcmtk\dcmsign\sibrsapr.h
include\dcmtk\dcmsign\sicert.h
include\dcmtk\dcmsign\sicertvf.h
include\dcmtk\dcmsign\sicreapr.h
include\dcmtk\dcmsign\sidsa.h
include\dcmtk\dcmsign\simac.h
include\dcmtk\dcmsign\simaccon.h
include\dcmtk\dcmsign\simd5.h
include\dcmtk\dcmsign\sinullpr.h
include\dcmtk\dcmsign\siprivat.h
include\dcmtk\dcmsign\siripemd.h
include\dcmtk\dcmsign\sirsa.h
include\dcmtk\dcmsign\sisha1.h
include\dcmtk\dcmsign\sisprof.h
include\dcmtk\dcmsign\sitstamp.h
include\dcmtk\dcmsign\sitypes.h
include\dcmtk\dcmsr\dsrbascc.h
include\dcmtk\dcmsr\dsrchecc.h
include\dcmtk\dcmsr\dsrcitem.h
include\dcmtk\dcmsr\dsrcodtn.h
include\dcmtk\dcmsr\dsrcodvl.h
include\dcmtk\dcmsr\dsrcomcc.h
include\dcmtk\dcmsr\dsrcomtn.h
include\dcmtk\dcmsr\dsrcomvl.h
include\dcmtk\dcmsr\dsrcontn.h
include\dcmtk\dcmsr\dsrcsidl.h
include\dcmtk\dcmsr\dsrdattn.h
include\dcmtk\dcmsr\dsrdoc.h
include\dcmtk\dcmsr\dsrdoctn.h
include\dcmtk\dcmsr\dsrdoctr.h
include\dcmtk\dcmsr\dsrdtitn.h
include\dcmtk\dcmsr\dsrenhcc.h
include\dcmtk\dcmsr\dsrimgfr.h
include\dcmtk\dcmsr\dsrimgtn.h
include\dcmtk\dcmsr\dsrimgvl.h
include\dcmtk\dcmsr\dsriodcc.h
include\dcmtk\dcmsr\dsrkeycc.h
include\dcmtk\dcmsr\dsrmamcc.h
include\dcmtk\dcmsr\dsrnumtn.h
include\dcmtk\dcmsr\dsrnumvl.h
include\dcmtk\dcmsr\dsrpnmtn.h
include\dcmtk\dcmsr\dsrprocc.h
include\dcmtk\dcmsr\dsrreftn.h
include\dcmtk\dcmsr\dsrscogr.h
include\dcmtk\dcmsr\dsrscotn.h
include\dcmtk\dcmsr\dsrscovl.h
include\dcmtk\dcmsr\dsrsoprf.h
include\dcmtk\dcmsr\dsrstrvl.h
include\dcmtk\dcmsr\dsrtcodt.h
include\dcmtk\dcmsr\dsrtcosp.h
include\dcmtk\dcmsr\dsrtcotn.h
include\dcmtk\dcmsr\dsrtcoto.h
include\dcmtk\dcmsr\dsrtcovl.h
include\dcmtk\dcmsr\dsrtextn.h
include\dcmtk\dcmsr\dsrtimtn.h
include\dcmtk\dcmsr\dsrtlist.h
include\dcmtk\dcmsr\dsrtncsr.h
include\dcmtk\dcmsr\dsrtree.h
include\dcmtk\dcmsr\dsrtypes.h
include\dcmtk\dcmsr\dsruidtn.h
include\dcmtk\dcmsr\dsrwavch.h
include\dcmtk\dcmsr\dsrwavtn.h
include\dcmtk\dcmsr\dsrwavvl.h
include\dcmtk\dcmsr\dsrxmlc.h
include\dcmtk\dcmsr\dsrxmld.h
include\dcmtk\dcmsr\dsrxrdcc.h
include\dcmtk\dcmtls\tlslayer.h
include\dcmtk\dcmtls\tlstrans.h
include\dcmtk\dcmwlm\wlds.h
include\dcmtk\dcmwlm\wldsfs.h
include\dcmtk\dcmwlm\wlfsim.h
include\dcmtk\dcmwlm\wlmactmg.h
include\dcmtk\dcmwlm\wltypdef.h
include\dcmtk\ofstd\ofalgo.h
include\dcmtk\ofstd\ofbmanip.h
include\dcmtk\ofstd\ofcast.h
include\dcmtk\ofstd\ofcmdln.h
include\dcmtk\ofstd\ofconapp.h
include\dcmtk\ofstd\ofcond.h
include\dcmtk\ofstd\ofconfig.h
include\dcmtk\ofstd\ofconsol.h
include\dcmtk\ofstd\ofcrc32.h
include\dcmtk\ofstd\ofdate.h
include\dcmtk\ofstd\ofdatime.h
include\dcmtk\ofstd\offname.h
include\dcmtk\ofstd\ofglobal.h
include\dcmtk\ofstd\oflist.h
include\dcmtk\ofstd\oflogfil.h
include\dcmtk\ofstd\ofoset.h
include\dcmtk\ofstd\ofset.h
include\dcmtk\ofstd\ofsetit.h
include\dcmtk\ofstd\ofstack.h
include\dcmtk\ofstd\ofstd.h
include\dcmtk\ofstd\ofstdinc.h
include\dcmtk\ofstd\ofstream.h
include\dcmtk\ofstd\ofstring.h
include\dcmtk\ofstd\ofthread.h
include\dcmtk\ofstd\oftime.h
include\dcmtk\ofstd\oftimer.h
include\dcmtk\ofstd\oftypes.h
include\dcmtk\ofstd\ofuoset.h
lib\dcm2xml.dtd
lib\dcmdata.lib
lib\dcmdsig.lib
lib\dcmimage.lib
lib\dcmimgle.lib
lib\dcmjpeg.lib
lib\dcmnet.lib
lib\dcmpstat.lib
lib\dcmqrdb.lib
lib\dcmsr.lib
lib\dcmtls.lib
lib\dcmwlm.lib
lib\dicom.dic
lib\dsr2xml.xsd
lib\ijg12.lib
lib\ijg16.lib
lib\ijg8.lib
lib\ofstd.lib
lib\private.dic
share\data
share\doc
share\data\camera.lut
share\data\dumppat.txt
share\data\monitor.lut
share\data\philips.lut
share\data\printer.lut
share\data\scanner.lut
share\doc\html
share\doc\asconfig.txt
share\doc\ciphers.txt
share\doc\COPYRIGHT
share\doc\datadict.txt
share\doc\dcmqrcnf.txt
share\doc\dcmqrset.txt
share\doc\FAQ
share\doc\HISTORY
share\doc\randseed.txt
share\doc\testing.txt
share\doc\wwwapp.txt
TagsNo tags attached.
Attached Files

 Relationships

  Notes
(0027061)
Niels Dekker (reporter)
2011-07-23 04:45
edited on: 2011-07-23 04:52

I can imagine that it would be useful to you to add ${DCMTK_DIR}/include/dcmtk/${dir} to the PATHS of the find_path call (line 111 of FindDCMTK.cmake, as you suggest).

However, personally I'm not using DCMTK via its own CMake INSTALL target, but instead, directly from its source tree. I guess that's a common use case as well. When I retrieve DCMTK directly from <http://git.dcmtk.org>, [^] its include directory paths look as follows:

  My3rdPartySourceDir\dcmtk\dcmdata\include\dcmtk\dcmdata
  My3rdPartySourceDir\dcmtk\dcmimage\include\dcmtk\dcmimage
  ...
  My3rdPartySourceDir\dcmtk\oflog\include\dcmtk\oflog
  My3rdPartySourceDir\dcmtk\ofstd\include\dcmtk\ofstd

So in order to support using DCMTK directly from its source tree, the following should (also) be added to the PATHS of of the find_path call:

  ${DCMTK_DIR}/${dir}/include/dcmtk/${dir}

As I tested, running CMake 2.8.5 on Windows 7.

So I would suggest to add both ${DCMTK_DIR}/include/dcmtk/${dir} and ${DCMTK_DIR}/${dir}/include/dcmtk/${dir} to the find_path call.

What do you think?

-- Niels

(0027140)
Dan Thill (reporter)
2011-08-01 11:15

I don't see any reason not to support both methods--I completely understand the perspective of the implementor. Just for clarity, my project does the following:

- download dcmtk source
- perform an out-of-source cmake build of DCMTK
- let it install to a directory via the INSTALL target
- I copy that final tree around. I have many regression test systems, other developers, etc.
- Project then tries to use FindDCMTK to locate tree.

Honestly, I ended up hacking together my own FindDCMTK module to work around it because of this issue and the fact our existing source code all uses DCMTK via a single toplevel include directory, e.g., "#include <dcmtk/dcmdata/dcitem.h>". The stock FindDCMTK exports each subdirectory separately as a DCMTK_*_INCLUDE_DIR. I only need the single toplevel one--which only makes sense if you use DCMTK that's been INSTALL'd. But that's a completely separate workflow and beyond the scope of this bug report.
(0027186)
David Cole (manager)
2011-08-09 15:19

Fix pushed to CMake 'next':

  http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0167ceaf98c78f40532fc187b35440d033ac837e [^]
(0028123)
David Cole (manager)
2012-01-02 15:56

Closing resolved issues that have not been updated in more than 4 months.

 Issue History
Date Modified Username Field Change
2011-07-08 11:56 Dan Thill New Issue
2011-07-23 04:45 Niels Dekker Note Added: 0027061
2011-07-23 04:52 Niels Dekker Note Edited: 0027061
2011-08-01 10:47 David Cole Assigned To => David Cole
2011-08-01 10:47 David Cole Status new => assigned
2011-08-01 10:47 David Cole Target Version => CMake 2.8.6
2011-08-01 11:15 Dan Thill Note Added: 0027140
2011-08-09 15:19 David Cole Note Added: 0027186
2011-08-09 15:19 David Cole Status assigned => resolved
2011-08-09 15:19 David Cole Fixed in Version => CMake 2.8.6
2011-08-09 15:19 David Cole Resolution open => fixed
2012-01-02 15:56 David Cole Note Added: 0028123
2012-01-02 15:56 David Cole Status resolved => closed


Copyright © 2000 - 2018 MantisBT Team