digitalmars.D.ide - VD with Project references
- Prudence (29/29) Sep 15 2015 One problem I have with VD is that when I have multiple projects,
- Prudence (5/7) Sep 15 2015 Was going to say that I might have to export them, which is more
- Rainer Schuetze (13/40) Sep 16 2015 I can't really follow what you've been doing, but that's maybe because I...
One problem I have with VD is that when I have multiple projects, all using the same library I have to include it in each one. The changes are not synchronized and this becomes a mess. I've done the following. Suppose my Library is at C:\Library, my main project is at C:\Main 1. I made the secondary projects depend on the main project(project dependencies in VS). 2. I set the additional libraries to C:\Library and I've set the "Object Files" to C:\Main\Debug\main.obj (where the main.obj is the main project with the library in it, which compiles and exists) I've also set the "Library Files" to point to the library(C:\Library), but still get the following result: 3. The errors I get are about missing symbols: Debug\main.obj(Test) Error 42: Symbol Undefined _D6Coding11ObjectStore7__arrayZ Debug\main.obj(Test) Error 42: Symbol Undefined _D6Coding11ObjectStore12__ModuleInfoZ Building Debug\Test.exe failed! Any ideas? shouldn't main.obj contain the elements or, I guess I'd have to use 4. I've tried some of the other settings but nothing... (adding library path to sc.ini) 5. I don't mind compiling the library(maybe it should be in it's own project) for each project since it is small right now. But basically it's a no go until the problem gets solved in some way or another. It should be nice, if one could just add a reference to the main project like what is done with .NET
Sep 15 2015
shouldn't main.obj contain the elements or, I guess I'd have to useWas going to say that I might have to export them, which is more of a pain then just keeping the libraries consistent myself. (works fine until I add a file to the library, then I have to update all the projects) So, I'd like to avoid having to export anything.
Sep 15 2015
On 16.09.2015 04:09, Prudence wrote:One problem I have with VD is that when I have multiple projects, all using the same library I have to include it in each one. The changes are not synchronized and this becomes a mess. I've done the following. Suppose my Library is at C:\Library, my main project is at C:\Main 1. I made the secondary projects depend on the main project(project dependencies in VS). 2. I set the additional libraries to C:\Library and I've set the "Object Files" to C:\Main\Debug\main.obj (where the main.obj is the main project with the library in it, which compiles and exists) I've also set the "Library Files" to point to the library(C:\Library), but still get the following result: 3. The errors I get are about missing symbols: Debug\main.obj(Test) Error 42: Symbol Undefined _D6Coding11ObjectStore7__arrayZ Debug\main.obj(Test) Error 42: Symbol Undefined _D6Coding11ObjectStore12__ModuleInfoZ Building Debug\Test.exe failed! Any ideas? shouldn't main.obj contain the elements or, I guess I'd have to use 4. I've tried some of the other settings but nothing... (adding library path to sc.ini) 5. I don't mind compiling the library(maybe it should be in it's own project) for each project since it is small right now. But basically it's a no go until the problem gets solved in some way or another. It should be nice, if one could just add a reference to the main project like what is done with .NETI can't really follow what you've been doing, but that's maybe because I - if you have code shared between different projects, put it into a project that builds to a static library - an executable using the library needs a 'project dependency' to the library, but does not need to include/compile the files of the library itself. Visual D will automatically add the output file of the library project to the link command line for the executable - you'll probably need to import files from the library, so you have to add the library source folder to the "additional imports" option The last option could also be set automatically for existing project dependencies, that's something I wanted to add eventually.
Sep 16 2015