Comments (9)
I'm working on a version of caffe with proper dll exports.
https://github.com/dtmoodie/caffe
I can't get the test suite to run because of cuda linking issues, but so far it works correctly in my external applications.
from caffe.
Already reported in #45. Currently there is no way to workaround linking issue without modifying code but the one you described.
One option would be to add Caffe dll project to be used by external clients but that would require defining proper interface. Do you think this would be viable solution?
from caffe.
I thought about this too. It could be a solution, but it doesn't seem very clean either.
from caffe.
@danst18, why do you say that it would not be a clean solution? With dll proper interface can be defined (I would say just forward logic should be exposed since external clients have no interest in training part). Also, external clients would be freed from linking Caffe dependencies and would not be affected by changes in Caffe implementation.
Let me know your thinking.
from caffe.
Ok. I was thinking that it would be necessary to change the interface when Caffe changes, but this wouldn't be necessary actually, so I think it is a good solution π Sorry for the confusion.
from caffe.
@danst18 if the original issue is resolved, please close it.
from caffe.
@sasagalic-MSFT proposed a solution for this but as far as I know this has not been implemented yet, so the issue still persists
from caffe.
@dtmoodie other than DLL export is there anything else needed to export the symbols?
from caffe.
If I remember correctly, https://github.com/dtmoodie/caffe/blob/master/include/caffe/proto/caffe_pb.h is important to correctly export protobuf classes. Basically you can tell protobuf to add export decorations, but you need to actually define the export decorations somewhere. Thus I created caffe_pb.h which includes caffe.pb.h and changed everything to include caffe_pb.h instead of caffe.pb.h.
from caffe.
Related Issues (20)
- can not print caffe layers information fully
- compile error on caffe windows without GPU HOT 1
- Errow C2220: do not build the "obj" file (complile the source file :..\..\src\caffe\util\math_functions.cpp) HOT 1
- compile error with '.build_release/lib/libcaffe.so: undefined reference' HOT 1
- pycaffe build link error,how to solve it ? HOT 1
- can't find cuda_runtime. h
- Linux build error HOT 1
- 'gpu.dll' connot be found
- this link is not exist?
- Protobuf: Reading dangerously large protocol message
- Python stopped working when execute 'self.solver.step(1)' code in 'train.py' file. HOT 1
- cuDNN version problem
- Matcaffe Compiling Issues:
- Accessing .\windows HOT 1
- AttributeError: 'module' object has no attribute 'LabelMap'
- I cant create caffe.pb.h file HOT 2
- how to solve NuGet problem of OpenCV or glag except Uninstall and reinstall HOT 3
- Error C1083: Cannot open βcublas_v2.hβ: No such file or directory D:\caffe\caffe-master\include\caffe\util\device_alternate.hpp 34
- i cant build the libcaffe in vs2013 and it tells me the version of python is not compatible
- This repo is missing important files HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from caffe.