Opencv installation problems - opencv

I am trying to follow a guide to install Opencv however I am having problems.
I am following this guide:
https://www.pyimagesearch.com/2016/12/19/install-opencv-3-on-macos-with-homebrew-the-easy-way/
However there is an addendum when it reaches this point:
Update — 15 May 2017:
Which then sends you to this page:
This Page
As stated in this guide I installed OpenCV3 using this command:
brew install opencv3 --with-contrib --with-python3
I then stepped back to the original install guide here
However when checking my site packages using this line:
ls -l /usr/local/opt/opencv3/lib/python3.7/site-packages/
The directory is not found.
I then tried to cd to this directory one step at a time and found in my 'opt' directory that some of the folders were names incorrectly or at least different than to be expected.
I have two opencv folders:
opencv
opencv#3
I also have three python folders:
python3
python#2
python#3
Should I rename the opencv and python folders? If so how?
Mac OS High Sierra

Related

Dot cannot be run in Pycharm with Sphinx and Graphviz

I am trying to create a class diagram with sphinx. For this I created a virtual environment in Pycharm and added this to conf.py:
extensions = ['sphinx.ext.autodoc','sphinx.ext.inheritance_diagram']
In my spamfilter.rst file I added the following lines:
Diagrams
=================
.. inheritance-diagram:: spamfilter
The output is not a diagram and looks like this.
The following warning is displayed:
WARNING: dot command 'dot' cannot be run (needed for graphviz output), check the graphviz_dot setting
When I look into the folder C:\Users\Name\PycharmProjects\documentation\venv\Lib\site-packages\graphviz, there is a dot.py file, so I do not understand what is wrong. A similar question for Mac OS has been asked here. I tried the solution but it seems like it only works for Mac, because when I paste export PATH=$PATH:~/opt/bin to the Pycharm Terminal, it tells me that the command export could not be found. Honestly I have problems understanding why sometimes you can just use packages and other times they cannot be found even when they are installed, I am self-taught and a beginner.
The "pip install graphviz" command installs a Python package that provides an interface to Graphviz (https://pypi.org/project/graphviz). This package is not required by Sphinx.
In order to create inheritance diagrams with Sphinx, the actual Graphviz toolkit (including dot.exe) must be installed. See https://www.graphviz.org.
If dot.exe is not in the PATH, you can use the graphviz_dot configuration option.
I had the same problem where rendering a C4 model with PlantUML didn't work in the IDE (PyCharm 2022.2.1 Pro) on a newer M1 MacOS Monterey. I had it working on a Big Sur intel Mac prior to the upgrade with no extra effort, so the chip change caused me to go down a lot of paths with Rosetta and so on that were all unsuccessful.
The error was:
Dot Executable: /opt/local/bin/dot
File does not exist
Cannot find Graphviz.
Graphviz was installed correctly, and dot was on my path, but it wasn't in /opt/local/bin/dot. Since it was in /opt/homebrew/bin/dot, all I needed to do was link the actual file with the path it was searching for:
cd /opt
sudo ln -s homebrew local
et voilà, PyCharm is now correctly rendering the puml in the IDE.

Error: yq#3 has been disabled because it is not maintained upstream! How to install a disabled brew Formulae?

I'm trying to install yq#3 on my Mac running brew install yq#3 and I get the error:
Error: yq#3 has been disabled because it is not maintained upstream!
I see that it's there on their website at https://formulae.brew.sh/formula/yq#3#default but it doesn't seem to be supported anymore.
I still need to install it since our projects at work are using this specific version.
The only way that I'm thinking about is downloading the source code, building it myself, and adding it to the path but I'm thinking that there might be a simpler solution.
Any suggestion?
Thanks!
From yq github, you can install a binary by running:
wget https://github.com/mikefarah/yq/releases/download/3.4.1/yq_darwin_amd64 -O /usr/local/bin/yq &&\
chmod +x /usr/local/bin/yq
3.4.1 is the latest 3 version, darwin_amd64 is the Mac package (don't worry about having an Intel machine and installing the package that says AMD, the name comes from something about AMD invented the 64-bit instruction set).

Installing Wine on Mac OS Catalina. Error: No available formula with the name "wine"

I'm trying to install Wine on my Mac via Brew. I'm using Catalina and just updated brew, installed XQuartz and have Xcode installed. When I type the command "Brew install wine" it returns the following:
Error: No available formula with the name "wine"
==> Searching for a previously deleted formula (in the last month)...
Warning: homebrew/core is shallow clone. To get complete history run:
git -C "$(brew --repo homebrew/core)" fetch --unshallow
wine was deleted from homebrew/core in commit 82bd38bc:
wine: delete
To show the formula before removal run:
git -C "$(brew --repo homebrew/core)" show 82bd38bc^:Formula/wine.rb
If you still use this formula consider creating your own tap:
https://docs.brew.sh/How-to-Create-and-Maintain-a-Tap
I'm following this tutorial: https://www.davidbaumgold.com/tutorials/wine-mac/
When I run Brew doctor I get the following:
Please note that these warnings are just used to help the Homebrew maintainers
with debugging if you file an issue. If everything you use Homebrew for is
working fine: please don't worry or file an issue; just ignore this. Thanks!
Warning: "config" scripts exist outside your system or Homebrew directories.
`./configure` scripts often look for *-config scripts to determine if
software packages are installed, and which additional flags to use when
compiling and linking.
Having additional scripts in your path can confuse software installed via
Homebrew if the config script overrides a system or Homebrew-provided
script of the same name. We found the following "config" scripts:
/Library/Frameworks/Python.framework/Versions/3.7/bin/python3.7-config
/Library/Frameworks/Python.framework/Versions/3.7/bin/python3.7m-config
/Library/Frameworks/Python.framework/Versions/3.7/bin/python3-config
Warning: Unbrewed dylibs were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.
Unexpected dylibs:
/usr/local/lib/libtcl8.6.dylib
/usr/local/lib/libtk8.6.dylib
Warning: Unbrewed header files were found in /usr/local/include.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.
Unexpected header files:
/usr/local/include/fakemysql.h
/usr/local/include/fakepq.h
/usr/local/include/fakesql.h
/usr/local/include/itcl.h
/usr/local/include/itcl2TclOO.h
/usr/local/include/itclDecls.h
/usr/local/include/itclInt.h
/usr/local/include/itclIntDecls.h
/usr/local/include/itclMigrate2TclCore.h
/usr/local/include/itclTclIntStubsFcn.h
/usr/local/include/mysqlStubs.h
/usr/local/include/odbcStubs.h
/usr/local/include/pqStubs.h
/usr/local/include/tcl.h
/usr/local/include/tclDecls.h
/usr/local/include/tclOO.h
/usr/local/include/tclOODecls.h
/usr/local/include/tclPlatDecls.h
/usr/local/include/tclThread.h
/usr/local/include/tclTomMath.h
/usr/local/include/tclTomMathDecls.h
/usr/local/include/tdbc.h
/usr/local/include/tdbcDecls.h
/usr/local/include/tdbcInt.h
/usr/local/include/tk.h
/usr/local/include/tkDecls.h
/usr/local/include/tkPlatDecls.h
Warning: Unbrewed .pc files were found in /usr/local/lib/pkgconfig.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.
Unexpected .pc files:
/usr/local/lib/pkgconfig/tcl.pc
/usr/local/lib/pkgconfig/tk.pc
Warning: Unbrewed static libraries were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.
Unexpected static libraries:
/usr/local/lib/libtclstub8.6.a
/usr/local/lib/libtkstub8.6.a
I'm not sure these warnings has something to do with it.
Thanks in advance!
I was able to build Wine 64 bit from source on macOS Catalina and successfully run Notepad++ 64 bit on it.
My steps were more or less something like that:
Download Wine 4.20 from https://dl.winehq.org/wine/source/4.x/wine-4.20.tar.xz
Extract it
In terminal go to extracted directory
Run: ./configure --enable-win64
It showed that it cannot find some library (I do not remember what exactly) so I installed it with macports (sudo port install name_of_missing_package reported by ./configure)
After I was able to run ./configure --enable-win64 succesfully without errors in terminal run: make
It compiled after more than 30 minutes.
I run it with: ./wine start
It opened windows console and here I was able to cd to Notepad++ 64 bit directory (downloaded from https://notepad-plus-plus.org/repository/7.x/7.0/npp.7.bin.x64.zip note that newest version did not work and throwed some errors about some dll's)
I typed notepad++ to run exe file
It showed some errors about freetype fonts so I installed them with macports and I had to copy them from /opt/X11/lib to /usr/local/lib before wine detected them
After fixing freetype fonts problem I was able to run notepad++
Also you might want to run: sudo spctl --master-disable to disable gatekeeper if you will see some system alerts about loading app from unknown developer.
Also note that instead of ./wine start you can run ./wine explorer for graphical file manager instead of console
Those steps might not be exactly precise, as I'm not sure if I did not miss something but hope it will help someone.
Also note that obviously wine on macOS Catalina will be able to run only some 64 bit windows apps and all 32 bit windows app will not work. I also tested it with IrfanView 64 bit (https://www.fosshub.com/IrfanView.html?dwl=iview453_x64_setup.exe) and it also works fine.
In case you wanted to get wine working for purpose of running 32 bit games then unfortunately it will not work with wine but you can try with virtualbox. You can check https://www.youtube.com/watch?v=3AO8dF0vviQ for some performance improvements tips.
Wine hast been removed from homebrew due to the incompatibility to Macos Catalina
https://discourse.brew.sh/t/issue-with-wine/6188/3
Try using wine64 to run your .exe files after installing wine. The manuals and references don't seem to mention this explicitly.
More Info
I followed the guidance in the wine manual to install using home-brew. After install, I got an error when trying to test the installation like it says in the quickstart.
Install wine-stable using homebrew
brew tap homebrew/cask-versions
brew install --cask --no-quarantine wine-stable
After install, test by opening notepad
wine notepad
zsh: bad CPU type in executable: wine
While uninstalling wine, I noticed one of the linked libraries was called wine64. I immediately reinstalled and tried again using wine64 as the call, as I am using wine on an M1 Mac. This was successful!
You can also use winehelp to get access to more commands that will work with 64bit processor.
Based on https://github.com/Homebrew/homebrew-core/pull/46556#issuecomment-559938873 you can do brew cask install wine-stable on newer version of OS X. And works with recent versions of homebrew since the source version was moved :(
How to install wine on Mac OS Catalina with brew
install homebrew with
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
install xquartz to install wine using brew
brew cask install xquartz
install wine using brew
brew install homebrew/cask-versions/wine-devel
run wine and check the version
wine64 --version
As of Wine 5.0 there is no 32bit support on mac in the official version, but you are able to achieve it via the
Unofficial Wineskin Winery
You can download it from github releases here. And then create a Wineskin with WS11WineCX[64/32]bit19.0.[0/1]. All WS11 versions support Catalina. To use it you also need to turn off the no32exec boot argument. You theoretically can do it by typing:
sudo nvram boot-args="no32exec=0"
into the Terminal while you're logged in but it didn't work out for me, so if you'll have the same problem, reboot into the Recovery mode, in the menubar pick Utilities -> Terminal and type just:
nvram boot-args="no32exec=0"
(without sudo).
Example
To be more exact, to install eg. Steam 32bit, you would:
Install the Unofficiall Wineskin Winery from the provided link
Turn on the 32bit execution boot argument by going into Recovery Mode and entering nvram boot-args="no32exec=0" into the terminal
Open Wineskin, click the '+' sign and scroll down to find the WS11WineCX64bit19.0.1 (the newest version with 64 and 32 bit support, at the time of writing)
Click update/install under the Wrapper Version.
Click Create New Blank Wrapper, name it and click through installation of mono and gecko.
Launch the Wrapper App from Finder. Click Install Software, choose setup executable, and proceed through installation. Then pick the executable from a menu. (In case of steam, Steam.exe)
Note: If you get the "No windows app to open the file"(Like I did) error, click advanced -> configuration and set the Windows EXE to the path to the installer. Then find the place that it has installed in and set that as Windows EXE. Then you can run by clicking Test Run.
Enjoy your windows app, as an .app file!
Hope I helped!

install MongoDB C++ Driver problem in ubuntu 16.04

I want to install MongoDB C++ Driver, so first is mongocxx
I follow this installation:
http://mongocxx.org/mongocxx-v3/installation/
but I can not pass step 4
when I run this in mongo-cxx-driver/build
sudo cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local ..
it shows
-- Auto-configuring bsoncxx to use MNMLSTC for polyfills since C++17 is inactive
CMake Error at src/mongocxx/CMakeLists.txt:37 (find_package):
By not providing "Findlibmongoc-1.0.cmake" in CMAKE_MODULE_PATH this
project has asked CMake to find a package configuration file provided by
"libmongoc-1.0", but CMake did not find one.
Could not find a package configuration file provided by "libmongoc-1.0"
(requested version 1.13.0) with any of the following names:
[![enter image description here][1]][1]
libmongoc-1.0Config.cmake
libmongoc-1.0-config.cmake
Add the installation prefix of "libmongoc-1.0" to CMAKE_PREFIX_PATH or set
"libmongoc-1.0_DIR" to a directory containing one of the above files. If
"libmongoc-1.0" provides a separate development package or SDK, be sure it
has been installed.
second question,
Step 2: Choose a C++17 polyfill how can I set MNMLSTC/core?
does anyone can help me,I already trap here for a long time ?
my env:
mongo-c-driver 1.15.1
libmongoc-1.0
mongocxx-3.4.x
Cmake is complaining about not finding a package configuration file (xxx.cmake), probably because you didn't build libmongoc/libbson.
I've tried to reproduce your issue and hit the same problem when I only installed them (apt-get install), so my suggestion is that you get the sources and build them as described at: http://mongoc.org/libmongoc/current/installing.html
Here's the list of commands (with the latest version of mongo-c-driver=1.15.1) which I just tried and worked fine:
wget https://github.com/mongodb/mongo-c-driver/releases/download/1.15.1/mongo-c-driver-1.15.1.tar.gz
tar xzf mongo-c-driver-1.15.1.tar.gz
cd mongo-c-driver-1.15.1
mkdir cmake-build
cd cmake-build
cmake -DENABLE_AUTOMATIC_INIT_AND_CLEANUP=OFF ..
make
sudo make install
At this point you can go back into mongocxx/build and run again the command you were stuck at:
cd ../../mongo-cxx-driver/build
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local ..

Apt-get install package for libmapscript-ruby1.8 not behaving as anticipated

TL;DR: How can I get the right package for libmapscript-ruby1.8 on my system?
Context:
We have found an open source Rails 2.3 app that solves an internal tool problem.
https://github.com/timwaters/mapwarper
Additional instructions
https://github.com/l34marr/mapwarper/blob/master/README#L125
I've some experience with Rails but am just learning about the Ubuntu eco-system and apt-get.
Problem:
The perceived problem is that one of the external libraries (mapscript) is not functioning.
Further detail:
The perceived source of the problem is that apt-get install libmapscript-ruby1.8 does not seem to load a ruby1.8 version of mapscript. Instead it loads to /usr/lib/ruby/vendor_ruby/1.9.1/x86_64-linux/mapscript.so via dependencies of libmapscript-ruby1.8
So when the Rails app links to the installed mapscript.so, it breaks, since the syntax is presumably different between mapscript.so build for 1.8.7 and 1.9.1.
Example error (note 1.9.1 version of mapscript.so is copied into 1.8.7 folder here)
TypeError (wrong argument type swig_runtime_data (expected Struct)):
/home/ubuntu/.rvm/rubies/ruby-1.8.7-p374/lib/ruby/site_ruby/1.8/x86_64-linux/mapscript.so
Contact with the application creator has been largely fruitless so far, since they have not encountered this specific issue.
There is a rubygem but it seems to also be for 1.9.1
https://github.com/sourcepole/ruby_mapscript
Is there some apt-get magic that I am missing? I've just read that something called backports exists but don't know if that is a solution.
I know it is an old threat, but in case someone else got this problem, I solved the problem like this:
(I used this github page: https://github.com/normanb/mapserver/tree/master/mapserver/mapscript)
Install old libgif
1.) apt install unzip libgdal-dev swig libproj-dev proj-data proj-bin
2.) wget "http://launchpadlibrarian.net/90361644/libgif4_4.1.6-9ubuntu1_amd64.deb"
3.) sudo dpkg -i libgif4_4.1.6-9ubuntu1_amd64.deb
4.) wget "http://security.ubuntu.com/ubuntu/pool/main/g/giflib/libgif-dev_4.1.6-9ubuntu1_amd64.deb"
5.) sudo dpkg -i libgif-dev_4.1.6-9ubuntu1_amd64.deb
Install old GD
6.) wget "www.boutell.com/gd/http/gd-2.0.33.tar.gz"
7.) unzip
8.) go to folder
9.) ./configure
10.) make
11.) make install
Install webserver
12.) Download zip from https://github.com/normanb/mapserver/
13.) unzip mapserver-master.zip
14.) Goto folder mapserver-master/mapserver/
15.) ./configure --with-wmsclient --with-proj --with-gdal --with-postgis (choose the options you need for your mapscript)
16.) make
For ruby mapscript: (for others chech out https://github.com/normanb/mapserver/tree/master/mapserver/mapscript)
16.) ruby extconf.rb
17.) make
18.) make install
Please note that there is a bug in set filter and you need to comment the filter like so "\"id = 123\"" (https://github.com/mapserver/mapserver/issues/3983)
Ultimately, it appears that the packages are (for my intent and purposes) broken.
Paired with a Debian guru, who basically installed Mapserver on the system in order to compile and generate the correct mapscript.so
He recommended I get in touch with the various package maintainers and outline the problems that I encountered.

Resources