﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
5943	Get rid of OPENMODELICAHOME (and OPENMODELICALIBRARY)	Adrian Pop	somebody	"Currently we use OPENMODELICAHOME to point to the OM installation in Windows. We should remove the need for this variable as:
- would simplify having multiple installations on the same computer #5809
- would make handling of installation directory homogeneous on all platforms

Issues:
- some clients are using this OPENMODELICAHOME variable to find omc (MDT, OMPython, etc)
- the build process is using the OPENMODELICAHOME variable

All references of OPENMODELICAHOME in OpenModelica/ (filter on files: {{{*.mo *.tpl *.cpp *.c *.h *.hpp, *akefile*, CMake*}}})

{{{
Search ""OPENMODELICAHOME"" (100 hits in 35 files)
  
  e:\dev\OpenModelica\OMCompiler\CMakeLists.txt (3 hits)
	Line 17: SET(OPENMODELICAHOME $ENV{OPENMODELICAHOME})
	Line 17: SET(OPENMODELICAHOME $ENV{OPENMODELICAHOME})
	Line 18: SET(OMC_DEBUG ${OPENMODELICAHOME}/bin/omc.exe)
  
  e:\dev\OpenModelica\OMCompiler\Compiler\BackEnd\OpenTURNS.mo (2 hits)
	Line 683:  returns $OPENMODELICAHOME/share/omc/scripts/OpenTurns/""
	Line 695:  returns $OPENMODELICAHOME/share/omc/scripts/OpenTurns/FILE_NAME
  
  e:\dev\OpenModelica\OMCompiler\Compiler\FrontEnd\ModelicaBuiltin.mo (6 hits)
	Line 1044:   String OPENMODELICAHOME, OPENMODELICALIBRARY, OMC_PATH, SYSTEM_PATH, OMDEV_PATH;
	Line 1482: function setInstallationDirectoryPath ""Sets the OPENMODELICAHOME environment variable. Use this method instead of setEnvironmentVar.""
	Line 1489: function getInstallationDirectoryPath ""This returns OPENMODELICAHOME if it is set; on some platforms the default path is returned if it is not set.""
	Line 1510: <p>To override the default path (<a href=\""modelica://OpenModelica.Scripting.getInstallationDirectoryPath\"">OPENMODELICAHOME</a>/lib/omlibrary/:~/.openmodelica/libraries/), set the environment variable OPENMODELICALIBRARY=...</p>
	Line 3825: <p>You will also need to start an m3d backend to render the results. We hid them in $OPENMODELICAHOME/lib/omlibrary-modelica3d/osg-gtk/dbus-server.py (or blender2.59).</p>
	Line 4929:   <body>Redirecting to the <a href=\""https://openmodelica.org/doc/OpenModelicaUsersGuide/latest/releases.html\"">on-line release notes</a> (you can also find the release notes in the locally installed version of the user's guide, OPENMODELICAHOME/share/doc/OpenModelicaUsersGuide).</body>
  
  e:\dev\OpenModelica\OMCompiler\Compiler\Main\Main.mo (4 hits)
	Line 723:         System.setEnv(""OPENMODELICAHOME"",omHome,true);
	Line 746:             print(""We could not find some needed MINGW paths in $OPENMODELICAHOME or $OMDEV. Searched for paths:\n"");
	Line 898:       print(""Error: OPENMODELICAHOME was not set.\n"");
	Line 900:       print(""  Most OpenModelica release distributions have scripts that set OPENMODELICAHOME for you.\n\n"");
  
  e:\dev\OpenModelica\OMCompiler\Compiler\NFFrontEnd\NFModelicaBuiltin.mo (6 hits)
	Line 1247:   String OPENMODELICAHOME, OPENMODELICALIBRARY, OMC_PATH, SYSTEM_PATH, OMDEV_PATH;
	Line 1667: function setInstallationDirectoryPath ""Sets the OPENMODELICAHOME environment variable. Use this method instead of setEnvironmentVar.""
	Line 1674: function getInstallationDirectoryPath ""This returns OPENMODELICAHOME if it is set; on some platforms the default path is returned if it is not set.""
	Line 1695: <p>To override the default path (<a href=\""modelica://OpenModelica.Scripting.getInstallationDirectoryPath\"">OPENMODELICAHOME</a>/lib/omlibrary/:~/.openmodelica/libraries/), set the environment variable OPENMODELICALIBRARY=...</p>
	Line 3958: <p>You will also need to start an m3d backend to render the results. We hid them in $OPENMODELICAHOME/lib/omlibrary-modelica3d/osg-gtk/dbus-server.py (or blender2.59).</p>
	Line 5002:   <body>Redirecting to the <a href=\""https://openmodelica.org/doc/OpenModelicaUsersGuide/latest/releases.html\"">on-line release notes</a> (you can also find the release notes in the locally installed version of the user's guide, OPENMODELICAHOME/share/doc/OpenModelicaUsersGuide).</body>
  
  e:\dev\OpenModelica\OMCompiler\Compiler\runtime\settingsimpl.c (5 hits)
	Line 71:     fprintf(stderr, ""could not deduce the OpenModelica installation directory from executable path: [%s], please set OPENMODELICAHOME"", omhome);
	Line 86:   const char *path = getenv(""OPENMODELICAHOME"");
	Line 116:   const char *path = getenv(""OPENMODELICAHOME"");
	Line 270:   /* set the env-var to created string this is useful when scripts and clients started by omc wants to use OPENMODELICAHOME*/
	Line 280:   commonSetEnvVar(""OPENMODELICAHOME"",value);
  
  e:\dev\OpenModelica\OMCompiler\Compiler\runtime\systemimpl.c (1 hit)
	Line 2649:   fprintf(stderr, ""Warning: environment variable OPENMODELICAHOME is not set. Cannot load locale.\n"");
  
  e:\dev\OpenModelica\OMCompiler\Compiler\Script\CevalScript.mo (7 hits)
	Line 243:     // We only need to set OPENMODELICAHOME on Windows, and set doesn't work in bash shells anyway
	Line 246:     //        OPENMODELICAHOME that we set will contain a SPACE at the end!
	Line 247:     //        set OPENMODELICAHOME=DIR && actually adds the space between the DIR and &&
	Line 249:     omhome := ""set OPENMODELICAHOME="" + System.stringReplace(omhome_1, ""/"", ""\\"") + ""&& "";
	Line 287:       // Check that it is a correct OPENMODELICAHOME, on Windows only
	Line 290:         Error.addMessage(Error.SIMULATOR_BUILD_ERROR, {stringAppendList({""command "",s_call,"" not found. Check $OPENMODELICAHOME""})});
	Line 1650:         vars_1 = {""OPENMODELICAHOME"",
  
  e:\dev\OpenModelica\OMCompiler\Compiler\Script\CevalScriptBackend.mo (8 hits)
	Line 1588:         Settings.getInstallationDirectoryPath() ""simulation fail for some other reason than OPENMODELICAHOME not being set."" ;
	Line 1600:           ""\nEnvironment variable OPENMODELICAHOME not set."",
	Line 2595:         // get OPENMODELICAHOME
	Line 2656:         // get OPENMODELICAHOME
	Line 3066:         // get OPENMODELICAHOME
	Line 3868:     // get OPENMODELICAHOME
	Line 5532:   $OPENMODELICAHOME/work if the file was not saved yet""
	Line 5561:         omhome = Settings.getInstallationDirectoryPath() ""model not yet saved! change to $OPENMODELICAHOME/work"" ;
  
  e:\dev\OpenModelica\OMCompiler\Compiler\SimCode\SerializeInitXML.mo (1 hit)
	Line 116:   File.write(file, ""  OPENMODELICAHOME                    = \"""");
  
  e:\dev\OpenModelica\OMCompiler\Compiler\Template\CodegenCpp.tpl (16 hits)
	Line 3144:   OMHOME=<%if boolOr(stringEq(makefileParams.platform, ""win32""),stringEq(makefileParams.platform, ""win64"")) then '$(OPENMODELICAHOME)' else makefileParams.omhome%>
	Line 3226:             OMHOME=<%if boolOr(stringEq(makefileParams.platform, ""win32""),stringEq(makefileParams.platform, ""win64"")) then '$(OPENMODELICAHOME)' else makefileParams.omhome%>
	Line 3324:       OPENMODELICAHOME := $(subst \,/,$(OPENMODELICAHOME))
	Line 3324:       OPENMODELICAHOME := $(subst \,/,$(OPENMODELICAHOME))
	Line 3377:       IDE_INCLUDES = -I$(WIND_BASE)/target/h -I$(WIND_BASE)/target/h/wrn/coreip -I$(MLPI_SDK_01)/mlpiCore/include -I$(OPENMODELICAHOME)/include/omc/omsicpp -I$(OPENMODELICAHOME)/include/omc/omsicpp/Core -I$(OPENMODELICAHOME)/include/omc/omsicpp
	Line 3377:       IDE_INCLUDES = -I$(WIND_BASE)/target/h -I$(WIND_BASE)/target/h/wrn/coreip -I$(MLPI_SDK_01)/mlpiCore/include -I$(OPENMODELICAHOME)/include/omc/omsicpp -I$(OPENMODELICAHOME)/include/omc/omsicpp/Core -I$(OPENMODELICAHOME)/include/omc/omsicpp
	Line 3377:       IDE_INCLUDES = -I$(WIND_BASE)/target/h -I$(WIND_BASE)/target/h/wrn/coreip -I$(MLPI_SDK_01)/mlpiCore/include -I$(OPENMODELICAHOME)/include/omc/omsicpp -I$(OPENMODELICAHOME)/include/omc/omsicpp/Core -I$(OPENMODELICAHOME)/include/omc/omsicpp
	Line 3379:       IDE_LIBRARIES = $(OPENMODELICAHOME)/lib/omc/omsicpp/vxworks/SimCore.a
	Line 3426:       com.boschrexroth.$(MODEL_NAME)/$(MODE_DIR)/% : IDE_INCLUDES = -I$(WIND_BASE)/target/h -I$(WIND_BASE)/target/h/wrn/coreip -I$(MLPI_SDK_01)/mlpiCore/include -I$(OPENMODELICAHOME)/include/omc/omsicpp -I$(OPENMODELICAHOME)/include/omc/omsicpp/Core -I$(OPENMODELICAHOME)/include/omc/omsicpp
	Line 3426:       com.boschrexroth.$(MODEL_NAME)/$(MODE_DIR)/% : IDE_INCLUDES = -I$(WIND_BASE)/target/h -I$(WIND_BASE)/target/h/wrn/coreip -I$(MLPI_SDK_01)/mlpiCore/include -I$(OPENMODELICAHOME)/include/omc/omsicpp -I$(OPENMODELICAHOME)/include/omc/omsicpp/Core -I$(OPENMODELICAHOME)/include/omc/omsicpp
	Line 3426:       com.boschrexroth.$(MODEL_NAME)/$(MODE_DIR)/% : IDE_INCLUDES = -I$(WIND_BASE)/target/h -I$(WIND_BASE)/target/h/wrn/coreip -I$(MLPI_SDK_01)/mlpiCore/include -I$(OPENMODELICAHOME)/include/omc/omsicpp -I$(OPENMODELICAHOME)/include/omc/omsicpp/Core -I$(OPENMODELICAHOME)/include/omc/omsicpp
	Line 3427:       com.boschrexroth.$(MODEL_NAME)/$(MODE_DIR)/% : IDE_LIBRARIES = $(OPENMODELICAHOME)/lib/omc/omsicpp/vxworks/SimCore.a
	Line 3478:       com.boschrexroth.$(MODEL_NAME)_partialImage/$(MODE_DIR)/% : IDE_INCLUDES = -I$(WIND_BASE)/target/h -I$(WIND_BASE)/target/h/wrn/coreip -I$(MLPI_SDK_01)/mlpiCore/include -I$(OPENMODELICAHOME)/include/omc/omsicpp -I$(OPENMODELICAHOME)/include/omc/omsicpp/Core -I$(OPENMODELICAHOME)/include/omc/omsicpp
	Line 3478:       com.boschrexroth.$(MODEL_NAME)_partialImage/$(MODE_DIR)/% : IDE_INCLUDES = -I$(WIND_BASE)/target/h -I$(WIND_BASE)/target/h/wrn/coreip -I$(MLPI_SDK_01)/mlpiCore/include -I$(OPENMODELICAHOME)/include/omc/omsicpp -I$(OPENMODELICAHOME)/include/omc/omsicpp/Core -I$(OPENMODELICAHOME)/include/omc/omsicpp
	Line 3478:       com.boschrexroth.$(MODEL_NAME)_partialImage/$(MODE_DIR)/% : IDE_INCLUDES = -I$(WIND_BASE)/target/h -I$(WIND_BASE)/target/h/wrn/coreip -I$(MLPI_SDK_01)/mlpiCore/include -I$(OPENMODELICAHOME)/include/omc/omsicpp -I$(OPENMODELICAHOME)/include/omc/omsicpp/Core -I$(OPENMODELICAHOME)/include/omc/omsicpp
	Line 3479:       com.boschrexroth.$(MODEL_NAME)_partialImage/$(MODE_DIR)/% : IDE_LIBRARIES = $(OPENMODELICAHOME)/lib/omc/omsicpp/vxworks/SimCore.a
  
  e:\dev\OpenModelica\OMCompiler\Compiler\Template\CodegenFMU.tpl (1 hit)
	Line 3040:     simulationInfo->OPENMODELICAHOME = ""<%makefileParams.omhome%>"";
  
  e:\dev\OpenModelica\OMCompiler\Compiler\Template\CodegenFMUCpp.tpl (2 hits)
	Line 649:   OMHOME=<%if boolOr(stringEq(makefileParams.platform, ""win32""),stringEq(makefileParams.platform, ""win64"")) then '$(OPENMODELICAHOME)' else makefileParams.omhome%>
	Line 728:   OMHOME=<%if boolOr(stringEq(makefileParams.platform, ""win32""),stringEq(makefileParams.platform, ""win64"")) then '$(OPENMODELICAHOME)' else makefileParams.omhome%>
  
  e:\dev\OpenModelica\OMCompiler\Compiler\Template\CodegenJava.tpl (1 hit)
	Line 1257:   top_dir = ${OPENMODELICAHOME}/
  
  e:\dev\OpenModelica\OMCompiler\Compiler\Util\Flags.mo (1 hit)
	Line 364:   Gettext.gettext(""Disables warnings on Windows if OPENMODELICAHOME/MinGW is missing.""));
  
  e:\dev\OpenModelica\OMCompiler\SimulationRuntime\c\simulation\modelinfo.c (2 hits)
	Line 491:     const char *omhome = data->simulationInfo->OPENMODELICAHOME;
	Line 536:       strcpy(buf, ""OPENMODELICAHOME missing"");
  
  e:\dev\OpenModelica\OMCompiler\SimulationRuntime\c\simulation\simulation_input_xml.c (4 hits)
	Line 554:   read_value_string(findHashStringString(mi.md,""OPENMODELICAHOME""), &simulationInfo->OPENMODELICAHOME);
	Line 554:   read_value_string(findHashStringString(mi.md,""OPENMODELICAHOME""), &simulationInfo->OPENMODELICAHOME);
	Line 555:   infoStreamPrint(LOG_SIMULATION, 0, ""OPENMODELICAHOME: %s"", simulationInfo->OPENMODELICAHOME);
	Line 555:   infoStreamPrint(LOG_SIMULATION, 0, ""OPENMODELICAHOME: %s"", simulationInfo->OPENMODELICAHOME);
  
  e:\dev\OpenModelica\OMCompiler\SimulationRuntime\c\simulation_data.h (1 hit)
	Line 709:   const char *OPENMODELICAHOME;
  
  e:\dev\OpenModelica\OMCompiler\SimulationRuntime\c\util\java_interface.c (3 hits)
	Line 291:   openmodelicahome = getenv(""OPENMODELICAHOME"");
	Line 293:     fprintf(stderr, ""getenv(OPENMODELICAHOME) failed - Java subsystem can't find the Java runtime...\n"");
	Line 1105:       return ""The exception handler triggered an exception.\nMake sure the java runtime is installed in $OPENMODELICAHOME/share/java/modelica_java.jar\n"";
  
  e:\dev\OpenModelica\OMCompiler\SimulationRuntime\OMSICpp\omcWrapper\omcZeroMQ\src\omc.cpp (2 hits)
	Line 167:     std::string set_omhome_var = string(""OPENMODELICAHOME="") + openmodelicaHome;
	Line 170:     status = SetEnvironmentVariable(""OPENMODELICAHOME"", TEXT(openmodelicaHome.c_str()));
  
  e:\dev\OpenModelica\OMCompiler\SimulationRuntime\OMSICpp\runtime\src\Core\ReduceDAE\com\ModelicaCompiler.cpp (2 hits)
	Line 23:     char* omhome = getenv(""OPENMODELICAHOME""); //should get value for OM home
	Line 28:         std::cout << ""OPENMODELICAHOME variable doesn't set"" << std::endl;
  
  e:\dev\OpenModelica\OMCompiler\SimulationRuntime\ParModelica\explicit\openclrt\ocl_offcomp.c (2 hits)
	Line 85:     const char* OMHOME = getenv(""OPENMODELICAHOME"");
	Line 173:        printf(""Couldn't find OPENMODELICAHOME!\n"");
  
  e:\dev\OpenModelica\OMCompiler\SimulationRuntime\ParModelica\explicit\openclrt\ocl_offcomp.cpp (2 hits)
	Line 680:     const char* OMHOME = getenv(""OPENMODELICAHOME"");
	Line 768:        printf(""Couldn't find OPENMODELICAHOME!\n"");
  
  e:\dev\OpenModelica\OMCompiler\SimulationRuntime\ParModelica\explicit\openclrt\omc_ocl_util.cpp (2 hits)
	Line 289:     const char* OMHOME = getenv(""OPENMODELICAHOME"");
	Line 292:        printf(""Couldn't find OPENMODELICAHOME!\n"");
  
  e:\dev\OpenModelica\OMEdit\OMEditLIB\OMEditApplication.cpp (1 hit)
	Line 68:   const char *omhome = getenv(""OPENMODELICAHOME"");
  
  e:\dev\OpenModelica\OMEdit\OMEditLIB\Util\Helper.cpp (1 hit)
	Line 744:       return tr(""Could not find environment variable OPENMODELICAHOME. Please make sure OpenModelica is installed properly."");
  
  e:\dev\OpenModelica\OMNotebook\OMNotebook\OMNotebookGUI\cellapplication.cpp (3 hits)
	Line 118:     const char *omhome = getenv(""OPENMODELICAHOME"");
	Line 121:       QMessageBox::critical(0, tr(""Error""), tr(""OPENMODELICAHOME not set""), ""OK"");
	Line 162:       QMessageBox::critical( 0, ""OpenModelica Error"", tr(""The environment variable OPENMODELICAHOME=%1 is not a valid directory"").arg(openmodelica) );
  
  e:\dev\OpenModelica\OMOptim\OMOptim\Core\OMC\MOomc.cpp (1 hit)
	Line 1428:         const char *omhome = getenv(""OPENMODELICAHOME"");
  
  e:\dev\OpenModelica\OMOptim\OMOptim\Core\OMC\OMCHelper.cpp (1 hit)
	Line 91:         return ""Could not find environment variable OPENMODELICAHOME. Please make sure OpenModelica is installed properly."";
  
  e:\dev\OpenModelica\OMOptim\OMOptim\Core\OMC\omcinteractiveenvironment.cpp (2 hits)
	Line 130:       std::string OMCPath( getenv( ""OPENMODELICAHOME"" ) );
	Line 133:         throw std::runtime_error( ""Could not find environment variable OPENMODELICAHOME"" );
  
  e:\dev\OpenModelica\OMOptim\OMOptim\Core\OpenModelica\OpenModelica.cpp (1 hit)
	Line 726:     QString omHome = env.value(""OPENMODELICAHOME"");
  
  e:\dev\OpenModelica\OMOptim\OMOptim\Core\Util\Helper.cpp (1 hit)
	Line 592:       return tr(""Could not find environment variable OPENMODELICAHOME. Please make sure OpenModelica is installed properly."");
  
  e:\dev\OpenModelica\OMOptim\OMOptim\Core\Util\Utilities.cpp (2 hits)
	Line 83:     QString om = env.value(""OPENMODELICAHOME"");
	Line 136:     static QString om = env.value(""OPENMODELICAHOME"") + QDir::separator() + ""bin"";
  
  e:\dev\OpenModelica\OMOptim\OMOptim\GUI\Tabs\TabOMC.cpp (2 hits)
	Line 68:     QString openmodelica( getenv( ""OPENMODELICAHOME"" ) );
	Line 70:         QMessageBox::critical( 0, ""OMShell Error"", ""Could not find environment variable OPENMODELICAHOME, command compleation will not work"" );
  
  e:\dev\OpenModelica\OMShell\OMShell\OMShellGUI\oms.cpp (1 hit)
	Line 266:     QMessageBox::critical( 0, ""OMShell Error"", ""Could not find environment variable OPENMODELICAHOME, command completion will not work"" );
}}}


"	defect	new	critical	2.0.0	Interactive Environment				Niklas Worschech Adeel Asghar Martin Sjölund
