Osimis web viewer plugin on Linux

2,191 views
Skip to first unread message

Alberto Sueiro

unread,
May 10, 2018, 9:08:58 PM5/10/18
to Orthanc Users
Hi,

I have installed and deployed orthanc on a ubuntu 16 (non docker) and i would like to add the osimis viewer, just like the binaries of windows, but i cannot find the plugin, binaries+compilation instructions.

Can anyone help me?

Sébastien Jodogne

unread,
May 11, 2018, 2:11:49 AM5/11/18
to Orthanc Users
Hello,

Under Linux, you can use the Docker package by Osimis:

For instance:

# sudo docker run -p 4242:4242 -p 8042:8042 --rm -e WVB_ENABLED=true osimis/orthanc:18.5.0

Or you can compile the plugin from source by yourself:

Sébastien-

Alberto Sueiro

unread,
May 12, 2018, 2:07:47 PM5/12/18
to Orthanc Users
Thanks for the info, but i still need help with the plugin. I want to try the nondocker version first, so the compile the plugin is the way i want to go.

I've tried the backend manual build:

cd backend/
$ mkdir build
$ cd build/
$ cmake .. -DCMAKE_BUILD_TYPE=Debug -DALLOW_DOWNLOADS=ON -DSTANDALONE_BUILD=ON
  -DSTATIC_BUILD=ON

The cmake has an error XXXXX-dirty.zip not found after downloading or not a zip file.

Could you explain me how to compile the plugin? I'm kinda lost in this

Sébastien Jodogne

unread,
May 14, 2018, 3:26:37 AM5/14/18
to Orthanc Users
Hello,

In the Osimis Web viewer, you have to specify the "VIEWER_VERSION_FULL" argument instead of "STATIC_BUILD" while invoking CMake:

$ cd osimis-webviewer-plugin/
$ git checkout 1.1.0
$ cd backend/
$ mkdir build
$ cd build/
$ cmake .. -DCMAKE_BUILD_TYPE=Debug -DSTANDALONE_BUILD=ON -DVIEWER_VERSION_FULL=1.1.0
$ make

HTH,
Sébastien-

Alberto Sueiro

unread,
May 14, 2018, 4:33:59 AM5/14/18
to Orthanc Users

Thanks, thanks and thanks again. Looks like that was the solution.


Gustavo Fernandez Guirland

unread,
May 23, 2018, 9:05:26 AM5/23/18
to Orthanc Users
Sebastien, Alberto how are you?
I did similar installation on Centos 7 No Docker
I compile the basic Orthanc package.
Then I proceeded with the Oaimis Web Viewewr plugin as mentioned by Sebastien
But in the web login from a remote computer, what are the access credentials?
Or is a procedure missing?
Thanks and best regards

Alberto Sueiro

unread,
May 23, 2018, 9:18:53 AM5/23/18
to Orthanc Users
I don't understand, are you talking about the login when you try to access to the osimis viewer?

Gustavo Fernandez Guirland

unread,
May 23, 2018, 10:11:57 AM5/23/18
to Orthanc Users

I mean when you access in the browser: IP_OrthancServer: 8042 / app / explorer.html
The login of the Orthanc Secure Zone is displayed, and user and password are requested
I have tried modifying the Security-related options for the HTTP Server of the Configuration.json without success.
Perhaps it is because Mongoose Web Server is embedded with the Plugin?

best regards

Alberto Sueiro

unread,
May 23, 2018, 10:46:56 AM5/23/18
to Orthanc Users
As far as i know, orthanc has a "AuthenticationEnabled" field in Configuration.json (name might be different). If set to true, you will be asked a login in order to access the server. All the logins allowed are in the "RegisteredUsers" field in Configuration.json. Check it and tell us how it is.

Gustavo Fernandez Guirland

unread,
May 23, 2018, 11:04:37 AM5/23/18
to Orthanc Users
That's what I did and it did not work. I tried the same configurations that I tried when I installed other plugins like PostgreSQL, DICOMWeb, Orthanc Web Viewer
But in this case, that web authentication does not work

Alberto Sueiro

unread,
May 23, 2018, 11:11:54 AM5/23/18
to Orthanc Users
That surpass my knowledge about orthanc. Maybe it is something related to mangoose. Try disabling it. I can't help you, sorry.

Alain Mazy

unread,
May 24, 2018, 4:13:29 AM5/24/18
to Alberto Sueiro, Orthanc Users
Did you make sure that "RemoteAccessAllowed" is set to true in your config file ?

On Wed, May 23, 2018 at 5:11 PM, Alberto Sueiro <sueiro...@gmail.com> wrote:
That surpass my knowledge about orthanc. Maybe it is something related to mangoose. Try disabling it. I can't help you, sorry.



--

Alain Mazy / CTO 
a...@osimis.io / +32 494 31 67 27

Osimis

OSIMIS S.A. 
Rue bois Saint-Jean 15/1BE-4102 Seraing 
www.osimis.io

Twitter LinkedIn


Gustavo Fernandez Guirland

unread,
May 24, 2018, 9:31:45 AM5/24/18
to Orthanc Users
Hi Alain
Yes, I copy the data:
Version of Orthanc 1.3.2

verbose LOG
[root@host151-147 Orthanc-1.3.2-Build]# ./Orthanc Configuration.json --verbose
W0524 10:08:10.781327 main.cpp:1298] Orthanc version: 1.3.2
W0524 10:08:10.781589 main.cpp:1146] Performance warning: Non-release build, runtime debug assertions are turned on
W0524 10:08:10.784258 OrthancInitialization.cpp:120] Reading the configuration from: "Configuration.json"
I0524 10:08:10.784740 Toolbox.cpp:1363] Using locale: "en_US.UTF-8" for case-insensitive comparison of strings
I0524 10:08:10.784900 Enumerations.cpp:1819] Default encoding for DICOM was changed to: Latin1
I0524 10:08:10.785174 FromDcmtkBridge.cpp:206] Using DCTMK version: 362
I0524 10:08:10.785267 FromDcmtkBridge.cpp:214] Loading the embedded dictionaries
I0524 10:08:10.810231 FromDcmtkBridge.cpp:226] Loading the embedded dictionary of private tags
I0524 10:08:10.825241 FromDcmtkBridge.cpp:2091] Registering JPEG Lossless codecs in DCMTK
I0524 10:08:10.825287 FromDcmtkBridge.cpp:2096] Registering JPEG codecs in DCMTK
W0524 10:08:10.862129 main.cpp:671] Loading plugin(s) from: /root/osimis-webviewer-plugin/backend/build/libOsimisWebViewer.so
W0524 10:08:11.199691 PluginsManager.cpp:269] Registering plugin 'osimis-web-viewer' (version 1.1.0.1.1.0-1.1.0)
W0524 10:08:11.199777 PluginsManager.cpp:168] Performance warning in Web viewer: Non-release build, runtime debug assertions are turned on
W0524 10:08:11.199794 PluginsManager.cpp:168] Initializing the Web viewer
W0524 10:08:11.225691 PluginsManager.cpp:168] Using GDCM instead of the DICOM decoder that is built in Orthanc
I0524 10:08:11.225754 OrthancPlugins.cpp:1111] Plugin has registered a callback to decode DICOM images (1 decoder(s) now active)
I0524 10:08:11.225785 OrthancPlugins.cpp:1038] Plugin has registered an OnChange callback
I0524 10:08:11.225803 OrthancPlugins.cpp:1013] Plugin has registered a REST callback witout mutual exclusion on: /osimis-viewer/images/?(.*)
I0524 10:08:11.225967 OrthancPlugins.cpp:1013] Plugin has registered a REST callback witout mutual exclusion on: /osimis-viewer/series/?(.*)
I0524 10:08:11.226009 OrthancPlugins.cpp:1013] Plugin has registered a REST callback witout mutual exclusion on: /osimis-viewer/config.js?(.*)
I0524 10:08:11.226046 OrthancPlugins.cpp:1013] Plugin has registered a REST callback witout mutual exclusion on: /osimis-viewer/studies/?(.*)
I0524 10:08:11.226086 OrthancPlugins.cpp:1013] Plugin has registered a REST callback witout mutual exclusion on: /osimis-viewer/languages/?(.*)
I0524 10:08:11.226143 OrthancPlugins.cpp:1013] Plugin has registered a REST callback witout mutual exclusion on: /osimis-viewer/app/(.*)
W0524 10:08:11.226246 OrthancInitialization.cpp:1004] SQLite index directory: "OrthancStorage"
W0524 10:08:11.239750 OrthancInitialization.cpp:1074] Storage directory: "OrthancStorage"
I0524 10:08:11.245896 DatabaseWrapper.cpp:307] Version of the Orthanc database: 6
W0524 10:08:11.245945 HttpClient.cpp:686] No certificates are provided to validate peers, set "HttpsCACertificates" if you need to do HTTPS requests
I0524 10:08:11.245974 HttpClient.cpp:157] Setting the default timeout for HTTP client connections: 0 seconds
I0524 10:08:11.246039 HttpClient.cpp:141] Setting the default proxy for HTTP client connections:
I0524 10:08:11.246059 DicomUserConnection.cpp:1216] Default timeout for DICOM connections if Orthanc acts as SCU (client): 10 seconds (0 = no timeout)
I0524 10:08:11.251325 ServerIndex.cpp:365] Starting the database flushing thread (sleep = 10)
I0524 10:08:11.251330 ServerIndex.cpp:1888] Starting the monitor for stable resources (stable age = 60)
W0524 10:08:11.251593 ServerScheduler.cpp:135] The server scheduler has started
W0524 10:08:11.252193 LuaContext.cpp:103] Lua says: Lua toolbox installed
W0524 10:08:11.252297 ServerContext.cpp:182] Disk compression is disabled
I0524 10:08:11.252314 ServerContext.cpp:530] Storing MD5 for attachments: yes
W0524 10:08:11.252331 ServerIndex.cpp:1403] No limit on the number of stored patients
W0524 10:08:11.252388 ServerIndex.cpp:1420] No limit on the size of the storage area
I0524 10:08:11.253184 DicomServer.cpp:125] Setting timeout for DICOM connections if Orthanc acts as SCP (server): 30 seconds (0 = no timeout)
W0524 10:08:11.254707 main.cpp:863] DICOM server listening with AET ORTHANC on port: 4242
I0524 10:08:11.254735 DicomServer.cpp:62] DICOM server started
I0524 10:08:11.254842 MongooseServer.cpp:1049] HTTP keep alive is disabled
W0524 10:08:11.254870 MongooseServer.cpp:1075] HTTP compression is enabled
I0524 10:08:11.254889 MongooseServer.cpp:948] Starting embedded Web server using Mongoose
W0524 10:08:11.271152 main.cpp:796] HTTP server listening on port: 8042
W0524 10:08:11.271218 main.cpp:683] Orthanc has started

Partial copy Configuratin.json:
...........
"Plugins" : [
     // Uncomment one of the following lines according to your platform.
    // Update the path to the DLL on your system.  The path is relative to the working folder
    // Orthanc will start from.  If you are unsure what the working folder is,
    // use and absolute path

    // "C:\\Program Files (x86)\\Orthanc\\Orthanc Server 1.1.0\\OsimisWebViewer.dll" // for Windows
    "/root/osimis-webviewer-plugin/backend/build/libOsimisWebViewer.so"
    // "libOsimisWebViewer.dylib" // for OSX
  ],

 /**
   * Osimis WebViewer Configuration
   **/
  "WebViewer" : {
    // Show the `download study` button in the frontend.
    // You may want to disable this feature if you disable access to
    // the underlying REST route for authentication reasons.
    // Default: true
    "StudyDownloadEnabled": true,

    // Display MPEG-4 DICOM video (non-bd only) within the frontend. You
    // may disable this feature if you disable access to the underlying
    // REST route for authentication reasons.
    // Default: true
    "VideoDisplayEnabled": true,

    // Store image annotations made by users as Orthanc Attachment 9999 and
    // retrieve them autommatically each time the viewer is opened.
    // Default: false
    "AnnotationStorageEnabled": false,

    // This option displays a button on each viewport. When the user clicks
    // on the button, a new DICOM series is created with the image of the
    // viewport, including the annotations. You must ensure your server allows
    // large requests. You must also includes a new dicom tag in the
    // dictionary (see the Dictionary json attribute below).
    // Default: false
    "KeyImageCaptureEnabled": false,

    // Store low/high quality images in a short term cache
    "ShortTermCacheEnabled": true,

    // Path where the short term cache is stored
    "ShortTermCachePath": "/OrthancStorage/WebViewerCache",

    // Maximum size of the short term cache (in MB)
    "ShortTermCacheSize": 1000,

    // Start pre-computing the low/high quality images as soon as they are
    // received in Orthanc.
    "ShortTermCachePrefetchOnInstanceStored": false,

    // Number of threads used by the short term cache to pre-compute the
    // low/high quality images.
    "ShortTermCacheThreads": 4,

    // Display cache debug logs (mainly for developers)
    "ShortTermCacheDebugLogsEnabled": false,

    // Preload high quality images on the frontend before the user actually
    // needs them
    "HighQualityImagePreloadingEnabled": true
  }
}

.....
/**
   * Security-related options for the HTTP server
   **/

  // Whether remote hosts can connect to the HTTP server
  "RemoteAccessAllowed" : true,

  // Whether or not SSL is enabled
  "SslEnabled" : false,

  // Path to the SSL certificate in the PEM format (meaningful only if
  // SSL is enabled)
  "SslCertificate" : "certificate.pem",

  // Whether or not the password protection is enabled
  "AuthenticationEnabled" : true,

  // The list of the registered users. Because Orthanc uses HTTP
  // Basic Authentication, the passwords are stored as plain text.
  "RegisteredUsers" : {
    // "alice" : "alicePassword"
     "orthanc" : "orthanc",
     "root" : "my_passwd"
  },


Remote login capture
Credentials not work
Ok button not work

Best regards
Auto Generated Inline Image 1

Alain Mazy

unread,
May 24, 2018, 10:28:53 AM5/24/18
to Gustavo Fernandez Guirland, Orthanc Users
Everything looks good in your configuration.  Note that the authentication is in now way related to the viewer.
Please try with/without  AuthenticationEnabled=true, check the error message in the browser console/dev tools ...

Gustavo Fernandez Guirland

unread,
May 24, 2018, 10:52:24 AM5/24/18
to Orthanc Users
Ok, I set AuthenticationEnabled=false
Start service
and this is capture
Auto Generated Inline Image 1

Alain Mazy

unread,
May 24, 2018, 12:09:14 PM5/24/18
to Gustavo Fernandez Guirland, Orthanc Users
I think your configuration file is not taken into account and therefore, it starts with the default value for "RemoteAccessAllowed" which is false -> you get a 401 when accessing it from another computer.

Gustavo Fernandez Guirland

unread,
May 24, 2018, 12:38:05 PM5/24/18
to Orthanc Users
Yes, I access from a remote computer that was from where I captured the login screen that I sent. I am in the same network 10.202.151.X.
When I try to leave the "RemoteAccessAllowed" in true the result is the same.
I thought as a hypothesis that the Mongoose only enabled local access (127.0.0.1) when observing in github:
  orthanc / Core / HttpServer / MongooseServer.cpp
...
...
#define ORTHANC_REALM "Orthanc Secure Area"

static const long LOCALHOST = (127ll << 24) + 1ll;

...
...

Alain Mazy

unread,
May 25, 2018, 3:21:04 AM5/25/18
to Gustavo Fernandez Guirland, Orthanc Users
Thousands of Orthanc are accessed everyday from remote computers so I guess there's no bug in the code.
Have you checked that your configuration file was really taken into account ?

Sébastien Jodogne

unread,
May 25, 2018, 12:55:55 PM5/25/18
to Orthanc Users
I fully agree with Alain: You are not using the right configuration file.

Gustavo Fernandez Guirland

unread,
May 25, 2018, 1:12:35 PM5/25/18
to Orthanc Users
Yes thanks
If I think it's possible,
I have compiled the sources of Orthanc 1.3.2 then built the Configration.json
Then download the Osimis Web Viewer sources and follow the Compilation procedure mentioned in this thread by Sebastien in response to Alberto.
I do not know if I should configure something in the frontend
The Orthanc Secure Area ... checks users against the database for authentication?
I checked the permissions of the files and they are all ok.
When he did it with PostgreSQL he created the user.
Now this installation was without PostgreSQL or its plugin.
Is it possible that the access user is now managed by the SQLLite? Are any by default?

If I use Docker ... Is the Configuration.json created the same as in a classic installation?
Attaching to the Container via bin / bash I manage to customize the Container with Modalities, AETs, and other modifiable parameters like the old style?

Best regards

In

Sébastien Jodogne

unread,
May 26, 2018, 4:43:37 AM5/26/18
to Orthanc Users


On Friday, May 25, 2018 at 7:12:35 PM UTC+2, Gustavo Fernandez Guirland wrote:
Yes thanks
If I think it's possible,
I have compiled the sources of Orthanc 1.3.2 then built the Configration.json
Then download the Osimis Web Viewer sources and follow the Compilation procedure mentioned in this thread by Sebastien in response to Alberto.
I do not know if I should configure something in the frontend

=> The Orthanc Explorer front-end does not allow to modify the configuration of Orthanc. This is only done in the configuration file:

 
The Orthanc Secure Area ... checks users against the database for authentication?

=> No, it only checks the "RemoteAccessAllowed", "RegisteredUsers" and "AuthenticationEnabled" options taken from the configuration file:


Is it possible that the access user is now managed by the SQLLite? Are any by default?

=> No, see above. By default, remote access is *disallowed* (i.e. only works on the localhost), and the authentication is disabled.
 

If I use Docker ... Is the Configuration.json created the same as in a classic installation?

=> If you need the Osimis Web viewer, detailed instructions to use Docker are available:

In all our Docker images (both Orthanc and Osimis), "RemoteAccessAllowed" is already set to "true", as written in the documentation:

So, you just have to start Docker with the command-line I wrote earlier:

# sudo docker run -p 4242:4242 -p 8042:8042 --rm -e WVB_ENABLED=true osimis/orthanc:18.5.2

Sébastien-

Gustavo Fernandez Guirland

unread,
May 28, 2018, 9:13:52 AM5/28/18
to Orthanc Users
Sebastien, Alain
Thanks for the support.
I solved it.
Luege of tests and analysis I discovered the cause.
When I paste the code from bitbucket to the osimis-webviewer-plugin, this was inserted:

    // Preload high quality images on the frontend before the user actually
     // needs them
     "HighQualityImagePreloadingEnabled": true
   }
} <<<<<<< I think that caused the json parsing to stop there and not reach the authentication part that was lower in the Configuration.json code

I generated a new json and reviewed the code. Then I started the service and ... WORK

Again a pleasure to share with you
Best regards
Message has been deleted

Harkant Singh

unread,
Sep 6, 2018, 9:19:06 AM9/6/18
to Orthanc Users

I had compiled the 0.7.0 version of osimis-webviewer-plugin for raspberry pi and has been using the same for quite sometime. Then I decided to upgrade my installation of Orthanc and came to know the later build of the plugin available. I tried compiling it on RaspberryPi but found that the memory on RPi is insufficient for the job. So I set up Ubuntu on VirtualBox for cross compiling for Rpi as in " https://stackoverflow.com/questions/19162072/how-to-install-the-raspberry-pi-cross-compiler-on-my-linux-host-machine#19269715 ".  I confirmed that it is working. My compilation stopped at 99% with the following -

[ 95%] Built target UnitTests
[ 95%] Checking if re-generation is required
[ 96%] Built target EmbeddedResourcesGenerator
[ 97%] Building CXX object CMakeFiles/OsimisWebViewer.dir/AUTOGENERATED/EmbeddedResources.cpp.o
[ 98%] Building CXX object CMakeFiles/OsimisWebViewer.dir/WebViewerPlugin/WebViewer.cpp.o
In file included from /media/harkant/raspberrypi/osimis-osimis-webviewer/backend/WebViewerPlugin/WebViewer.h:6:0,
                 from /media/harkant/raspberrypi/osimis-osimis-webviewer/backend/WebViewerPlugin/WebViewer.cpp:1:
/media/harkant/raspberrypi/osimis-osimis-webviewer/backend/WebViewerLibrary/AbstractWebViewer.h:46:63: warning: ‘auto_ptr’ is deprecated (declared at /media/harkant/raspberrypi/raspberrypi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/arm-linux-gnueabihf/include/c++/4.8.3/backward/auto_ptr.h:87) [-Wdeprecated-declarations]
   virtual std::auto_ptr<WebViewerConfiguration> _createConfig();
                                                               ^
In file included from /media/harkant/raspberrypi/osimis-osimis-webviewer/backend/WebViewerPlugin/WebViewer.cpp:9:0:
/media/harkant/raspberrypi/osimis-osimis-webviewer/backend/WebViewerPlugin/Version.h:45:57: note: #pragma message: version = 1.1.0.1.1.0-1.1.0
 #pragma message("version = " PRODUCT_VERSION_FULL_STRING)
                                                         ^
/media/harkant/raspberrypi/osimis-osimis-webviewer/backend/WebViewerPlugin/Version.h:46:142: note: #pragma message: build date = 2018/09/06
 #pragma message("build date = " PRODUCT_VERSION_BUILD_YEAR_STRING "/" PRODUCT_VERSION_BUILD_MONTH_STRING "/" PRODUCT_VERSION_BUILD_DAY_STRING)
                                                                                                                                              ^
[ 99%] Building CXX object CMakeFiles/OsimisWebViewer.dir/WebViewerPlugin/Plugin.cpp.o
In file included from /media/harkant/raspberrypi/osimis-osimis-webviewer/backend/WebViewerPlugin/WebViewer.h:6:0,
                 from /media/harkant/raspberrypi/osimis-osimis-webviewer/backend/WebViewerPlugin/Plugin.cpp:22:
/media/harkant/raspberrypi/osimis-osimis-webviewer/backend/WebViewerLibrary/AbstractWebViewer.h:46:63: warning: ‘auto_ptr’ is deprecated (declared at /media/harkant/raspberrypi/raspberrypi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/arm-linux-gnueabihf/include/c++/4.8.3/backward/auto_ptr.h:87) [-Wdeprecated-declarations]
   virtual std::auto_ptr<WebViewerConfiguration> _createConfig();
                                                               ^
[ 99%] Linking CXX shared library libOsimisWebViewer.so
/media/harkant/raspberrypi/raspberrypi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld: /media/harkant/raspberrypi/raspberrypi/rootfs/usr/lib/arm-linux-gnueabihf/libuuid.a(libuuid_la-gen_uuid.o)(.text+0x648): R_ARM_TLS_LE32 relocation not permitted in shared object
/media/harkant/raspberrypi/raspberrypi/rootfs/usr/lib/arm-linux-gnueabihf/libuuid.a(libuuid_la-gen_uuid.o): In function `__uuid_generate_time':
(.text+0x648): dangerous relocation: unsupported relocation
/media/harkant/raspberrypi/raspberrypi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld: /media/harkant/raspberrypi/raspberrypi/rootfs/usr/lib/arm-linux-gnueabihf/libuuid.a(libuuid_la-gen_uuid.o)(.text+0x64c): R_ARM_TLS_LE32 relocation not permitted in shared object
/media/harkant/raspberrypi/raspberrypi/rootfs/usr/lib/arm-linux-gnueabihf/libuuid.a(libuuid_la-gen_uuid.o): In function `__uuid_generate_time':
(.text+0x64c): dangerous relocation: unsupported relocation
/media/harkant/raspberrypi/raspberrypi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld: /media/harkant/raspberrypi/raspberrypi/rootfs/usr/lib/arm-linux-gnueabihf/libuuid.a(libuuid_la-gen_uuid.o)(.text+0x9bc): R_ARM_TLS_LE32 relocation not permitted in shared object
/media/harkant/raspberrypi/raspberrypi/rootfs/usr/lib/arm-linux-gnueabihf/libuuid.a(libuuid_la-gen_uuid.o): In function `uuid_generate_time_generic':
(.text+0x9bc): dangerous relocation: unsupported relocation
/media/harkant/raspberrypi/raspberrypi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld: /media/harkant/raspberrypi/raspberrypi/rootfs/usr/lib/arm-linux-gnueabihf/libuuid.a(libuuid_la-randutils.o)(.text+0x14c): R_ARM_TLS_LE32 relocation not permitted in shared object
/media/harkant/raspberrypi/raspberrypi/rootfs/usr/lib/arm-linux-gnueabihf/libuuid.a(libuuid_la-randutils.o): In function `random_get_fd':
(.text+0x14c): dangerous relocation: unsupported relocation
/media/harkant/raspberrypi/raspberrypi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld: /media/harkant/raspberrypi/raspberrypi/rootfs/usr/lib/arm-linux-gnueabihf/libuuid.a(libuuid_la-randutils.o)(.text+0x2b8): R_ARM_TLS_LE32 relocation not permitted in shared object
/media/harkant/raspberrypi/raspberrypi/rootfs/usr/lib/arm-linux-gnueabihf/libuuid.a(libuuid_la-randutils.o): In function `random_get_bytes':
(.text+0x2b8): dangerous relocation: unsupported relocation
/media/harkant/raspberrypi/raspberrypi/rootfs/usr/lib/arm-linux-gnueabihf/libdl.a(dladdr.o): In function `dladdr':
(.text+0x0): undefined reference to `__dladdr'
collect2: error: ld returned 1 exit status
CMakeFiles/OsimisWebViewer.dir/build.make:157: recipe for target 'libOsimisWebViewer.so.1.1.0' failed
make[2]: *** [libOsimisWebViewer.so.1.1.0] Error 1
CMakeFiles/Makefile2:218: recipe for target 'CMakeFiles/OsimisWebViewer.dir/all' failed
make[1]: *** [CMakeFiles/OsimisWebViewer.dir/all] Error 2
Makefile:129: recipe for target 'all' failed
make: *** [all] Error 2

I know this is a RPi problem, Hope you can help me out with this.

Harkant Singh

unread,
Sep 12, 2018, 11:25:24 AM9/12/18
to Orthanc Users
Managed to compile Osimis Webviewee Plugin for Raspbian using the Raspberry Cross compiler setup in a Ubuntu virtual machine on a Mac and running the cross compiler as in 'https://www.get-edi.io/Cross-Compiling-for-Raspbian/'.
Had to import the uuid-dev libraries from my Raspbian to the lxd container running the cross compiler.

sc.call...@gmail.com

unread,
Jan 21, 2019, 7:57:32 AM1/21/19
to Orthanc Users
Hello,
please can you help me with an actual command for compile, because I try this and I get errors... I think 1.2.0 is the actual version for Osimis web viewer (I changed also version 1.1.0 to 1.2.0)

CMake Error at Resources/CMake/DownloadOrthancFramework.cmake:54 (message):
  The variable ORTHANC_FRAMEWORK_VERSION must be set
Call Stack (most recent call first):
  WebViewerLibrary/WebViewerLibrary.cmake:45 (include)
  CMakeLists.txt:39 (include)

I think 1.2.0 is the actual version for Osimis web viewer (I changed also version 1.1.0 to 1.2.0), but I try in both cases. 


Sébastien Jodogne

unread,
Jan 21, 2019, 4:41:45 PM1/21/19
to Orthanc Users
Here are the commands I have just used to build Osimis Web viewer 1.2.0 on my Ubuntu 16.04 computer:

$ cd osimis-webviewer-plugin/
$ git fetch --all && git pull
$ git checkout 1.2.0
$ mkdir backend/build
$ cd backend/build/
$ cmake .. -DCMAKE_BUILD_TYPE=Debug -DSTANDALONE_BUILD=ON -DVIEWER_VERSION_FULL=1.2.0 -DORTHANC_FRAMEWORK_VERSION=1.5.2 -DJS_CLIENT_PATH=`pwd`/frontend-build
$ make

Sébastien-

Bryan Dearlove

unread,
Jan 21, 2019, 7:34:31 PM1/21/19
to Orthanc Users
Also, if you are comiling For Centos and not familiar with compiling or don’t want/need to, you can try the already compiled LSB version, works well:
http://lsb.orthanc-server.com

sc.call...@gmail.com

unread,
Jan 22, 2019, 3:38:31 AM1/22/19
to Orthanc Users
thanks a lot!
it's working now.

sc.call...@gmail.com

unread,
Jan 22, 2019, 3:57:14 AM1/22/19
to Orthanc Users
Hello
In fact I want to install orthanc server+ plugins on a Synology NAS (DS1618+ with INTEL Atom C3538 inside) and I used compiled version from http://lsb.orthanc-server.com, but I didn't find a compiled version for Osimis Web Viewer.
I installed a package "Orthanc" from Synology official repository (but the only version is 1.3.0005)  After that I stop running this package and I replace the original files with the new downloaded  files from  http://lsb.orthanc-server.com. It seems to work fine. Probably that I have a intel x64 processor inside.
I'm not able to make a new package for synology...

Alain Mazy

unread,
Jan 22, 2019, 4:37:52 AM1/22/19
to sc.call...@gmail.com, Orthanc Users

Thales Santos

unread,
May 19, 2020, 12:12:20 PM5/19/20
to Orthanc Users
These responses are so frustrating to read as a radiologist without much tech background.
Why not make a precompiled plugin available to download? Instead of having to google the right way to compile every time. It is not a logical solution if you have to copy the right way to do it.
So frustrating =(

Alain Mazy

unread,
May 19, 2020, 12:16:44 PM5/19/20
to Thales Santos, Orthanc Users
So you complain that a precompiled binary is not available by replying to my message that gives the link to the precompiled binary ... so frustrating for us ...

--
You received this message because you are subscribed to the Google Groups "Orthanc Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to orthanc-user...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/orthanc-users/cd3aca68-c945-4c99-b8f2-d4e73075909b%40googlegroups.com.


--

Alain Mazy / Orthanc-Studio Manager & Software Developer

Thales Santos

unread,
May 20, 2020, 8:54:45 AM5/20/20
to Orthanc Users
I did download it before, then put it into the "Plugins" folder, and then I put the plugin path in the Configuration.json file. It didn't work.
There was only the Orthanc Web Viewer button available to click.
Then I disabled the "libOrthancWebViewer.co plugin, because maybe both web viewers didn't work together... Then the yellow web viewer button disappeared.
What step did I miss? I noticed all plugins (that were already in the Plugin folder) had symbolic links in that same... Don't know why. Maybe I should create a symbolic link for that new plugin? Why? How? =(
I am running the 1.4.2 Orthanc version, which I cannot update because it is installed from a qpkg file on my NAS (1.4.2 is the last version).

Then I though that maybe the issue was the 1.4.2. version. I then proceeded to install the last version of Orthanc in a windows PC in my local network, which is supposed to be the easiest way because the installation file already has all the plugins. If that worked, I might be able to run Orthanc in a Windows VM on my NAS, although it is not the most efficient way to/ run a PACS server. But for some reason, even though Remote Access is "true" and I can make the PCs ping each other in the LAN network, I can't access Orthanc from other computers using the 192.168.0.39:8042 address. Just from the same PC using localhost:8042. No response at all from other computers. =(



Em terça-feira, 19 de maio de 2020 13:16:44 UTC-3, Alain Mazy escreveu:
So you complain that a precompiled binary is not available by replying to my message that gives the link to the precompiled binary ... so frustrating for us ...

On Tue, May 19, 2020 at 6:12 PM Thales Santos <thales....@gmail.com> wrote:
These responses are so frustrating to read as a radiologist without much tech background.
Why not make a precompiled plugin available to download? Instead of having to google the right way to compile every time. It is not a logical solution if you have to copy the right way to do it.
So frustrating =(

--
You received this message because you are subscribed to the Google Groups "Orthanc Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to orthan...@googlegroups.com.

Luiz Eduardo Guida Valmont

unread,
May 20, 2020, 9:34:09 AM5/20/20
to Thales Santos, Orthanc Users
Good morning, Thiago!

I'd like to try and help you as well. Would you mind:
  • Sending your configuration file?
  • Perform a "realpath" on the plugin file? To do that, go to your favorite terminal, type realpath followed by the name of the actual plugin file. For example, assuming your file is saved in Downloads folder at your $HOME directory, then:
$ realpath Downloads/plugin.so

Should output something like:

/home/youruser/Downloads/plugin.so

I'm interested in that output.
  • Also, I'm gonna need logs. To do that, start Orthanc like so:
$ Orthanc --logfile=$HOME/Orthanc.log

This will create an Orthanc.log file in your $HOME directory. Be careful not to overwrite any pre-existing files you might have a  need for. With that, I'll be able to help you out.

All in all, I would refrain from running similar plugins, like two webviewers, to avoid path clashing from both trying to register, say, the "/web/studies" path. As far as I know, the results are unpredictable. Actually I never tried it.

Looking forward to hearing from you.

Best,

To unsubscribe from this group and stop receiving emails from it, send an email to orthanc-user...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/orthanc-users/e52382df-411e-4aff-893c-1746e3d84a26%40googlegroups.com.

Harkant Singh

unread,
Apr 15, 2021, 10:44:02 AM4/15/21
to Orthanc Users
Trying to build the latest Osimis Web Viewer on Ubuntu 20.10. 
I believe 1.3.1 is the latest version - as it appears from the lsb binaries in https://osimis.atlassian.net/wiki/spaces/OKB/pages/79167642/Osimis+Web+Viewer+-+Installation+guide#OsimisWebViewer-Installationguide-QuickstartguideforLinux .

 But am getting error downloading Orthanc Source repository

cmake .. -DCMAKE_BUILD_TYPE=Release -DSTANDALONE_BUILD=ON -DVIEWER_VERSION_FULL=1.3.1 -DORTHANC_FRAMEWORK_VERSION=1.9.1 -DJS_CLIENT_PATH=`pwd`/frontend-build
-- The C compiler identification is GNU 10.2.0
-- The CXX compiler identification is GNU 10.2.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
Forking the Orthanc source repository using Mercurial
abort: HTTP Error 404: Not Found
CMake Error at Resources/CMake/DownloadOrthancFramework.cmake:189 (message):
  Cannot fork the Orthanc repository
Call Stack (most recent call first):
  WebViewerLibrary/WebViewerLibrary.cmake:45 (include)
  CMakeLists.txt:39 (include)


-- Configuring incomplete, errors occurred!
See also "/home/....../osimis-webviewer-plugin/backend/build/CMakeFiles/CMakeOutput.log".


Sébastien Jodogne

unread,
Apr 16, 2021, 2:02:15 AM4/16/21
to Orthanc Users
Please check my previous post:

Please also note that the Osimis Web viewer is now deprecated and unmaintained.

I'm now locking this old thread, as its content is outdated.
Reply all
Reply to author
Forward
This conversation is locked
You cannot reply and perform actions on locked conversations.
0 new messages