Menu

Using GridLAB-D connections module

2020-03-10
2023-11-18
  • Nathan Gray

    Nathan Gray - 2020-03-10

    Hello,

    I installed the develop branch of GridLAB-D from source on Ubuntu and linked it with previously installed HELICS. However, when trying to run the IEEE_123_feeder_0.glm from Example_1a of the HELICS example programs I get the following error:

    gldcore/module.c(422): module 'connection' load failed - libhelics-shared.so.2: cannot open shared object file: No such file or directory
    

    I added the location for the libhelics-shared libraries to the GLPATH variable and even tried copying the libraries to the GridLAB-D lib folder. Nothing works.

    Versions:
    ubuntu-18.04.1 amd64
    HELICS 4.2.1
    Gridlab-d 4.1.0-18320 Lugo develop 64-bit LINUX RELEASE

    Thanks,
    Nathan

     
    • Frank Tuffner

      Frank Tuffner - 2020-03-11

      Hello Nathan,

      That is very odd. This is on the same machine you compiled the "GridLAB-D with HELICS" instance on, or have you copied it? My HELICS library is just located in /usr/local/lib, which is where I had the ./configure pointed for the GridLAB-D compiling. It should just link to that same version, unless something has moved.

      It's a long-shot (and you may have already checked this), but if you still have the original source code compiled folder, check the config.log and see where it was pointing for the --with-helics command, then verify that that the libhelics-shared.so library is actually located there.

      The other option is you may need to set your LD_LIBRARY_PATH to point toward where the libhelics-shared library is located. I havne't heard of anyone having to do that with HELICS, but we did have similar issues with other GridLAB-D libraries under Linux at one point, and that helped fix it.

      Hopefully, one of these solutions helps or provides some insight.

      -Frank

       
      • Nathan Gray

        Nathan Gray - 2020-03-11

        Hi Frank,
        To answer your first question, I made a fresh install of Ubuntu in a virtual box again since the last thread. On the old machine I came to this same error after you helped me get past the problem linking. I then decided I should start from a fresh install and keep track of everything I did in hopes that it would just work.

        -Nathan

         
  • Nathan Gray

    Nathan Gray - 2020-03-11

    Hi Frank,
    Thanks for your response.
    I installed Helics and Gridlab-d in their own folders in a folder in my user directory.
    In the ./configure command for gridlab-d, I used --prefix=/home/nathan/local/gridlab-d/ --with-helics=/home/nathan/local/helics-2.4.1/

    Below is the part of config.log related to helics:

    configure:11675: checking for HELICS
    configure:11692: g++ -o conftest -g -O0 -w -std=c++14   -I/home/nathan/local/helics-2.4.1//include -g -O0 -w  -L/home/nathan/local/helics-2.4.1//lib conftest.cpp   -lhelics-shared -lzmq >&5
    configure:11692: $? = 0
    configure:11705: result: yes
    

    In the folder with gridlab-d libraries (~/local/gridlab-d/lib/gridlabd) there is a connection.la file and there is a section that says where the dependencies are and the path there is correct:

    # Libraries that this one depends upon.
    dependency_libs=' -L/home/nathan/local/helics-2.4.1//lib -lhelics-shared -lzmq -lpthread -ldl'
    

    Thanks,
    Nathan

     
  • Nathan Gray

    Nathan Gray - 2020-03-11

    Hi Frank,
    I am attaching a Word doc with my entire installation process.
    To anyone else reading this, note that it doesn't work. Specifically, GridLAB-D cannot use the connection module.

    Perhaps you can share what steps you did different (specifically the ./configure and cmake steps) and I should be able to repeat it.
    Thanks,
    Nathan

    EDIT: Forgot to try setting my LD_LIBRARY_PATH before posting this. Just tried it and looks like it might have worked since I'm getting different errors now.

     

    Last edit: Nathan Gray 2020-03-11
  • Nathan Gray

    Nathan Gray - 2020-03-11

    I believe my installation is working now. Thanks for your help.
    I am attaching the installation procedure I used with the added export LD_LIBRARY_PATH=home/nathan/local/helics-2.4.1/lib:$LD_LIBRARY_PATH.

    Thanks,
    Nathan

     

    Last edit: Nathan Gray 2020-03-11
    • Frank Tuffner

      Frank Tuffner - 2020-03-11

      Hello Nathan,

      Glad to see you got a working solution. I'm very confused as to what was happening, but maybe it was just that LD_LIBRARY_PATH variable?

      Both sets of your directions look pretty reasonable (at a first glance), and the only "main difference" I see is that environmental variable. It's either that, or some other subtlety in the installation process occurred (maybe a sudo make install instead of a make install or something?).

      -Frank

       
  • Adel Heidari

    Adel Heidari - 2023-11-11

    Hi all,

    I'm having the same issue in running example 1a in HELICS. I'm getting this error:

    ERROR [INIT] : D:/a/gridlab-d/gridlab-d/gridlab-build/gldcore/module.cpp(547): module 'connection' load failed - "C:\Program Files\GridLAB-D 5.2.0\bin\connection.dll": The specified module could not be found.
    IEEE_123_feeder_0.glm(23): module 'connection' load failed, No such file or directory
    IEEE_123_feeder_0.glm(23): load failed at or near 'module conne...'
    ERROR [INIT] : unable to load 'IEEE_123_feeder_0.glm': No such file or directory
    FATAL [INIT] : shutdown after command line rejected`
    

    I used the exe file to install GridLAB-D and HELICS. I also installed the HELICS python package. And, gridlab-d and Helics dll and lib files path are included in System and user PATH. Could you please help me in this regard how to fix the issue?

    Here are the versions of the software I'm using:
    python v3.9.16
    helics v 3.4.0
    GridLab-D v 5.2
    Pypower v5.1.16

     
    • Frank Tuffner

      Frank Tuffner - 2023-11-13

      Hello Adel,

      Can you point toward the exact HELICS example you are trying to run (GitHub path or relative file structure path)? That will make sure we are looking at the right example and can test/verify if it still works.

      You mentioned you are using the executable install - for clarification, is that the version located here?

      -Frank

       
  • Adel Heidari

    Adel Heidari - 2023-11-13

    Thank you for your response.
    I'm trying to simulate Example 1a of HELICS. I attached the files here.
    Yes, I installed GridLAB-D using the exe file located in the link you mentioned. I'm running on windows 10 x64 system.

    Thanks,
    Adel

     

    Last edit: Adel Heidari 2023-11-13
  • Adel Heidari

    Adel Heidari - 2023-11-15

    I just wanted to mention that I could be able to run the case. we need to rename the helics.dll file to libhelics.dll in order for the gridlabd to run successfully.

    Thank you for your response. I really appreciate it.

    Adel

     
    • Frank Tuffner

      Frank Tuffner - 2023-11-18

      Hello Adel,

      Thanks for responding back with a fix. That is actually something that popped up in issue 1443, so it's good you posted the quick work-around.

      -Frank

       

Log in to post a comment.