Dcmtk's build system and directory structure
Moderator: Moderator Team
Dcmtk's build system and directory structure
Ηi,
I want to implement a new dcmtk's module, It would be nice to use the directory structure and the build system of dcmtk
in order to automate the procedure.
So is anyone available in giving a short tutorial on that?
The module I'm trying to implement will allow dcmtk to optionally send dicom messages received, through HTTP protocol to a WADO/QUIDO/STOW - RS server.
Thanks,
~γ
I want to implement a new dcmtk's module, It would be nice to use the directory structure and the build system of dcmtk
in order to automate the procedure.
So is anyone available in giving a short tutorial on that?
The module I'm trying to implement will allow dcmtk to optionally send dicom messages received, through HTTP protocol to a WADO/QUIDO/STOW - RS server.
Thanks,
~γ
Re: Dcmtk's build system and directory structure
In order not opening a new thread a post a second question here.
Which make (or generally build command) should I use in order to recompile a dcmtk's static libraries.
The use case is that I make changes to file "dcmnet/libsrc/dimstore.cc" which when compiled is linked with "libdcmnet.a".
I execute command "make" to build again but it seems that though the file is recompiled and linked the changes have no effect and executables using "libdcmnet" use the old version of it.
The work around I have found is to make clean -> make all but it's a lot painful I have to say.
Does anyone know any better/faster/more appropriate solution?
Kind regads,
~γ
Which make (or generally build command) should I use in order to recompile a dcmtk's static libraries.
The use case is that I make changes to file "dcmnet/libsrc/dimstore.cc" which when compiled is linked with "libdcmnet.a".
I execute command "make" to build again but it seems that though the file is recompiled and linked the changes have no effect and executables using "libdcmnet" use the old version of it.
The work around I have found is to make clean -> make all but it's a lot painful I have to say.
Does anyone know any better/faster/more appropriate solution?
Kind regads,
~γ
-
- OFFIS DICOM Team
- Posts: 318
- Joined: Mon, 2014-03-03, 09:51
- Location: Oldenburg, Germany
Re: Dcmtk's build system and directory structure
This seems like a bug as it normally shouldn't happen. Are you perhaps using a network drive where the server might use different timestamps than the client etc.?
Re: Dcmtk's build system and directory structure
Unfortunately No! The whole building process is being held on my pc.Jan Schlamelcher wrote:This seems like a bug as it normally shouldn't happen. Are you perhaps using a network drive where the server might use different timestamps than the client etc.?
-
- DCMTK Developer
- Posts: 2512
- Joined: Tue, 2011-05-03, 14:38
- Location: Oldenburg, Germany
- Contact:
Re: Dcmtk's build system and directory structure
If you use GNU Autoconf (aka "./configure"): there are no dependencies in the "apps/Makefile.dep" file for the respective libraries.
Re: Dcmtk's build system and directory structure
I'm not so sure if I have understand your point of viewJ. Riesmeier wrote:If you use GNU Autoconf (aka "./configure"): there are no dependencies in the "apps/Makefile.dep" file for the respective libraries.
-
- DCMTK Developer
- Posts: 2512
- Joined: Tue, 2011-05-03, 14:38
- Location: Oldenburg, Germany
- Contact:
Re: Dcmtk's build system and directory structure
The "Makefile.dep" files in the "apps" subdirectory do not contain any reference to the library files (e.g. "libdcmnet.a"). In other words, if the "libdcmnet.a" changes, the command line tools in "dcmnet/apps" are not re-linked.
Re: Dcmtk's build system and directory structure
Weeeeell that's the problem! Thanks.J. Riesmeier wrote:The "Makefile.dep" files in the "apps" subdirectory do not contain any reference to the library files (e.g. "libdcmnet.a"). In other words, if the "libdcmnet.a" changes, the command line tools in "dcmnet/apps" are not re-linked.
Is there a workaround for this?
Could it be possible to avoid make clean and make all?
I suppose not
-
- DCMTK Developer
- Posts: 2512
- Joined: Tue, 2011-05-03, 14:38
- Location: Oldenburg, Germany
- Contact:
Re: Dcmtk's build system and directory structure
A workaround would be to delete (remove) the executable binary and call "make". Alternatively, you could call "make clean all" in the affected directory, e.g. "(cd dcmnet/apps/ && make clean all)".
PS: I don't hink that this is a "bug" as Jan assumed. At least this is the behavior of the DCMTK Makefiles for more than 20 years now
PS: I don't hink that this is a "bug" as Jan assumed. At least this is the behavior of the DCMTK Makefiles for more than 20 years now
Re: Dcmtk's build system and directory structure
No, I don't think either that this is a bug. Can be better categorized as featureJ. Riesmeier wrote:A workaround would be to delete (remove) the executable binary and call "make". Alternatively, you could call "make clean all" in the affected directory, e.g. "(cd dcmnet/apps/ && make clean all)".
PS: I don't hink that this is a "bug" as Jan assumed. At least this is the behavior of the DCMTK Makefiles for more than 20 years now
Thanks a lot J.
PS: It would be nice to give us a short introduction to DCMTK build module system
-
- DCMTK Developer
- Posts: 2054
- Joined: Fri, 2004-11-05, 13:47
- Location: Oldenburg, Germany
- Contact:
Re: Dcmtk's build system and directory structure
Just one note from the side: Did you look at the Orthanc DICOM server. It offers a DICOM web plugin, is open source and DCMTK-based, too. I guess it also implements some client features. Maybe you can join forces with the Orthanc author(s).
HTH, Michael
HTH, Michael
-
- DCMTK Developer
- Posts: 2512
- Joined: Tue, 2011-05-03, 14:38
- Location: Oldenburg, Germany
- Contact:
Re: Dcmtk's build system and directory structure
Please have a look at the documentation of the "config" module.It would be nice to give us a short introduction to DCMTK build module system
Who is online
Users browsing this forum: Google [Bot] and 0 guests