CamiTK Community Edition issueshttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues2019-08-03T17:34:37+02:00https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/87Bug library installation path2019-08-03T17:34:37+02:00Clement BeitoneBug library installation path## About you
Clément Beitone (TIMC-GMCAO) working on a cep that use other ceps
## Overview
It seems that a bug is hidden somewhere inside the cmake install path.
Whenever I install a cep that contains a library, the library install pa...## About you
Clément Beitone (TIMC-GMCAO) working on a cep that use other ceps
## Overview
It seems that a bug is hidden somewhere inside the cmake install path.
Whenever I install a cep that contains a library, the library install path which should be something like:
`/usr/local/include/camitk-4.2/libraries/devicelibrary/**libname**`
appears to be:
`/usr/local/include/camitk-4.2/libraries/**devicelibrary/devicelibrary**`
## Steps to Reproduce
make a manual global installation of any cep that contains at least a library in the folder libraries
## CamiTK Version
- CamiTK version........................... CamiTK 4.2.dev.develop.2eaece56
- CamiTK Short Version..................... camitk-4.2
- CamiTK SO NAME........................... 4
- Operating System......................... LINUX
- Build type............................... RELEASE
- QT Version............................... 5.11.3
- VTK Version.............................. 7.1.1
- Global Installation Directory [G]........ /usr/local
- Local Installation Directory [L]......... /home/beitoncl/.config/CamiTK
- Current Working Directory [W]............ /home/beitoncl/Documents/Dev/calibrationPolaris/calibrationcep/build
- Test Data Directory...................... /home/beitoncl/Documents/Dev/calibrationPolaris/calibrationcep/build/share/camitk-4.2/testdata
- Component Extension Directories.......... /home/beitoncl/Documents/Dev/calibrationPolaris/calibrationcep/build/lib/camitk-4.2/components
/usr/local/lib/camitk-4.2/components
- Action Extension Directories............. /home/beitoncl/Documents/Dev/calibrationPolaris/calibrationcep/build/lib/camitk-4.2/actions
/usr/local/lib/camitk-4.2/actions
- Number of Component Extensions........... 13 (locations: 12 global, 0 local, 1 in working directory, 0 manually installed by user)
- Number of File Extensions Supported...... 25
- Number of Action Extensions.............. 19 (locations: 18 global, 0 local, 1 in working directory, 0 manually installed by user)
- Number of Actions........................ 98
- Registered components:
- [G] Alias Wavefront OBJ Component...... obj
- [W] CalibrationComponentExtension...... calib
- [G] Device Component Extension......... device
- [G] FocusImageComponentExtension....... fia
- [G] Msh Component...................... msh
- [G] Off Component...................... off
- [G] STL Component...................... stl, STL
- [G] TrackerComponentExtension.......... tbuf
- [G] USImageComponentExtension.......... usi
- [G] USStreamComponentExtension......... uss
- [G] VRML 2 Component................... vrml, wrl
- [G] VTK Component...................... vtk
- [G] vtkImages Component................ jpg, png, tiff, tif, bmp, pbm, pgm, ppm, mhd, mha, raw
- Registered actions:
- [G] Application Level Actions.......... 21 actions
- [G] Basic Mesh Extension............... 9 actions
- [G] Basic Topology..................... 2 actions
- [G] BoxVOIExtension.................... 1 actions
- [W] CalibrationActionExtension......... 2 actions
- [G] Device Action Extension............ 6 actions
- [G] FocusActionExtension............... 1 actions
- [G] Frame Edition Extension............ 1 actions
- [G] Image LUT.......................... 1 actions
- [G] ImageAcquisitionActionExtension.... 7 actions
- [G] Mesh Processing.................... 17 actions
- [G] MultiPickingExtension.............. 1 actions
- [G] Pixel Color Changer................ 1 actions
- [G] ReconstructionExtension............ 1 actions
- [G] Reorient Image Extension........... 1 actions
- [G] ResampleExtension.................. 1 actions
- [G] ShowIn3DExtension.................. 5 actions
- [G] TrackerActionExtension............. 19 actions
- [G] VolumeRenderingExtension........... 1 actions
---
**please do not remove anything below this line**Emmanuel PromayonEmmanuel Promayon2019-08-02https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/127Support of ITK5 on debian2022-11-20T10:08:49+01:00Emmanuel PromayonSupport of ITK5 on debian## About you
CamiTK developer
## Product
camitk community edition
## Overview
debian got rid of itk4, and will only support itk5 from now on.
Next ubuntu LTS has a debian freeze on February 24
## Challenge
get camitk5 back into un...## About you
CamiTK developer
## Product
camitk community edition
## Overview
debian got rid of itk4, and will only support itk5 from now on.
Next ubuntu LTS has a debian freeze on February 24
## Challenge
get camitk5 back into unstable and therefore support ITK5 and all new sid niceties and updates...Emmanuel PromayonEmmanuel Promayon2022-02-14https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/177Save All fails if a Component does not have a filename (e.g. newly reconstruc...2024-02-07T12:35:39+01:00Manik BhattacharjeeSave All fails if a Component does not have a filename (e.g. newly reconstructed mesh)## About you
CamiTK developer
## Overview
SaveAll implementation is wrong and fails in multiple ways when components to save do not have a filename. This can lead to data loss (thinking a file was saved even it was not) and segfault (w...## About you
CamiTK developer
## Overview
SaveAll implementation is wrong and fails in multiple ways when components to save do not have a filename. This can lead to data loss (thinking a file was saved even it was not) and segfault (when no component is selected).
## Steps to Reproduce
Open two masks (e.g. skull-binary.stl and head-binary from testdata).
Using action Reconstruction to create a mesh from each mask.
- Scenario 1
- Select both meshes
- Click on "Save All" from the File menu
- In the first Save As window, save as Mesh1.obj
- In the second window, save as Mesh2.obj
- Scenario 2
- Deselect all components
- Click on "Save All" from the File menu
## Actual VS Expected Result
- Scenario 1
- Expected: both meshes are saved in their own file, each now has a filename set to the one that was used to save them
- Actual: only one of the meshes was saved in both files. This mesh now has a filename set to the latest file saved. The other mesh is ignored and not saved
- Scenario 2
- Expected: both meshes are saved in their own file
- Actual result: CamiTK crashes, all work is lost
## Interpretation & Possible fixes
- `SaveAllAction::apply` calls `Application::save` on all top-level components.
- `Application::save` checks if the filename is empty. If it is, it calls
- `getAction("Save As")->apply()`.
The problem here is that the `SaveAsAction::apply` function does not know which component it must save, as this is not a parameter of `apply`.
It will try to save the last selected component, which is probably not the one we are trying to save.
`Component* comp = Application::getSelectedComponents().last();`
If there is no selected component (Scenario 2), this tries to get a Component from an empty list and crashes (qt_assert in debug mode).
If there is at least a selected component, SaveAll will save the last selected component over and over again.
**To fix this**
Modify action "Save As" so we can set a componentToSave parameter, apply it, then reset ComponentToSave to null_ptr. Apply would then check for this parameter, revert to the current behaviour if it is empty, and check if there are selectedComponents before getting the last element.
## CamiTK Version
CamiTK 5.2.0.158-camitk-file-format-metadata-scenes-processing-scenarios.c46342cd
---
**please do not remove anything below this line**Manik BhattacharjeeManik Bhattacharjeehttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/176Triggering the Arbitrary Slice action crashes with 2D images2023-12-22T23:07:35+01:00Emmanuel PromayonTriggering the Arbitrary Slice action crashes with 2D images## About you
CamiTK developer
## Overview
When triggering the "Arbitrary Slice" on an image component that contains a 2D image, the application crashes.
## Steps to Reproduce
Save [this image](/uploads/43c877105d9b1b7d3fd67d85088016...## About you
CamiTK developer
## Overview
When triggering the "Arbitrary Slice" on an image component that contains a 2D image, the application crashes.
## Steps to Reproduce
Save [this image](/uploads/43c877105d9b1b7d3fd67d85088016b0/debian-logo.png) and open it with `camitk-imp`
Select the component, and select the `View` → `Arbitrary Slice`
→ `camitk-imp` crashes
## Actual VS Expected Result
No crash !
The arbitrary slice action should abort cleanly and a warning message should be displayed to explain why the action aborted.
## Interpretation & Possible fixes
The arbitrary slice's `SingleImageComponent` is only created if the image component has 3 dimensions (see ImageComponent.cpp:562 and line 571. When the arbitrary slice action is triggered it does not take into account the fact that an `ImageComponent` can have no arbitrary slice subcomponent.
Check the pointer value before accessing it (see AnglesAndTranslationAction::getWidget(), line 106).
## CamiTK Version
CamiTK 5.2.0.develop. 54c95fce
---
**please do not remove anything below this line**https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/173In Action viewer's search panel, the Family combo box does not filter actions2023-11-29T14:58:33+01:00Manik BhattacharjeeIn Action viewer's search panel, the Family combo box does not filter actions## About you
CamiTK developer
## Overview
In the action viewer, the "Family" combo box does nothing.
## Steps to Reproduce
- from a newly built CamiTK, run camitk-imp
- open testdata/sinus-displaced.mha
- In the menu click on View/To...## About you
CamiTK developer
## Overview
In the action viewer, the "Family" combo box does nothing.
## Steps to Reproduce
- from a newly built CamiTK, run camitk-imp
- open testdata/sinus-displaced.mha
- In the menu click on View/Toggle Docked Viewers/Action Viewer to show the Action viewer panel
- Select the component
- Click on the Action combobox in the actions panel and see the list of available actions
- Select a Family e.g. Frame
- Click on the Action combobox, all actions are still there
## Actual VS Expected Result
All actions are visible, nor only the actions from the selected family.
## Interpretation & Possible fixes
This bug was introduced by commit 1bdd9a84 with a change to ImpMainWindow.cpp around line 111.
The line
`actionViewer->setSearchPanelVisible(true);`
was removed.
We could either restore this line (and the necessary dynamic_cast to ActionViewer) or call it from the ActionViewer constructor.
I am not certain why setSearchPanelVisible should disconnect the link from the combobox'signals to the relevant methods.
## CamiTK Version
CamiTK 5.2.0.157-reference-frames-and-transformations-management.a9f78af5
---
**please do not remove anything below this line**Manik BhattacharjeeManik Bhattacharjeehttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/172On Windows, CamiTK applications may block or wait indefinitely2023-11-27T15:47:09+01:00Manik BhattacharjeeOn Windows, CamiTK applications may block or wait indefinitely## About you
CamiTK developer, reported by two windows users
## Overview
After a crash, and even after reinstalling CamiTK, camitk-imp does not open or takes a very long time (several minutes) before opening. camitk-config can display ...## About you
CamiTK developer, reported by two windows users
## Overview
After a crash, and even after reinstalling CamiTK, camitk-imp does not open or takes a very long time (several minutes) before opening. camitk-config can display paths, but will not return for a very long time, or display a locking timeout in a command window.
## Steps to Reproduce
Not obvious. It seems to involve .lock or .rmlock files in %username%/AppData/Roaming/CamiTK directory.
Removing the entire directory seems to fix it.
## Actual VS Expected Result
Expected: camitk-imp starts in a few seconds (not minutes), and camitk-config returns less than a second after displaying the info (not minutes).
## Relevant logs and/or screenshots
A Qt message is sometimes displayed in a loop in a terminal while camitk-config is waiting to exit (data already displayed, but the software is not exiting): "Got unexpected locking error 123"
## Interpretation & Possible fixes
Not obvious. It seems that in some circumstances, in the %username%/AppData/Roaming/CamiTK directory, some lock files are present and Qt tries to lock settings files but fails to do so. It might also come from a conflict between camitk-config and camitk-imp trying to access the file at the same time.
This stems from the Application class creating a QSettings object in Application.cpp (global static object):
`QSettings Application::settings(QSettings::IniFormat, QSettings::UserScope, "CamiTK", QString(Core::version).remove(QChar(' ')));`
From [Qt documentation](https://doc.qt.io/qt-6/qsettings.html#accessing-settings-from-multiple-threads-or-processes-simultaneously) IniFormat should work and manage locking correctly, but it seems that sometimes it fails to do so.
Turning the locking safety off might solve this problem as stated [in the documentation](https://doc.qt.io/qt-6/qsettings.html#setAtomicSyncRequired) but it might create other issues (if multiple camitk applications are running and overwrite each other's settings).
## CamiTK Version
Stable 5.0 windows version
---
**please do not remove anything below this line**https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/171Crash when printing debug information (F2 key)2023-11-24T16:35:20+01:00Manik BhattacharjeeCrash when printing debug information (F2 key)## About you
CamiTK developer
## Overview
When a component is displayed in InteractiveViewer, pressing the F2 key should display debug information in the log.
Instead, CamiTK crashes (segfault).
## Steps to Reproduce
- Run camitk-imp...## About you
CamiTK developer
## Overview
When a component is displayed in InteractiveViewer, pressing the F2 key should display debug information in the log.
Instead, CamiTK crashes (segfault).
## Steps to Reproduce
- Run camitk-imp
- Open a mesh (.obj) or an image (.nii)
- Push F2 key
## Actual VS Expected Result
IMP crashes and does not display debug information
## Interpretation & Possible fixes
Crash happens in InteractiveViewer.cpp when creating a list of all props from a component:
`std::list<vtkSmartPointer <vtkProp> > allActors(actorMap.values(c).begin(), actorMap.values(c).end());`
## CamiTK Version
Current develop branch of camitk-5.2
---
**please do not remove anything below this line**Manik BhattacharjeeManik Bhattacharjeehttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/168Fancy segfault2023-10-29T15:05:39+01:00Emmanuel PromayonFancy segfault## About you
CamiTK dev
## Overview
Application camitk-fancy crashed with segfault as soon as it starts.
## Steps to Reproduce
- build CamiTK with -DCEP_TUTORIAL=TRUE
- cd build
- bin/camitk-fancy
## Actual VS Expected Result
Crash...## About you
CamiTK dev
## Overview
Application camitk-fancy crashed with segfault as soon as it starts.
## Steps to Reproduce
- build CamiTK with -DCEP_TUTORIAL=TRUE
- cd build
- bin/camitk-fancy
## Actual VS Expected Result
Crash versus fancy main window opening
## Interpretation & Possible fixes
`comp` attribute is not set to nullptr
## CamiTK Version
CamiTK 5.2.0.develop.3480339c
Compiled using git Hash: 3480339c7626584d1ad62f045dbc5cf5b472345f, Date: Fri Jul 28 14:49:32 2023 +0200.Emmanuel PromayonEmmanuel Promayonhttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/154Opening multiple DICOM series from one directory can result in a segfault2023-07-28T14:58:49+02:00Manik BhattacharjeeOpening multiple DICOM series from one directory can result in a segfault## About you
CamiTK developer
## Overview
When opening a DICOM directory, selecting multiple series to open sometimes crashes the software (segfault)
## Steps to Reproduce
Unfortunately I cannot share (yet) the data used to test. In ...## About you
CamiTK developer
## Overview
When opening a DICOM directory, selecting multiple series to open sometimes crashes the software (segfault)
## Steps to Reproduce
Unfortunately I cannot share (yet) the data used to test. In this DICOM directories, multiple series have the exact same name.
After launching camitk-imp, opening the directory and selecting two series (for example Axial and Coronal T2 acquisitions) will result in a crash.
## Actual VS Expected Result
Multiple Components should be loaded without crashing.
## Relevant logs and/or screenshots
From the debugger:
```gdb
#4 0x00007fffe41f0f71 in DicomSeries::getStudyName() const () from /home/bhattacm/Datas/prog/CamiTK2/build/lib/camitk-5.1/components/libdicom.so.5.1.dev
#5 0x00007fffe41e7ca9 in DicomComponentExtension::open(QString const&) () from /home/bhattacm/Datas/prog/CamiTK2/build/lib/camitk-5.1/components/libdicom.so.5.1.dev
#6 0x00007ffff7d2c7fa in camitk::Application::openDirectory (dirName=..., pluginName=...)
```
## Interpretation & Possible fixes
There may be three problems with the following code in DicomComponentExtension.cpp
```cpp
// Open each selected Dicom as a component
if (!seriesDialogEntries.isEmpty()) {
foreach (DicomDialogEntry* entry, seriesDialogEntries) {
// Find the corresponding Dicom Series in the List
foreach (DicomSeries* series, seriesParsed) {
if ((series->getStudyName() == entry->getStudyName()) &&
(series->getSeriesName() == entry->getSeriesName())) {
lastOpenedComponent = new DicomComponent(series);
break;
}
else {
delete series;
}
}
}
}
```
- The selected study is identified by name, and not ID. If two series have the same name, the first one will be loaded (may not be the correct one)
- "delete series;" statement will delete series that do not match the chosen serie's name **until the chosen series is found**. The series following this one will not be deleted (memory leak)
- if multiple series are selected, the outer loop will execute the inner loop a second time. At that point, **some series are already deleted but the inner loop will call getStudyName and getSeriesName on them** if they happen to be before the selected series in the seriesParsed list. This causes the segfault.
Proposed solutions:
- delete all series **after** the loops, not some of them (except if the series object is still stored somewhere in the DicomComponent)
- Try to use the series ID to find out which image was selected to avoid relying on the name which might not be unique
## CamiTK Version
CamiTK 5.1.dev.develop.c3d59664
---
**please do not remove anything below this line**Manik BhattacharjeeManik Bhattacharjeehttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/153DicomComponent ignores DICOM orientation2023-07-26T16:19:28+02:00Manik BhattacharjeeDicomComponent ignores DICOM orientation## About you
CamiTK developer
## Overview
When using DicomComponent to load a volume, the image transform from DICOM header is ignored.
## Steps to Reproduce
Load a Dicom volume (e.g. MRI) that was not acquired directly in the orient...## About you
CamiTK developer
## Overview
When using DicomComponent to load a volume, the image transform from DICOM header is ignored.
## Steps to Reproduce
Load a Dicom volume (e.g. MRI) that was not acquired directly in the orientation of the scanner.
Observe that the Frame transform to world coordinates is identity
## Actual VS Expected Result
The frame transform between the loaded DicomComponent and world coordinates should be the transform stored in the DICOM (Image Position and Orientation of Patient).
## Interpretation & Possible fixes
CardioModel CEP Dicom Component (from @lecesnee and @fouardc) implements reading the transform and setting it in the frame of the component. Importing the code into the current DicomComponent should solve this.
## CamiTK Version
CamiTK 5.1.dev.develop.c3d59664
---
**please do not remove anything below this line**Manik BhattacharjeeManik Bhattacharjeehttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/144Documentation issue2023-06-29T20:28:20+02:00Manik BhattacharjeeDocumentation issue**Note :** This is generic issue, please reopen it every time you need to correct any typo in or improve the documentation or comments.
There could be multiple branches opened for fixing this (recurrent) issue along the way.
**:warning...**Note :** This is generic issue, please reopen it every time you need to correct any typo in or improve the documentation or comments.
There could be multiple branches opened for fixing this (recurrent) issue along the way.
**:warning: When you reopen this issue please add a comment to specify current objective.**Manik BhattacharjeeManik Bhattacharjeehttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/136Mesh wireframe visualisation problem2023-04-29T13:30:27+02:00Emmanuel PromayonMesh wireframe visualisation problem## Overview
(this bug was initially reported by @bhattacm, thanks!)
There is a display problem when displaying mesh and surface rendering at the same time that disappears when surface rendering is switched off:
## Steps to Reproduce
...## Overview
(this bug was initially reported by @bhattacm, thanks!)
There is a display problem when displaying mesh and surface rendering at the same time that disappears when surface rendering is switched off:
## Steps to Reproduce
On Ubuntu 22.04 using `develop` branch, open `bassin.msh` testdata mesh and switch surface and wireframe rendering.
## Actual VS Expected Result
The wireframe should not have dangling and extra lines
## Relevant logs and/or screenshots
Rendering with both wireframe and surface:
![bugLinesWithSurface](/uploads/6be28fe65f793a1ae942bb4dcdb39c60/bugLinesWithSurface.png)
Rendering with wireframe only:
![bugLinesNoSurface](/uploads/eb5da7446a711fbb62ea3afe6f3a0e27/bugLinesNoSurface.png)
## Interpretation & Possible fixes
Probably due to OpenGL management stack in VTK7 and Qt5.
## CamiTK Version
This bug affects at least CamiTK 5.1.dev.develop.cb2bca7f (and probably earlier versions) on Ubuntu 22.04 using VTK7.
---
**please do not remove anything below this line**Emmanuel PromayonEmmanuel Promayonhttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/135Cancel color picking displays warning2023-04-28T14:50:23+02:00Manik BhattacharjeeCancel color picking displays warning## About you
CamiTK developer
## Overview
When selecting a Mesh component and trying to set its color, if the user cancels the color picking, a CamiTK warning is displayed.
## Actual VS Expected Result
No message should be displayed i...## About you
CamiTK developer
## Overview
When selecting a Mesh component and trying to set its color, if the user cancels the color picking, a CamiTK warning is displayed.
## Actual VS Expected Result
No message should be displayed if the user cancels.
## Interpretation & Possible fixes
actions/mesh/basicmesh/ChangeColor.cpp contains a CAMITK_WARNING in the cancel case. Just removing this line should be enough.
## CamiTK Version
CamiTK 5.1.dev
---
**please do not remove anything below this line**Manik BhattacharjeeManik Bhattacharjeehttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/133imp and actionstatemachine requires linking with specific viewers2023-11-29T11:23:11+01:00Emmanuel Promayonimp and actionstatemachine requires linking with specific viewers## About you
camitk developer
## Overview
imp and actionstatemachine requires linking with specific viewers.
This means they are _linked_ to for instance medicalimageviewer lib.
This is not admissible as this means LD_LIBRARY_PATH ha...## About you
camitk developer
## Overview
imp and actionstatemachine requires linking with specific viewers.
This means they are _linked_ to for instance medicalimageviewer lib.
This is not admissible as this means LD_LIBRARY_PATH has to be modified to include lib/camitk-x.y/viewers which is not a standard or easy thing to set.
## Steps to Reproduce
`ldd -r bin/camitk-imp` shows the dependencies
## Actual VS Expected Result
sdk applications should not have to be linked to viewers.
**Note** This might be ok for CEP applications (very rare case, see `tutorials/applications/fancy` for an example where this might be required).
## Relevant logs and/or screenshots
Test using docker:
```bash
$ docker pull gricad-registry.univ-grenoble-alpes.fr/camitk/camitk/camitk-lts:5.1
$ docker run --privileged=true --rm -v /tmp/.X11-unix:/tmp/.X11-unix -v ./build:/home/camitk/build -w /home/camitk/build -e "LD_LIBRARY_PATH=/home/camitk/build/lib" -e "DISPLAY=:0" -ti gricad-registry.univ-grenoble-alpes.fr/camitk/camitk/camitk-lts:5.1 bin/camitk-config --version
bin/camitk-config build using CamiTK 5.1.dev.develop.db3bf90b
$ docker run --privileged=true --rm -v /tmp/.X11-unix:/tmp/.X11-unix -v ./build:/home/camitk/build -w /home/camitk/build -e "LD_LIBRARY_PATH=/home/camitk/build/lib" -e "DISPLAY=:0" -ti gricad-registry.univ-grenoble-alpes.fr/camitk/camitk/camitk-lts:5.1 bin/camitk-imp --version
bin/camitk-imp: error while loading shared libraries: libactionviewer.so.5: cannot open shared object file: No such file or directory
```
## Interpretation & Possible fixes
For sdk application only user `Viewer` API and do not use specific method.
That might means a rewrite of `MedicalImageViewer::setToolbarAutoVisibility` and `MedicalImageViewer::setToolBarVisibility`
Even if this might mean few duplicated lines, check if it possible to also remove dependencies to Medical Image Viewer in `tutorials/applications/fancy` as well.
## CamiTK Version
CamiTK 5.1.dev.develop.db3bf90b
---
**please do not remove anything below this line**Emmanuel PromayonEmmanuel Promayonhttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/128File CommandLineOptions.ixx.o missing2023-03-30T16:48:41+02:00Celine FouardFile CommandLineOptions.ixx.o missing## About you
Céline Fouard ex-CamiTK developper, now CamiTK intensive user
## Overview
I want to install CamiTK on my brand new machine (Ubuntu 22.04.2 LTS 64 bits), and I choose to install the develop version from git.
## Steps to R...## About you
Céline Fouard ex-CamiTK developper, now CamiTK intensive user
## Overview
I want to install CamiTK on my brand new machine (Ubuntu 22.04.2 LTS 64 bits), and I choose to install the develop version from git.
## Steps to Reproduce
I checkedout sources in a scr/ directory, and created a buid/ directory. Into the build, I exectued the following commands:
> cmake $CAMITK_SOURCE_DIR -DCEP_IMAGING=TRUE -DCEP_MODELING=TRUE -DCEP_TUTORIALS=TRUE -DCMAKE_INSTALL_PREFIX="/opt/camitk"
> cmake --build . --parallel 8 --target install
## Actual VS Expected Result
I obtained the following result:
## Relevant logs and/or screenshots
[Paste any relevant logs - please use code blocks (```) to format console output, logs, and code as it's very hard to read otherwise.]
```[ 45%] Linking CXX executable ../../../bin/camitk-actionstatemachine
/usr/bin/ld : ne peut pas trouver CMakeFiles/application-actionstatemachine.dir/CommandLineOptions.ixx.o : Aucun fichier ou dossier de ce type
collect2: error: ld returned 1 exit status
gmake[2]: *** [sdk/applications/actionstatemachine/CMakeFiles/application-actionstatemachine.dir/build.make:503 : bin/camitk-actionstatemachine] Erreur 1
gmake[1]: *** [CMakeFiles/Makefile2:5561 : sdk/applications/actionstatemachine/CMakeFiles/application-actionstatemachine.dir/all] Erreur 2
gmake: *** [Makefile:166 : all] Erreur 2
```
## Interpretation & Possible fixes
I had the same problem compiling the camitk-5.0.2 package on with install target at /usr/local/. The actual firs error was the same error, but on the application testcomponent.
I do not understand where this come from, I did not touch my paths...
## CamiTK Version
[Copy/Paste the output of `camitk-config -b` CamiTK Version part ]
> can't run camitk-config....
---
**please do not remove anything below this line**https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/125Packaging configuration does not define Core::libDir2021-05-03T17:50:24+02:00Emmanuel PromayonPackaging configuration does not define Core::libDir## Actual VS Expected Result
After configuration, build/CamiTKPackageVersion.h shows
```cpp
...
const char * Core::libDir = "";
```
Should be
```cpp
...
const char * Core::libDir = "lib";
```
## Interpretation & Possible fixes
`SDKC...## Actual VS Expected Result
After configuration, build/CamiTKPackageVersion.h shows
```cpp
...
const char * Core::libDir = "";
```
Should be
```cpp
...
const char * Core::libDir = "lib";
```
## Interpretation & Possible fixes
`SDKConfig.cmake` configure line is called before `GNUinstall` cmake script.
→ move the `configure_file` accordingly
## CamiTK Version
CamiTK 5.0.dev.develop.d0704b93Emmanuel PromayonEmmanuel Promayonhttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/124Action Viewer popup selector not working2021-03-03T21:05:34+01:00Emmanuel PromayonAction Viewer popup selector not working## Overview
Action Viewer presents action selectors and tag research on the top left of its GUI. When the user select a family and then an action (or just an action, or just type a keyword in the tag area) in the corresponding combo box...## Overview
Action Viewer presents action selectors and tag research on the top left of its GUI. When the user select a family and then an action (or just an action, or just type a keyword in the tag area) in the corresponding combo box, it should directly trigger the action and show the widget in the bottom area of the Action Viewer widget.
This is broken.
Apart from reducing the user experience, this might result in misunderstanding or wrong action from the user.
## Steps to Reproduce
Select a family and an action
- Open a component (e.g. cthead1.lsm)
- click on the Family combo box and select a family (e.g. File)
- click on the Action combo box and select an action (e.g. Close)
or select an action
- Open a component (e.g. cthead1.lsm)
- click on the Action combo box and select an action (e.g. Image Look Up Table)
or type a tag
- Open a component (e.g. cthead1.lsm)
- enter a keyword in the Tag text input (e.g. Change)
## Actual VS Expected Result
The action should be triggered (e.g. close the file)
but noting happen.
Moreover when an action is selected, the family and action combo box do not display the correct values:
- Open a component (e.g. cthead1.lsm)
- Right Click on the component in the explorer
- Click on View → Image Look Up Table
- Click on the Family combo box and select a family (e.g. File)
- The Action combo box is not updated correspondingly
## Interpretation & Possible fixes
`ActionViewer` is the culprit.
## CamiTK Version
CamiTK 5.0.dev.develop.65572eb5Emmanuel PromayonEmmanuel Promayonhttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/121Debian packaging failed2021-02-01T22:22:38+01:00Emmanuel PromayonDebian packaging failedJob [#197871](https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/197871) failed for 45108ed033f366a2c065e14aae61c1fd7c83255b:
The package was not generated, please check the artifacts and fix the problem:
- summary: https...Job [#197871](https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/197871) failed for 45108ed033f366a2c065e14aae61c1fd7c83255b:
The package was not generated, please check the artifacts and fix the problem:
- summary: https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/197871/artifacts/raw/debian-unstable-develop/log/summary.log
- check environment: https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/197871/artifacts/raw/debian-unstable-develop/log/check-environment.log
- build package: https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/197871/artifacts/raw/debian-unstable-develop/log/build-package.log
- prepare package environment: https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/197871/artifacts/raw/debian-unstable-develop/log/prepare-package-environment.logCamiTK 4.2 Sprint # 3Emmanuel PromayonEmmanuel Promayonhttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/119CMake error when trying to install a CEP dependent on another CEP2021-01-14T14:13:23+01:00Emmanuel PromayonCMake error when trying to install a CEP dependent on another CEP## About you
CamiTK developer/maintainer
## Overview
In CamiTK community edition, the cep-generator test allows us to check that everything works when compiling a CEP that depends on CamiTK SDK
There is no test that check the third-le...## About you
CamiTK developer/maintainer
## Overview
In CamiTK community edition, the cep-generator test allows us to check that everything works when compiling a CEP that depends on CamiTK SDK
There is no test that check the third-level dependency, i.e., when trying to compile and install a CEP that depends on another CEP that depends on CamiTK SDK.
With recent version of CMake, warnings about missing autogen target became errors.
Now it is not possible to install a CEP that depends on another already installed CEP without a CMake error (although it is possible to build it...).
## Steps to Reproduce
This is quite long to reproduce:
1. build and install the latest develop version of CamiTK CE
2. create a CEP called level2cep that has dependencies to CamiTK SDK, e.g. that have a component that depends on medicalimageviewer or vtkmesh. This CEP should create a new component, lets call it level2comp
3. build an install level2cep
4. create a CEP called level3cep that has dependencies to level2Cp, e.g. that have a component that depends on level2comp
5. build level3cep
At configure time you should see an error:
```cmake
CMake Error in components/level2comp/CMakeLists.txt:
The dependency target "component-level2comp" of target
"component-level2comp_autogen" does not exist.
```
BUT the build will finish and everything will work
6. try to install level3cep, you you will get the same error but the install will fail.
## Actual VS Expected Result
There should be no error and the the install should work.
## Interpretation & Possible fixes
CMake camitk_extension macro should take into account the fact that if a target is not found, it should be declared as imported.
Possible fix: add a test in camitk_extension to check if a target exist or not using `if (NOT TARGET ...)`
**Caveat:** using `if (NOT TARGET ...)` will not be able to distinguish between external targets and local targets that are not yet declared in the configuration process.
## CamiTK Version
CamiTK 4.2.dev.develop.ae2812e8
---
**please do not remove anything below this line**CamiTK 4.2 Sprint # 3Emmanuel PromayonEmmanuel Promayonhttps://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/117Update upstream-ci/master in order to fix package build2024-02-23T11:13:30+01:00Emmanuel PromayonUpdate upstream-ci/master in order to fix package build## About you
CamiTK dev & maintainer
## Overview
## Steps to Reproduce
See error for instance in Job [#187192](https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/187192) failed for f1e1a157f156667c4c74908c54343597739b4...## About you
CamiTK dev & maintainer
## Overview
## Steps to Reproduce
See error for instance in Job [#187192](https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/187192) failed for f1e1a157f156667c4c74908c54343597739b4412:
## Actual VS Expected Result
no package build vs debian unstable package are build
## Relevant logs and/or screenshots
See error for instance in Job [#187192](https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/187192) failed for f1e1a157f156667c4c74908c54343597739b4412:
## Interpretation & Possible fixes
- Check lintian message
- Check d/r
It seems the first time the package build failed was after !156 was merged, see #109
## CamiTK Version
Current development as of 23 dec 2020
## Latest info
As of 1 feb 2021
Job [#197871](https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/197871) failed for 45108ed033f366a2c065e14aae61c1fd7c83255b:
The package was not generated, please check the artifacts and fix the problem:
- summary: https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/197871/artifacts/raw/packaging-debian-unstable-develop/log/summary.log
- check environment: https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/197871/artifacts/raw/packaging-debian-unstable-develop/log/check-environment.log
- build package: https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/197871/artifacts/raw/packaging-debian-unstable-develop/log/build-package.log
- prepare package environment: https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/jobs/197871/artifacts/raw/packaging-debian-unstable-develop/log/prepare-package-environment.log
---
**please do not remove anything below this line**CamiTK 5Emmanuel PromayonEmmanuel Promayon