HBadertscher / Matlab_BaslerCamDriver

A universal MATLAB driver for Basler cameras
MIT License
21 stars 5 forks source link

Trying and failing to install Boost #16

Closed Bram-de-Beer closed 8 years ago

Bram-de-Beer commented 8 years ago

Hi,

I'm trying to get your software to work, since it is exactly what I'm looking for. Unfortunately, I can't get the Boost to install properly. The installation instructions are basically so vague that I have no clue what to do after downloading it. The bootstrapper gives an error and the b2 file isn't even in the installation package (I'm assuming the bootstrapper should have created it)

Do you know of a detailed installation guide for Boost? I already looked for help using Google and the Boost website, but I couldn't find one.

The bootstrapper error: " 'cl' is not recognized as an internal or external command, operable program or batch file. " <-- I have no clue what that means or how to solve it.

HBadertscher commented 8 years ago

I think you are on the right way. The command cl (the Visual Studio compiler) is not on your PATH, which causes the bootstrap to fail and the b2 file isn't created. Visual Studio usually comes with a "Developer Command Prompt", which sets all the environmental settings and paths needed for compilation. You can usually find it in the Startmenu under Visual Studio -> Tools. On my computer it is called "Developer Command Prompt for VS2013". Try to open that, and rerun the bootstrap command. Now, bootstrap should work and create the b2 file. Then you can run that to install Boost.

If that still doesn't work, there is the possibility to install pre-compiled binaries. These are available from sourceforge and should work out-of-the-box. However I don't have any experience with those and I'm afraid I can't help you with them.

Bram-de-Beer commented 8 years ago

Thanks for your very quick reply. Unfortunately, the “Developer Command Prompt for VS2015” didn’t solve the problem. I ran bootstrap as “bootstrap.bat mingw”, which solved the cl problem, but gave me the same error for gcc. I’m now looking into the pre-compiled binaries and I’ll let you know when, if ever, I solve it.

From: Hannes Badertscher [mailto:notifications@github.com] Sent: donderdag 11 februari 2016 8:21 To: HBadertscher/Matlab_BaslerCamDriver Cc: Bram de Beer Subject: Re: [Matlab_BaslerCamDriver] Trying and failing to install Boost (#16)

I think you are on the right way. The command cl (the Visual Studio compiler) is not on your PATH, which causes the bootstrap to fail and the b2 file isn't created. Visual Studio usually comes with a "Developer Command Prompt", which sets all the environmental settings and paths needed for compilation. You can usually find it in the Startmenu under Visual Studio -> Tools. On my computer it is called "Developer Command Prompt for VS2013". Try to open that, and rerun the bootstrap command. Now, bootstrap should work and create the b2 file. Then you can run that to install Boost.

If that still doesn't work, there is the possibility to install pre-compiled binaries. These are available from sourceforgehttps://sourceforge.net/projects/boost/files/boost-binaries/ and should work out-of-the-box. However I don't have any experience with those and I'm afraid I can't help you with them.

— Reply to this email directly or view it on GitHubhttps://github.com/HBadertscher/Matlab_BaslerCamDriver/issues/16#issuecomment-182744953.


The information sent with this e-mail is exclusively intended for the addressee. If anyone has received this e-mail in error, the receiver is requested to indicate this to the sender and to destroy the e-mail completely without taking notice of the contents in any way or saving it. Publication, copying, distribution and/or disclosure of the contents to third parties are not permitted. NTS-Group is not liable for the correct and complete dispatch of the contents, nor for the prompt receipt of this e-mail. If this e-mail contains so-called computer viruses, NTS-Group is not liable for any damage occurring as a consequence.


Bram-de-Beer commented 8 years ago

I managed to get it to install now. The trick was to change the directory from C:\Program Files\Boost to C:\Boost. Once I did that, it actually installed. Only took me 6 hours to figure that out...

Anyway... now the mex on line 56 (make.m) gives an error (without message), which might have to do with the fact that you're calling getenv('BOOST_ROOT'),'stage\lib'), but there is no stage\lib directory in the Boost directory.

Have I still not installed it properly?

HBadertscher commented 8 years ago

Really, that did the trick? Good to know!

Uhm yes, I might document that a bit better: Please set an environment variable called BOOST_ROOT which points to your Boost installation. You can create this environment variable by going to Control Panel -> System and Security -> System -> Advanced system settings -> Advanced -> Environment Variables. There, create a new System variable called BOOST_ROOT, and let it point to C:\Boost\boost_whatever_version. Then it should work.

Bram-de-Beer commented 8 years ago

I already did that, since it’s in the Boost installation instructions.

My problem is that none of the directories have the stage/lib directory. There is a ‘libs’ directory, though…

From: Hannes Badertscher [mailto:notifications@github.com] Sent: donderdag 11 februari 2016 16:55 To: HBadertscher/Matlab_BaslerCamDriver Cc: Bram de Beer Subject: Re: [Matlab_BaslerCamDriver] Trying and failing to install Boost (#16)

Really, that did the trick? Good to know!

Uhm yes, I might document that a bit better: Please set an environment variable called BOOST_ROOT which points to your Boost installation. You can create this environment variable by going to Control Panel -> System and Security -> System -> Advanced system settings -> Advanced -> Environment Variables. There, create a new System variable called BOOST_ROOT, and let it point to C:\Boost\boost_whatever_version. Then it should work.

— Reply to this email directly or view it on GitHubhttps://github.com/HBadertscher/Matlab_BaslerCamDriver/issues/16#issuecomment-182929881.


The information sent with this e-mail is exclusively intended for the addressee. If anyone has received this e-mail in error, the receiver is requested to indicate this to the sender and to destroy the e-mail completely without taking notice of the contents in any way or saving it. Publication, copying, distribution and/or disclosure of the contents to third parties are not permitted. NTS-Group is not liable for the correct and complete dispatch of the contents, nor for the prompt receipt of this e-mail. If this e-mail contains so-called computer viruses, NTS-Group is not liable for any damage occurring as a consequence.


HBadertscher commented 8 years ago

To test that, I installed the precompiled boost_1_60_0-msvc-12.0-64.exe (as this matches my Visual Studio version). This created a folder lib64-msvc-12.0 in BOOST_ROOT. This folder contains the different libraries, i.e. *.lib and/or *.dll. Do you have such a folder and the corresponding files (only having *.lib is enough)? If yes, please try to replace 'stage\lib' on line 45 in make.m by this subfolder (in case of my test here: 'lib64-msvc-12.0').

Bram-de-Beer commented 8 years ago

It seems you located the problem. I don’t seem to have ANY .lib or .dll files in my BOOST_ROOT directory. I’m assuming something went wrong with the compile, then…? I’ll try to use the precompiled files now and add those to the directory.

From: Hannes Badertscher [mailto:notifications@github.com] Sent: donderdag 11 februari 2016 17:11 To: HBadertscher/Matlab_BaslerCamDriver Cc: Bram de Beer Subject: Re: [Matlab_BaslerCamDriver] Trying and failing to install Boost (#16)

To test that, I installed the precompiled boost_1_60_0-msvc-12.0-64.exe (as this matches my Visual Studio version). This created a folder lib64-msvc-12.0 in BOOST_ROOT. This folder contains the different libraries, i.e. .lib and/or .dll. Do you have such a folder and the corresponding files (only having *.lib is enough)? If yes, please try to replace 'stage\lib' on line 45 in make.m by this subfolder (in case of my test here: 'lib64-msvc-12.0').

— Reply to this email directly or view it on GitHubhttps://github.com/HBadertscher/Matlab_BaslerCamDriver/issues/16#issuecomment-182937634.


The information sent with this e-mail is exclusively intended for the addressee. If anyone has received this e-mail in error, the receiver is requested to indicate this to the sender and to destroy the e-mail completely without taking notice of the contents in any way or saving it. Publication, copying, distribution and/or disclosure of the contents to third parties are not permitted. NTS-Group is not liable for the correct and complete dispatch of the contents, nor for the prompt receipt of this e-mail. If this e-mail contains so-called computer viruses, NTS-Group is not liable for any damage occurring as a consequence.


HBadertscher commented 8 years ago

Okay, yes seems so... Did any error messages appear during the compilation? Though compilation may continue, there can be erros which cause Boost not to be built. It took me quite a while to set up the first time too... Probably using the precompiled binaries is a faster way. Still, my make.m won't work out-of-the-box.

When I find the time, I'll try to add a check which scans the BOOST_ROOT directory for the libs and gives meaningful error messages and/or installation instructions if they are missing.

Sorry for the troubles you are having, I hope at least it works now, and that the driver does the job.

Bram-de-Beer commented 8 years ago

So far so good. The precompiled binaries installed successfully and I adjusted the path. I also adjusted the path for the pylon library, which seemed to point to the wrong directory too.

Upon running, I got: => Creating Libraries Building with 'Microsoft Visual C++ 2015 Professional'. Error using mex cl : Command line error D8003 : missing source filename

So I tried with a different compiler: (added setenv('MW_MINGW64_LOC','C:/mingw') to the Matlab file) => Creating Libraries Building with 'MinGW64 Compiler (C++)'. Error using mex g++: fatal error: no input files compilation terminated.

Any hints on how to solve this latest error?

I really appreciate all your help on this one!

Bram-de-Beer commented 8 years ago

Well... just a final post, then:

I re-installed MinGW, added C:\MinGW\bin to my path variable, changed the Boost root directory and now it finally doesn't give explicit compiler errors any more.

It does, however, give me a new, blank, error:

make => Creating Libraries Building with 'MinGW64 Compiler (C++)'. Error using mex

Error in make (line 61) mex(flags{:},libraries{k,3},ipaths,lpaths,libraries{k,2}) % build

Since there is no actual error description, I can't really continu from here, which makes me very sad...

nlw0 commented 8 years ago

Trying to build, and stopping at the same line... R2015b with msvc 2013