X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=kernel%2Fsrc%2FbbtkUtilities.cxx;fp=kernel%2Fsrc%2FbbtkUtilities.cxx;h=51724cd4b147cc862f47c7e89dd2cefc912ee20d;hb=b7d6fdd0df18c14ba87b1954561c8ec6fb1e7a0a;hp=4bf1689be6aed0a62dee70aa01cc4db48b078df3;hpb=536dfc0a21b307fe5fa18afca108a77a5f79a6f6;p=bbtk.git diff --git a/kernel/src/bbtkUtilities.cxx b/kernel/src/bbtkUtilities.cxx index 4bf1689..51724cd 100644 --- a/kernel/src/bbtkUtilities.cxx +++ b/kernel/src/bbtkUtilities.cxx @@ -287,8 +287,10 @@ namespace bbtk libname += pkgname; #if defined(MACOSX) libname += ".dylib"; -#else - libname += ".so"; +#elif defined(WIN32) // mingw + libname += ".dll"; +#else // Linux + libname += ".so"; #endif #elif defined(_WIN32) @@ -643,7 +645,7 @@ namespace bbtk //2018-07-06 mingw64 wchar_t pname2[512]; long result = GetModuleFileName(NULL, pname2, pathsize); -// int ret = wcstombs ( pname, pname2, sizeof(pname) ); + int ret = wcstombs ( pname, pname2, sizeof(pname) ); // long result = GetModuleFileName(NULL, pname, pathsize); if (result > 0) { @@ -743,7 +745,6 @@ namespace bbtk return status; #endif /* MACOSX */ -printf("EED Utilities get_app_path END\n"); return -1; /* Path Lookup Failed */ } @@ -754,59 +755,27 @@ printf("EED Utilities get_app_path END\n"); //========================================================================= std::string Utilities::GetExecutablePath() { -printf("EED Utilities::GetExecutablePath Start\n"); char name[PATH_MAX]; -printf("EED Utilities::GetExecutablePath 1 \n"); int err = get_app_path(name, PATH_MAX); -printf("EED Utilities::GetExecutablePath 2 \n"); if (err) - { -printf("EED Utilities::GetExecutablePath 2.1 \n"); -// bbtkGlobalError("Could not determine current executable path ?"); - -/* - -printf("EED Utilities bbtkGlobalError XX Start\n"); - do - { -printf("EED Utilities bbtkGlobalError XX A.1\n"); - std::ostringstream s; -printf("EED Utilities bbtkGlobalError XX A.2\n"); - s << "Could not determine current executable path ?"; -printf("EED Utilities bbtkGlobalError XX A.3\n"); - std::ostringstream f; -printf("EED Utilities bbtkGlobalError XX A.4\n"); - f << __FILE__ << " (l."<<__LINE__<<")"; -printf("EED Utilities bbtkGlobalError XX A.5\n"); -std::string aa=f.str(); -printf("EED Utilities bbtkGlobalError XX A.6\n"); -std::string bb=f.str(); -printf("EED Utilities bbtkGlobalError XX A.7\n"); - bbtk::Exception e( "global scope", - f.str(), - s.str()); - throw e; -printf("EED Utilities bbtkGlobalError XX B\n"); - } - while (0); -printf("EED Utilities bbtkGlobalError XX End\n"); - -*/ - - -printf("EED Utilities::GetExecutablePath 2.2 \n"); - } - + { + try + { + bbtkGlobalError("Could not determine current executable path ?"); + } + catch (bbtk::Exception e) + { + std::cerr << e.GetErrorMessage() << std::endl; + } + } + // remove the exe name char *slash; -printf("EED Utilities::GetExecutablePath 3 >%s<\n",name); slash = strrchr(name, VALID_FILE_SEPARATOR_CHAR); -printf("EED Utilities::GetExecutablePath 4 \n"); if (slash) - { - *slash = 0; - } -printf("EED Utilities::GetExecutablePath END \n"); + { + *slash = 0; + } return name; } //=========================================================================