I have an AddIn created using Excel DNA c#.
Everything works fine.
I've packed the required dll's in .dna file my dna file is as follows
<DnaLibrary RuntimeVersion="v4.0" Language="C#">
<ExternalLibrary Path="ExcelAddInClient.dll" Pack="true"/>
<ExternalLibrary Path="Newtonsoft.Json.dll" Pack="true"/>
<ExternalLibrary Path="System.Net.Http.Formatting.dll" Pack="true"/>
<ExternalLibrary Path="AuthenticationDll.dll" Pack="true"/>
</DnaLibrary>
when i double click the packed filed from Release folder it works fine.but if i copy that xll file to some other location its not working.It doesn't show any Error but It doesn't shows the Desired Output as well.
I am not geting why???
Only the Excel add-in assembly should be referenced using the ExternalLibrary tag in the .dna file.
All other assemblies should be using Reference.
E.g.
<DnaLibrary RuntimeVersion="v4.0" Language="C#">
<ExternalLibrary Path="ExcelAddInClient.dll" Pack="true"/>
<Reference Path="Newtonsoft.Json.dll" Pack="true"/>
<Reference Path="System.Net.Http.Formatting.dll" Pack="true"/>
<Reference Path="AuthenticationDll.dll" Pack="true"/>
</DnaLibrary>
You are probably missing some dlls, or other necessary files. Look in the release folder, and see what else is there.
You could try copying all of the other files along with the packed xll, and then deleting these other files one at a time to see which ones are necessary. Then add these extra necessary files into the dna file.
Also, did you know that you can debug into Excel? Use "Debug"/"Attach to Process", from Visual Studio, and connect to Excel. Then open the xll from Excel. This will hopefully show you the error.
In my case, I worked out the issue by looking at the output of the compile step.
View..Output should have no obvious errors. This is what it should look like:
1>------ Build started: Project: ExcelDNA2, Configuration: Release Any CPU ------
1> ExcelDNA2 -> H:\Test\Docs\SpecsProofOfConcept\ExcelDNA2\bin\Release\ExcelDNA2.dll
1> H:\Test\Docs\SpecsProofOfConcept\\packages\ExcelDna.AddIn.0.33.9\tools\ExcelDna.xll
1> 1 File(s) copied
1> H:\Test\Docs\SpecsProofOfConcept\ExcelDNA2\bin\Release\ExcelDNA2-AddIn.dna
1> 1 File(s) copied
1> H:\Test\Docs\SpecsProofOfConcept\\packages\ExcelDna.AddIn.0.33.9\tools\ExcelDna64.xll
1> 1 File(s) copied
1> Using base add-in H:\Test\Docs\SpecsProofOfConcept\ExcelDNA2\bin\Release\ExcelDNA2-AddIn.xll
1> -> Updating resource: Type: ASSEMBLY_LZMA, Name: EXCELDNA.INTEGRATION, Length: 63672
1> ~~> ExternalLibrary path ExcelDNA2.dll resolved to H:\Test\Docs\SpecsProofOfConcept\ExcelDNA2\bin\Release\ExcelDNA2.dll.
1> -> Updating resource: Type: ASSEMBLY_LZMA, Name: EXCELDNA2, Length: 1605
1> -> Updating resource: Type: DNA, Name: __MAIN__, Length: 417
1> Completed Packing H:\Test\Docs\SpecsProofOfConcept\ExcelDNA2\bin\Release\ExcelDNA2-AddIn-packed.xll.
1> Using base add-in H:\Test\Docs\SpecsProofOfConcept\ExcelDNA2\bin\Release\ExcelDNA2-AddIn64.xll
1> -> Updating resource: Type: ASSEMBLY_LZMA, Name: EXCELDNA.INTEGRATION, Length: 63672
1> ~~> ExternalLibrary path ExcelDNA2.dll resolved to H:\Test\Docs\SpecsProofOfConcept\ExcelDNA2\bin\Release\ExcelDNA2.dll.
1> -> Updating resource: Type: ASSEMBLY_LZMA, Name: EXCELDNA2, Length: 1605
1> -> Updating resource: Type: DNA, Name: __MAIN__, Length: 417
1> Completed Packing H:\Test\Docs\SpecsProofOfConcept\ExcelDNA2\bin\Release\ExcelDNA2-AddIn64-packed.xll.
1> H:\Test\Docs\SpecsProofOfConcept\ExcelDNA2\bin\Release\ExcelDNA2-AddIn64.dna
1> 1 File(s) copied
1> H:\Test\Docs\SpecsProofOfConcept\ExcelDNA2\bin\Release\ExcelDNA2-AddIn64.xll
1> 1 File(s) copied
========== Build: 1 succeeded, 0 failed, 15 up-to-date, 0 skipped ==========
In my case, it was printing many null reference exceptions in the build output.
It turned out that I had created a console application rather than a class library, and when the NuGet package was added, it created the .dna file pointing to ExcelDNSA2.exe, rather than ExcelDNSA2.dll.
Fix this, and everything worked like a charm.
As mentioned by Mark, you are probably missing some of your dlls, or they aren't being included in the packing.
I've found that you really need to pay attention to the output of the build commands if things aren't working as expected.
The dlls will need to either exist, and be registered on the deployment machine, or will need to be included in your Visual Studio output directory so that the packing includes them. If they can't be found it doesn't flag any error to Visual Studio, it just tells such in the output window.
Related
I'm trying to build the C# wrappers for RDKit, but have been struggling to make progress. I've attempted two routes:
n.b. This question is long and unhelpful. Long story short use NuGet (see answer below).
Attempt One
Docs from RDKit /Code/JavaWrappers/csharp_wrapper
The first one is found in https://github.com/rdkit/rdkit.
There are C# wrappers with build instructions in ./Code/JavaWrappers/csharp_wrapper found at: https://github.com/rdkit/rdkit/tree/master/Code/JavaWrappers/csharp_wrapper
My first attempt to compile the wrappers involved manually trying to build these. Following this README: https://github.com/rdkit/rdkit/blob/master/Code/JavaWrappers/csharp_wrapper/README
To build on Windows:
Since cmake doesn't know anything about C#, there's an unfortunate
manual step involved in this.
Make sure that the cmake configuration variable
RDK_BUILD_SWIG_CSHARP_WRAPPER is set to ON.
Run cmake to generate the solution file and open it in Visual
Studio.
Select the option to add an existing project and add
$RDBASE/Code/JavaWrappers/csharp_wrapper/RDKit2DotNet.csproj
Right click on the added project (named RDKit2DotNet) and add a
dependency to RDKFuncs (this is the project that creates the C++
dll that the C# project needs)
Build the RDKit2DotNet project.
Your bin directory
($RDBASE/Code/JavaWrappers/csharp_wrapper/bin/Release if you did a
release build) now contains two DLLs:
- RDKFuncs.dll is the C++ dll containing the RDKit functionality
- RDKit2DotNet.dll contains the C# wrapper. To use the wrappers in your own projects, you should copy both dlls into your project
directory and add a reference to RDKit2DotNet.dll
The directory RDKitCSharpTest contains a sample test project and some
code that makes very basic use of the wrapper functionality.
To get cmake to run I updated the CMakeLists.txt to tell it how to find swig and to set RDK_BUILD_SWIG_CSHARP_WRAPPER ON as follows:
cmake_minimum_required(VERSION 3.14)
project (GraphMolCSharp)
set(SWIG_FOUND TRUE) # This has been added
set(SWIG_DIR ${CMAKE_CURRENT_SOURCE_DIR}) # This has been added
set(SWIG_EXECUTABLE swig.exe) # This has been added
set(SWIG_VERSION 4.0) # This has been added
find_package (SWIG) # This has been added
include (UseSWIG) # This has been added
include_directories( ${RDKit_ExternalDir} )
SET(RDK_BUILD_SWIG_CSHARP_WRAPPER ON) # This has been added
# find the gmcs executables on non-windows systems:
if(NOT WIN32)
find_program(GMCS_EXE gmcs)
if (NOT GMCS_EXE)
MESSAGE ("gmcs (executable) is not found. Please add it to PATH and rerun cmake.")
MESSAGE(FATAL_ERROR "Cannot find required executable gmcs")
endif (NOT GMCS_EXE)
endif(NOT WIN32)
SET_SOURCE_FILES_PROPERTIES(GraphMolCSharp.i PROPERTIES CPLUSPLUS ON )
# Setup a few variables for environment-specific things
if(WIN32)
ADD_DEFINITIONS("/W3 /wd4716 /bigobj")
SET(PATH_SEP ";")
SET(COPY_CMD xcopy ${COPY_SOURCE} ${COPY_DEST} /Y /I)
else()
SET(PATH_SEP ":")
SET(COPY_CMD cp -p ${COPY_SOURCE} ${COPY_DEST})
endif()
# Coax SWIG into playing nicely with Apple environments
if(APPLE)
SET(CMAKE_SIZEOF_VOID_P 4)
endif(APPLE)
if(CMAKE_SIZEOF_VOID_P MATCHES 4)
SET(CMAKE_SWIG_FLAGS -namespace "GraphMolWrap")
else()
if (WIN32)
SET(CMAKE_SWIG_FLAGS -namespace "GraphMolWrap" "-DSWIGWORDSIZE64" "-DSWIGWIN")
else()
SET(CMAKE_SWIG_FLAGS -namespace "GraphMolWrap" "-DSWIGWORDSIZE64")
endif()
endif()
SET(CMAKE_SWIG_OUTDIR ${CMAKE_CURRENT_SOURCE_DIR}/swig_csharp )
if(RDK_BUILD_INCHI_SUPPORT)
SET(CMAKE_SWIG_FLAGS "-DRDK_BUILD_INCHI_SUPPORT" ${CMAKE_SWIG_FLAGS} )
endif()
if(RDK_BUILD_AVALON_SUPPORT)
SET(CMAKE_SWIG_FLAGS "-DRDK_BUILD_AVALON_SUPPORT" ${CMAKE_SWIG_FLAGS} )
endif()
FILE(GLOB SWIG_SRC_FILES "${CMAKE_CURRENT_SOURCE_DIR}/../*.i")
# we added all source files, now remove the ones that we're not supporting in this build:
if(NOT RDK_BUILD_AVALON_SUPPORT)
LIST(REMOVE_ITEM SWIG_SRC_FILES "${CMAKE_CURRENT_SOURCE_DIR}/../AvalonLib.i")
endif()
if(NOT RDK_BUILD_INCHI_SUPPORT)
LIST(REMOVE_ITEM SWIG_SRC_FILES "${CMAKE_CURRENT_SOURCE_DIR}/../Inchi.i")
endif()
SET(SWIG_MODULE_RDKFuncs_EXTRA_DEPS ${SWIG_SRC_FILES} )
SWIG_ADD_LIBRARY(RDKFuncs TYPE MODULE LANGUAGE CSharp SOURCES GraphMolCSharp.i )
# it doesnt seem like the threading libs should need to be here, but
# as of Oct 2012 using boost 1.51 under at least ubuntu 12.04 we get a
# link error if they aren't there.
SWIG_LINK_LIBRARIES(RDKFuncs ${RDKit_Wrapper_Libs}
${RDKit_THREAD_LIBS} )
INSTALL(TARGETS RDKFuncs
DESTINATION ${CMAKE_CURRENT_SOURCE_DIR} )
if(NOT WIN32)
# code adapted from the wrapper code for
# GDCM: http://gdcm.svn.sf.net/viewvc/gdcm/trunk/Wrapping/Java/CMakeLists.txt?view=markup
ADD_CUSTOM_COMMAND(
OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/RDKit2DotNet.dll
COMMAND ${CMAKE_COMMAND} -E make_directory swig_csharp
## 1. run this custom command only after swig has been run.
COMMAND ${GMCS_EXE} -out:RDKit2DotNet.dll -t:library "swig_csharp/*.cs"
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
DEPENDS "${swig_generated_file_fullname}"
)
ADD_CUSTOM_TARGET(RDKFuncsDLL ALL
DEPENDS RDKFuncs ${CMAKE_CURRENT_SOURCE_DIR}/RDKit2DotNet.dll
COMMENT "building mono dll"
)
endif(NOT WIN32)
This creates a lot of new files and one .sln file called GraphMolCSharp.sln.
I was then able to follow the rest of the steps in the README. I opened GraphMolCSharp.sln and added RDKit2DotNet.csproj as a project and added RDKfuncs as a build dependency. But building this gave a lot of errors in Visual Studio, starting with:
Could not copy the file "D:\Desktop\rdkit-master\Code\JavaWrappers\csharp_wrapper\RDKFuncs.dll" because it was not found. RDKit2DotNet
Then a lot of Unable to find x errors.
If anyone can offer some guidance about anything I might have done wrong please let me know.
Attempt Two
The second uses the build.bat found here: https://github.com/bp-kelley/rdkit-csharp
To start I run:
git clone https://github.com/bp-kelley/rdkit-csharp.git
git clone https://github.com/rdkit/rdkit.git
cd rdkit-csharp
Then I have updated the build.bat to use Visual Studio 16 2019 as follows.
Line 95: cmake -G "Visual Studio 16 2019" -A x64 ...
and
Line 111: cmake -G "Visual Studio 16 2019" ...
If someone is able to offer assistance debugging the output below I'd be most grateful.
I have had to cancel the following line:
Downloading: https://dist.nuget.org/win-x86-commandline/latest/nuget.exe to \Desktop\Build\rdkit-csharp\nuget.exe
^CTerminate batch job (Y/N)? n
But have copied nuget.exe into the expected location.
This is most of the output of running build.bat
**PS D:\Desktop\Build> git clone https://github.com/bp-kelley/rdkit-csharp.git
>> git clone https://github.com/rdkit/rdkit.git
>> cd rdkit-csharp
Cloning into 'rdkit-csharp'...
remote: Enumerating objects: 12, done.
remote: Counting objects: 100% (12/12), done.
remote: Compressing objects: 100% (9/9), done.
remote: Total 64 (delta 5), reused 7 (delta 3), pack-reused 52
Unpacking objects: 100% (64/64), done.
Cloning into 'rdkit'...
remote: Enumerating objects: 83, done.
remote: Counting objects: 100% (83/83), done.
remote: Compressing objects: 100% (60/60), done.
remote: Total 61097 (delta 34), reused 38 (delta 22), pack-reused 61014
Receiving objects: 100% (61097/61097), 148.64 MiB | 8.96 MiB/s, done.
Resolving deltas: 100% (46291/46291), done.
Checking out files: 100% (3478/3478), done.
PS D:\Desktop\Build\rdkit-csharp> .\build.bat
///////// TOO LONG TO POST TO STACKOVERFLOW CUT LINES /////////
D:\Desktop\Build\rdkit-csharp>call get_nuget https://dist.nuget.org/win-x86-commandline/latest/nuget.exe
Downloading: https://dist.nuget.org/win-x86-commandline/latest/nuget.exe to \Desktop\Build\rdkit-csharp\nuget.exe
^CTerminate batch job (Y/N)? n
Running cmake...
Feeds used:
C:\Users\Sarco\.nuget\packages\
https://api.nuget.org/v3/index.json
C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\
Attempting to gather dependency information for package 'boost-vc140.1.69.0' with respect to project 'D:\Desktop\Build\rdkit-csharp\Nuget.Local', targeting 'Any,Version=v0.0'
///////// TOO LONG TO POST TO STACKOVERFLOW CUT LINES /////////
Build started 11/05/2019 09:36:17.
1>Project "D:\Desktop\Build\rdkit-csharp\build64\ALL_BUILD.vcxproj" on node 1 (Build target(s)).
1>D:\Desktop\Build\rdkit-csharp\build64\ALL_BUILD.vcxproj(32,3): error MSB4019: The imported project "D:\Microsoft
.Cpp.Default.props" was not found. Confirm that the path in the <Import> declaration is correct, and that the fi
le exists on disk.
1>Done Building Project "D:\Desktop\Build\rdkit-csharp\build64\ALL_BUILD.vcxproj" (Build target(s)) -- FAILED.
Build FAILED.
"D:\Desktop\Build\rdkit-csharp\build64\ALL_BUILD.vcxproj" (Build target) (1) ->
D:\Desktop\Build\rdkit-csharp\build64\ALL_BUILD.vcxproj(32,3): error MSB4019: The imported project "D:\Microso
ft.Cpp.Default.props" was not found. Confirm that the path in the <Import> declaration is correct, and that the
file exists on disk.
0 Warning(s)
1 Error(s)
Time Elapsed 00:00:00.14
D:\Desktop\Build\rdkit-csharp\build64>copy Code\JavaWrappers\csharp_wrapper\Release\RDKFuncs.dll Code\JavaWrappers\csharp_wrapper
The system cannot find the path specified.
D:\Desktop\Build\rdkit-csharp\build64>copy ..\..\rdkit\Code\JavaWrappers\csharp_wrapper\RDKit2DotNet.csproj Code\JavaWrappers\csharp_wrapper
1 file(s) copied.
D:\Desktop\Build\rdkit-csharp\build64>robocopy ..\..\rdkit\Code\JavaWrappers\csharp_wrapper\swig_csharp Code\JavaWrappers\csharp_wrapper\swig_csharp /E
-------------------------------------------------------------------------------
ROBOCOPY :: Robust File Copy for Windows
-------------------------------------------------------------------------------
Started : 11 May 2019 09:36:17
Source : D:\Desktop\Build\rdkit\Code\JavaWrappers\csharp_wrapper\swig_csharp\
Dest : D:\Desktop\Build\rdkit-csharp\build64\Code\JavaWrappers\csharp_wrapper\swig_csharp\
Files : *.*
Options : *.* /S /E /DCOPY:DA /COPY:DAT /R:1000000 /W:30
------------------------------------------------------------------------------
2019/05/11 09:36:17 ERROR 2 (0x00000002) Accessing Source Directory D:\Desktop\Build\rdkit\Code\JavaWrappers\csharp_wrapper\swig_csharp\
The system cannot find the file specified.
D:\Desktop\Build\rdkit-csharp\build64>copy D:\Desktop\Build\rdkit-csharp\\RDKit.cs Code\JavaWrappers\csharp_wrapper\swig_csharp\RDKit.cs
The system cannot find the path specified.
0 file(s) copied.
D:\Desktop\Build\rdkit-csharp\build64>msbuild "Code\JavaWrappers\csharp_wrapper\RDKit2DotNet.csproj" /m /p:Configuration=Release /maxcpucount:4 /t:Build /p:Platform=AnyCPU
Microsoft (R) Build Engine version 4.7.3056.0
[Microsoft .NET Framework, version 4.0.30319.42000]
Copyright (C) Microsoft Corporation. All rights reserved.
Build started 11/05/2019 09:36:18.
1>Project "D:\Desktop\Build\rdkit-csharp\build64\Code\JavaWrappers\csharp_wrapper\RDKit2DotNet.csproj" on node 1 (
Build target(s)).
1>PrepareForBuild:
Creating directory "bin\Release\".
Creating directory "obj\Release\".
GenerateTargetFrameworkMonikerAttribute:
Skipping target "GenerateTargetFrameworkMonikerAttribute" because all output files are up-to-date with respect t
o the input files.
CoreCompile:
C:\Windows\Microsoft.NET\Framework\v4.0.30319\Csc.exe /noconfig /nowarn:1701,1702 /nostdlib+ /errorreport:prom
pt /warn:4 /define:TRACE /highentropyva- /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Fra
mework\.NETFramework\v4.0\Microsoft.CSharp.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Micros
oft\Framework\.NETFramework\v4.0\mscorlib.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microso
ft\Framework\.NETFramework\v4.0\System.Core.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Micro
soft\Framework\.NETFramework\v4.0\System.Data.DataSetExtensions.dll" /reference:"C:\Program Files (x86)\Refere
nce Assemblies\Microsoft\Framework\.NETFramework\v4.0\System.Data.dll" /reference:"C:\Program Files (x86)\Refe
rence Assemblies\Microsoft\Framework\.NETFramework\v4.0\System.dll" /reference:"C:\Program Files (x86)\Referen
ce Assemblies\Microsoft\Framework\.NETFramework\v4.0\System.Xml.dll" /reference:"C:\Program Files (x86)\Refere
nce Assemblies\Microsoft\Framework\.NETFramework\v4.0\System.Xml.Linq.dll" /debug:pdbonly /filealign:512 /opti
mize+ /out:obj\Release\RDKit2DotNet.dll /target:library /utf8output
1>CSC : warning CS2008: No source files specified [D:\Desktop\Build\rdkit-csharp\build64\Code\JavaWrappers\csharp_
wrapper\RDKit2DotNet.csproj]
1>C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(3713,5): error MSB3030: Could not copy th
e file "D:\Desktop\Build\rdkit-csharp\build64\Code\JavaWrappers\csharp_wrapper\RDKFuncs.dll" because it was not
found. [D:\Desktop\Build\rdkit-csharp\build64\Code\JavaWrappers\csharp_wrapper\RDKit2DotNet.csproj]
1>Done Building Project "D:\Desktop\Build\rdkit-csharp\build64\Code\JavaWrappers\csharp_wrapper\RDKit2DotNet.cspro
j" (Build target(s)) -- FAILED.
Build FAILED.
"D:\Desktop\Build\rdkit-csharp\build64\Code\JavaWrappers\csharp_wrapper\RDKit2DotNet.csproj" (Build target) (1)
->
(CoreCompile target) ->
CSC : warning CS2008: No source files specified [D:\Desktop\Build\rdkit-csharp\build64\Code\JavaWrappers\cshar
p_wrapper\RDKit2DotNet.csproj]
"D:\Desktop\Build\rdkit-csharp\build64\Code\JavaWrappers\csharp_wrapper\RDKit2DotNet.csproj" (Build target) (1)
->
(_CopyOutOfDateSourceItemsToOutputDirectoryAlways target) ->
C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(3713,5): error MSB3030: Could not copy
the file "D:\Desktop\Build\rdkit-csharp\build64\Code\JavaWrappers\csharp_wrapper\RDKFuncs.dll" because it was no
t found. [D:\Desktop\Build\rdkit-csharp\build64\Code\JavaWrappers\csharp_wrapper\RDKit2DotNet.csproj]
1 Warning(s)
1 Error(s)
Time Elapsed 00:00:00.63
///////// TOO LONG TO POST TO STACKOVERFLOW CUT LINES /////////
-- Using unsigned short
-- Check if the system is big endian - little endian
-- Found Catch2 source in D:/Desktop/Build/rdkit/External/catch/catch
CATCH: D:/Desktop/Build/rdkit/External/catch/catch/single_include
-- Could NOT find InChI in system locations (missing: INCHI_LIBRARY INCHI_INCLUDE_DIR)
CUSTOM_INCHI_PATH = D:/Desktop/Build/rdkit/External/INCHI-API
-- Found InChI software locally
-- Boost version: 1.69.0
-- Looking for pthread.h
///////// TOO LONG TO POST TO STACKOVERFLOW CUT LINES /////////
in D:/Desktop/Build/rdkit/External/CoordGen/maeparser
CMake Error at D:/Program Files/CMake/share/cmake-3.14/Modules/FindBoost.cmake:2147 (message):
Unable to find the requested Boost libraries.
Boost version: 1.69.0
Boost include path:
D:/Desktop/Build/rdkit-csharp/Nuget.Local/boost.1.69.0.0/lib/native/include
Could not find the following Boost libraries:
boost_system
boost_iostreams
Some (but not all) of the required Boost libraries were found. You may
need to install these additional Boost libraries. Alternatively, set
BOOST_LIBRARYDIR to the directory containing Boost libraries or BOOST_ROOT
to the location of Boost.
Call Stack (most recent call first):
External/CoordGen/CMakeLists.txt:39 (find_package)
-- coordgen include dir set as coordgen_INCLUDE_DIRS-NOTFOUND
-- coordgen libraries set as 'coordgen_LIBRARIES-NOTFOUND'
-- coordgen templates file set as 'coordgen_TEMPLATE_FILE-NOTFOUND'
-- Could NOT find coordgen (missing: coordgen_INCLUDE_DIRS coordgen_LIBRARIES coordgen_TEMPLATE_FILE)
-- Found coordgenlibs source in D:/Desktop/Build/rdkit/External/CoordGen/coordgen
-- Could NOT find ZLIB (missing: ZLIB_LIBRARY ZLIB_INCLUDE_DIR)
CMake Error at D:/Program Files/CMake/share/cmake-3.14/Modules/FindBoost.cmake:2147 (message):
Unable to find the requested Boost libraries.
Boost version: 1.69.0
Boost include path:
D:/Desktop/Build/rdkit-csharp/Nuget.Local/boost.1.69.0.0/lib/native/include
Could not find the following Boost libraries:
boost_system
boost_iostreams
Some (but not all) of the required Boost libraries were found. You may
need to install these additional Boost libraries. Alternatively, set
BOOST_LIBRARYDIR to the directory containing Boost libraries or BOOST_ROOT
to the location of Boost.
Call Stack (most recent call first):
Code/RDStreams/CMakeLists.txt:4 (find_package)
-- Could NOT find Boost
CMake Error at D:/Program Files/CMake/share/cmake-3.14/Modules/FindBoost.cmake:2147 (message):
Unable to find the requested Boost libraries.
Boost version: 1.69.0
Boost include path:
D:/Desktop/Build/rdkit-csharp/Nuget.Local/boost.1.69.0.0/lib/native/include
Could not find the following Boost libraries:
boost_system
boost_iostreams
Some (but not all) of the required Boost libraries were found. You may
need to install these additional Boost libraries. Alternatively, set
BOOST_LIBRARYDIR to the directory containing Boost libraries or BOOST_ROOT
to the location of Boost.
Call Stack (most recent call first):
Code/GraphMol/FileParsers/CMakeLists.txt:7 (find_package)
-- Could NOT find Boost
== Making EnumerateLibrary without boost Serialization support
== Making FilterCatalog without boost Serialization support
-- Found PythonInterp: D:/Program Files/Python36-32/python.exe (found version "3.6.3")
== Updating Filters.cpp from pains file
== Done updating pains files
-- Could NOT find PkgConfig (missing: PKG_CONFIG_EXECUTABLE)
-- Found Cairo: D:/Desktop/Build/rdkit-csharp/Nuget.Local/cairo.1.12.18.0/build/native/include
== Making SubstructLibrary without boost Serialization support
-- Found RapidJSON source in D:/Desktop/Build/rdkit/External
-- Found SWIG: C:/swig/swig.exe (found version "4.0.0")
CMake Error at D:/Program Files/CMake/share/cmake-3.14/Modules/FindBoost.cmake:2147 (message):
Unable to find the requested Boost libraries.
Boost version: 1.69.0
Boost include path:
D:/Desktop/Build/rdkit-csharp/Nuget.Local/boost.1.69.0.0/lib/native/include
Could not find the following Boost libraries:
boost_system
boost_iostreams
Some (but not all) of the required Boost libraries were found. You may
need to install these additional Boost libraries. Alternatively, set
BOOST_LIBRARYDIR to the directory containing Boost libraries or BOOST_ROOT
to the location of Boost.
Call Stack (most recent call first):
Code/JavaWrappers/CMakeLists.txt:43 (find_package)
-- Could NOT find Boost
SUFFIX:
JAVA_LIBS: AvalonLib;avalon_clib;RDInchiLib;Inchi;RGroupDecomposition;SubstructLibrary;MolStandardize;FilterCatalog;Catalogs;FMCS;MolDraw2D;FileParsers;SmilesParse;Depictor;SubstructMatch;ChemReactions;Fingerprints;ChemTransforms;Subgraphs;GraphMol;DataStructs;Trajectory;Descriptors;PartialCharges;MolTransforms;DistGeomHelpers;DistGeometry;ForceFieldHelpers;ForceField;EigenSolvers;Optimizer;MolAlign;Alignment;SimDivPickers;RDGeometryLib;RDStreams;RDGeneral
CMake Warning (dev) at D:/Program Files/CMake/share/cmake-3.14/Modules/UseSWIG.cmake:600 (message):
Policy CMP0078 is not set: UseSWIG generates standard target names. Run
"cmake --help-policy CMP0078" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
Call Stack (most recent call first):
Code/JavaWrappers/csharp_wrapper/CMakeLists.txt:63 (SWIG_ADD_LIBRARY)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at D:/Program Files/CMake/share/cmake-3.14/Modules/UseSWIG.cmake:460 (message):
Policy CMP0086 is not set: UseSWIG honors SWIG_MODULE_NAME via -module
flag. Run "cmake --help-policy CMP0086" for policy details. Use the
cmake_policy command to set the policy and suppress this warning.
Call Stack (most recent call first):
D:/Program Files/CMake/share/cmake-3.14/Modules/UseSWIG.cmake:695 (SWIG_ADD_SOURCE_TO_MODULE)
Code/JavaWrappers/csharp_wrapper/CMakeLists.txt:63 (SWIG_ADD_LIBRARY)
This warning is for project developers. Use -Wno-dev to suppress it.
-- Configuring incomplete, errors occurred!
See also "D:/Desktop/Build/rdkit-csharp/build32/CMakeFiles/CMakeOutput.log".
See also "D:/Desktop/Build/rdkit-csharp/build32/CMakeFiles/CMakeError.log".
D:\Desktop\Build\rdkit-csharp\build32>msbuild "ALL_BUILD.vcxproj" /m /p:PlatformTarget=x86 /p:Configuration=Release /maxcpucount:4 /t:Build
Microsoft (R) Build Engine version 4.7.3056.0
[Microsoft .NET Framework, version 4.0.30319.42000]
Copyright (C) Microsoft Corporation. All rights reserved.
MSBUILD : error MSB1009: Project file does not exist.
Switch: ALL_BUILD.vcxproj
D:\Desktop\Build\rdkit-csharp\build32>copy Code\JavaWrappers\csharp_wrapper\Release\RDKFuncs.dll Code\JavaWrappers\csharp_wrapper
The system cannot find the path specified.
D:\Desktop\Build\rdkit-csharp\build32>copy ..\..\rdkit\Code\JavaWrappers\csharp_wrapper\RDKit2DotNet.csproj Code\JavaWrappers\csharp_wrapper
1 file(s) copied.
D:\Desktop\Build\rdkit-csharp\build32>robocopy ..\..\rdkit\Code\JavaWrappers\csharp_wrapper\swig_csharp Code\JavaWrappers\csharp_wrapper\swig_csharp /E
-------------------------------------------------------------------------------
ROBOCOPY :: Robust File Copy for Windows
-------------------------------------------------------------------------------
Started : 11 May 2019 09:36:36
Source : D:\Desktop\Build\rdkit\Code\JavaWrappers\csharp_wrapper\swig_csharp\
Dest : D:\Desktop\Build\rdkit-csharp\build32\Code\JavaWrappers\csharp_wrapper\swig_csharp\
Files : *.*
Options : *.* /S /E /DCOPY:DA /COPY:DAT /R:1000000 /W:30
------------------------------------------------------------------------------
2019/05/11 09:36:36 ERROR 2 (0x00000002) Accessing Source Directory D:\Desktop\Build\rdkit\Code\JavaWrappers\csharp_wrapper\swig_csharp\
The system cannot find the file specified.
D:\Desktop\Build\rdkit-csharp\build32>copy D:\Desktop\Build\rdkit-csharp\\RDKit.cs Code\JavaWrappers\csharp_wrapper\swig_csharp\RDKit.cs
The system cannot find the path specified.
0 file(s) copied.
D:\Desktop\Build\rdkit-csharp\build32>msbuild "Code\JavaWrappers\csharp_wrapper\RDKit2DotNet.csproj" /m /p:Configuration=Release /maxcpucount:4 /t:Build /p:Platform=AnyCPU
Microsoft (R) Build Engine version 4.7.3056.0
[Microsoft .NET Framework, version 4.0.30319.42000]
Copyright (C) Microsoft Corporation. All rights reserved.
Build started 11/05/2019 09:36:36.
1>Project "D:\Desktop\Build\rdkit-csharp\build32\Code\JavaWrappers\csharp_wrapper\RDKit2DotNet.csproj" on node 1 (
Build target(s)).
1>PrepareForBuild:
Creating directory "bin\Release\".
Creating directory "obj\Release\".
GenerateTargetFrameworkMonikerAttribute:
Skipping target "GenerateTargetFrameworkMonikerAttribute" because all output files are up-to-date with respect t
o the input files.
CoreCompile:
C:\Windows\Microsoft.NET\Framework\v4.0.30319\Csc.exe /noconfig /nowarn:1701,1702 /nostdlib+ /errorreport:prom
pt /warn:4 /define:TRACE /highentropyva- /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Fra
mework\.NETFramework\v4.0\Microsoft.CSharp.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Micros
oft\Framework\.NETFramework\v4.0\mscorlib.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microso
ft\Framework\.NETFramework\v4.0\System.Core.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Micro
soft\Framework\.NETFramework\v4.0\System.Data.DataSetExtensions.dll" /reference:"C:\Program Files (x86)\Refere
nce Assemblies\Microsoft\Framework\.NETFramework\v4.0\System.Data.dll" /reference:"C:\Program Files (x86)\Refe
rence Assemblies\Microsoft\Framework\.NETFramework\v4.0\System.dll" /reference:"C:\Program Files (x86)\Referen
ce Assemblies\Microsoft\Framework\.NETFramework\v4.0\System.Xml.dll" /reference:"C:\Program Files (x86)\Refere
nce Assemblies\Microsoft\Framework\.NETFramework\v4.0\System.Xml.Linq.dll" /debug:pdbonly /filealign:512 /opti
mize+ /out:obj\Release\RDKit2DotNet.dll /target:library /utf8output
1>CSC : warning CS2008: No source files specified [D:\Desktop\Build\rdkit-csharp\build32\Code\JavaWrappers\csharp_
wrapper\RDKit2DotNet.csproj]
1>C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(3713,5): error MSB3030: Could not copy th
e file "D:\Desktop\Build\rdkit-csharp\build32\Code\JavaWrappers\csharp_wrapper\RDKFuncs.dll" because it was not
found. [D:\Desktop\Build\rdkit-csharp\build32\Code\JavaWrappers\csharp_wrapper\RDKit2DotNet.csproj]
1>Done Building Project "D:\Desktop\Build\rdkit-csharp\build32\Code\JavaWrappers\csharp_wrapper\RDKit2DotNet.cspro
j" (Build target(s)) -- FAILED.
Build FAILED.
"D:\Desktop\Build\rdkit-csharp\build32\Code\JavaWrappers\csharp_wrapper\RDKit2DotNet.csproj" (Build target) (1)
->
(CoreCompile target) ->
CSC : warning CS2008: No source files specified [D:\Desktop\Build\rdkit-csharp\build32\Code\JavaWrappers\cshar
p_wrapper\RDKit2DotNet.csproj]
"D:\Desktop\Build\rdkit-csharp\build32\Code\JavaWrappers\csharp_wrapper\RDKit2DotNet.csproj" (Build target) (1)
->
(_CopyOutOfDateSourceItemsToOutputDirectoryAlways target) ->
C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(3713,5): error MSB3030: Could not copy
the file "D:\Desktop\Build\rdkit-csharp\build32\Code\JavaWrappers\csharp_wrapper\RDKFuncs.dll" because it was no
t found. [D:\Desktop\Build\rdkit-csharp\build32\Code\JavaWrappers\csharp_wrapper\RDKit2DotNet.csproj]
1 Warning(s)**
Never did manage manually compile the RDKit DotNet Wrapper.
However I did find a NuGet package for an old version that did what I need it to:
https://www.nuget.org/packages/RDKit2DotNet/2017.9.1-alpha1
Install-Package RDKit2DotNet -Version 2017.9.1-alpha1
Update
There is now a newer version which works perfectly:
https://www.nuget.org/packages/RDKit.DotNetWrap/
Install-Package RDKit.DotNetWrap -Version 0.2019033.1
I am using Visual Studio 2017 and I want to add a post-build command. when I go to 'Macros' window I see the correct path coresponging to $(ProjectDir) variable. So I added the command:
$(ProjectDir)ClientApp\npm run build
but when I execute build I get the following error:
The command 'ClientApp\npm run build'exited with code 3.
I change MSBuild verbose to Diagnose and in the Output window I saw:
1>Target "PostBuildEvent" in file "C:\Program Files (x86)\Microsoft
Visual
Studio\2017\Community\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets":
1> Using "Exec" task from assembly "Microsoft.Build.Tasks.Core,
Version=15.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a".
1> Task "Exec" 1> Task
Parameter:WorkingDirectory=bin\Debug\netcoreapp1.1\ 1> Task
Parameter:Command=ClientApp\npm run build 1> ClientApp\npm run
build 1> The system cannot find the path specified. 1>
C:\Program Files (x86)\Microsoft Visual
Studio\2017\Community\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets(4933,5):
error MSB3073: The command "ClientApp\npm run build" exited with code
3. 1> Done executing task "Exec" -- FAILED.
In the targets file I got these lines:
<Target
Name="PostBuildEvent"
Condition="'$(PostBuildEvent)' != '' and ('$(RunPostBuildEvent)' != 'OnOutputUpdated' or '$(_AssemblyTimestampBeforeCompile)' != '$(_AssemblyTimestampAfterCompile)')"
DependsOnTargets="$(PostBuildEventDependsOn)">
<Exec WorkingDirectory="$(OutDir)" Command="$(PostBuildEvent)" />
</Target>
Can I change the working dir from $(OutDir) to $(ProjectDir) and how?
Any ideas where I am mistaken?
NB - I added the command in a BAT file, just to test but the result was the same
Try $(MSBuildProjectDirectory) instead
The problem could affect other VS variable as well.
The universal solution is described here.
I have followed the installation instructions found here: https://azure.microsoft.com/en-us/documentation/articles/vs-azure-tools-docker-edit-and-refresh/
and made an empty ASP.Net hello world project. I keep getting this error when I try to build my project:
Error MSB3073 The command "powershell -ExecutionPolicy RemoteSigned .\Docker\DockerTask.ps1 -Build -Environment Debug -Machine 'default'" exited with code 1. HelloWorld C:\dev\HelloWorld\src\HelloWorld\Properties\Docker.targets 37
Upon further digging I get this error:
1>------ Build started: Project: HelloWorld, Configuration: Debug Any CPU ------
1>
1> Build succeeded.
1> 0 Warning(s).
1> 0 Error(s).
1>
1> Time elapsed 00:00:00.0958314
1>
1> .\Docker\DockerTask.ps1 : The term '.\Docker\DockerTask.ps1' is not recognized as the name of a cmdlet, function,
1> script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is
1> correct and try again.
1> At line:1 char:1
1> + .\Docker\DockerTask.ps1 -Build -Environment Debug -Machine 'default'
1> + ~~~~~~~~~~~~~~~~~~~~~~~
1> + CategoryInfo : ObjectNotFound: (.\Docker\DockerTask.ps1:String) [], CommandNotFoundException
1> + FullyQualifiedErrorId : CommandNotFoundException
1>
1>C:\dev\HelloWorld\src\HelloWorld\Properties\Docker.targets(37,5): error MSB3073: The command "powershell -ExecutionPolicy RemoteSigned .\Docker\DockerTask.ps1 -Build -Environment Debug -Machine 'default'" exited with code 1.
========== Build: 0 succeeded or up-to-date, 1 failed, 0 skipped ==========
I am using Visual Studios 2015 on Windows 10 64bit.
The problem was my working directory was set differently than the default settings. By using the get-location command I was able to figure out where the working directory was and give it the relative path from that directory.
HelloWorld\src\HelloWorld\Docker\DockerTask.ps1
Rightly pointed out by SirJackovich.
The issue was due to a mis-pointed folder path given to msbuild.
To check out what path to modify, follow these steps:
In Properties\Docker.targets,
a. Temporarily change DockerBuildCommand to <DockerBuildCommand>powershell get-location</DockerBuildCommand>.
b. Temporarily change DockerCleanCommand to <DockerCleanCommand>powershell get-location</DockerCleanCommand>.
c. Run build having Docker build target selected (instead of 'IIS Express').
d. From the trace output in the Output window, it will print the folder which is the root for execution. For example, c:\folder1 is the root execution folder for powershell.
e. Lets say DockerTask.ps1 is located in c:\folder1\MyApp\src\App1\DockerTask.ps1. Modify the DockerBuildCommand command within Properties\Docker.targets to point to MyApp\src\App1\DockerTask.ps1. Also Modify the DockerCleanCommand command to point to MyApp\src\App1\DockerTask.ps1.
powershell -ExecutionPolicy RemoteSigned MyApp\src\App1\DockerTask.ps1.ps1 -Build -Environment $(Configuration) -Machine '$(DockerMachineName)' -ClrDebugVersion VS2015U2
powershell -ExecutionPolicy RemoteSigned MyApp\src\App1\DockerTask.ps1 -Clean -Environment $(Configuration) -Machine '$(DockerMachineName)'
f. Rebuild the solution.
This will deploy the image to the default docker environment within docker-machine.
I am compile a sample C# .NET project using build.cmd file. The content of the build.cmd is as bellow.
build.cmd
#echo off
setlocal
set devenv="c:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\devenv.com"
del *.log >nul
%devenv% WindowsFormsApplication3.sln /rebuild "Release" /out WindowsFormsApplication3.log
if ERRORLEVEL 1 GOTO failed
findstr /C:"========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========" WindowsFormsApplication3.log >nul
if ERRORLEVEL 1 GOTO failed
echo *** BUILD SUCCESSFUL ***
pause
goto :EOF
:failed
echo.
echo.
echo *** BUILD FAILED ***
pause
Project compiles properly. But when i opened the log file it hassome error
WindowsFormsApplication3.log
1>------ Rebuild All started: Project: WindowsFormsApplication3, Configuration: Release Any CPU ------
Package 'Code Analysis Package' failed to load.
1> WindowsFormsApplication3 -> E:\Bin\junk\WindowsFormsApplication3\WindowsFormsApplication3\bin\Release\WindowsFormsApplication3.exe
========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========
I don't why i am getting this error (Package 'Code Analysis Package' failed to load) in log file.
I searched online but did not get any help.
how to solve this problem?
Note: WindowsFormsApplication3 is a sample project. i Opened VS2015 and New Project -> Visual C# -> Windows Form Application. I did not change any thing in the project.
Give Microsoft a chance to analyze and fix the problem.
I created a connect issue because the problem occurs on two PCs that both have vanilla VS 2015 installations.
https://connect.microsoft.com/VisualStudio/feedback/details/2423616/package-code-analysis-package-failed-to-load
Within the next few weeks, a guy from Microsoft will probably comment on that. You can followup there.
I'm trying to develop a Notepad++ plugin using a nppPlugin.netV0.6 template.
Downloaded from http://sourceforge.net/projects/sourcecookifier/files/other%20plugins/NppPlugin.NET.v0.6.zip/download
I got a build error [SDK path is empty.]
The same template is working in other system (XP also).
Can anyone give me an resolution for this issue?
The build process calls program ildasm.exe. The directory for that program may not have been added to the PATH environment variable. When I installed Visual Studio 2012 Express installer the directory was not added so I added it to the PATH and the build succeeded.
I tracked the problem down by increasing the amount of logging output written by the build process. (Via Tools => Options => Projects and Solutions => Build and run => MS Build ... verbosity.)
Not sure whether your error is identical. Before adding the directory to the PATH the errors below were generated:
1>------ Rebuild All started: Project: NppManagedPluginDemo.VS2010, Configuration: Debug Any CPU ------
1> NppManagedPluginDemo.VS2010 -> C:\Adrian\VS\NppPlugin.NET.v0.5\Demo Plugin\NppManagedPluginDemo\bin\Debug\Demo.dll
1> ILDasm: calling 'ildasm.exe' with /quoteallnames /unicode /nobar /linenum "/out:C:\Users\Adrian_2\AppData\Local\Temp\tmpAB1F\Demo.il" "C:\Adrian\VS\NppPlugin.NET.v0.5\Demo Plugin\NppManagedPluginDemo\bin\Debug\Demo.dll"
1>C:\Adrian\VS\NppPlugin.NET.v0.5\Demo Plugin\NppManagedPluginDemo\DllExport\NppPlugin.DllExport.targets(8,5): error : The system cannot find the file specified
There are several versions of ildasm.exe in sub directories of c:\Program Files (x86)\Microsoft SDKs\Windows\ of my current computer.