In my CN1 project I am adding one .aar file that is having a library with .so file.
It was properly working upto last friday 19 Feb 2016. But now today on Monday 22nd Feb without changing anything I sent a build and it came with lesser sized APK.
Then I compared friday's apk and today's apk and I found that .so files are missing in newer apk that was inherited from .aar to apk's libs directory.
Then I tried to build another project and integrated .aar from scratch but in that project also there was no .so files in lib.
I am wondering that anything is changed on Codename One build server side !?
Thanks.
Related
I'm having trouble using Point Cloud Library with Microsoft Visual Studio 2017.
I have installed [PCL-1.8.1-AllInOne-msvc2017-win64.exe] and I've followed the steps mentioned
here. to link it to my Visual Studio 2017 project.
My problem is that Visual Studio is not finding the header nor the source files of the library I need.
The error I'm getting is as follows:
[fatal error C1083: Cannot open include file: 'pcl/io/pcd_io.h': No such file or directory]
To be more precise about my problem, I need to include three PCL header files in order to run thisIterative Closest Point Tutorial
I've followed the following steps to include the PCL into my project:
Added the include directories to my project at the Project Properties/Configuration Properties/VC++ Directories/Include Directories field - here I specified the path to my PCL/include directory and to all 3rd party include directories (PCL/3rdParty)
Added the library directories on the same settings page (Library Directories field) - hereI specified the path to my PCL/lib directory and to all non-header-only 3rd party libs (Boost, Flann, VTK)
Chose the libs to be used in the linker. In Project Properties/Configuration Properties/Linker/Input/Additional Dependencies field. I added all the libs required. As I'm trying to run it in debug mode for now, I've picked the "_debug.lib" library files.
Finally, I've added the PCL/bin folder to my system path variable.
Does anyone know if I'm missing something configuration-wise?
I've seen several old posts about incompatibility between older Point Cloud Libraries and older versions of Visual Studio. As far as I understood, the new versions are supposed to work well together, but it's not the case for me.
Installing pcl is tough because there are dozens of dependencies used along with pcl software. But with with vcpkg,a command line package manager, the installation becomes just like a one liner command.
Use Microsoft vcpkg to build a static or dynamic library for your project automatically. All the dependencies like boost,tiff,openssl,flann,szip,etc will be downloaded and installed by itself. After installing vcpkg type the following on Powershell.
.\vcpkg install pcl:x64-windows-static
The link you referenced is 3-4 years old. At the time, any binary build of PCL for Visual Studio 2012 or later was not provided, and thus. PCL needed to be built with target VS. And every include/library directory of PCL and any related library have to be manually added to setup the IDE. Since PCL is a large-scale collection of libraries, this made it difficult for its users to setup VS.
Now early 2018, binary builds of PCL for VS 2015/2017 and more automatic way to setup VS (e.g., adding library/include directories) using CMake are provided. Thus, installing PCL and creating a VS project using PCL does not take more than 10 minutes. I think you'd better follow the recommended way rather than setting VS by yourself.
the previous answer use vcpkg is good,but is better to use:
.\vcpkg install pcl:x64-windows
It can let you have fewer problems.
A small note for anyone who has issues with the install listed above, occasionally an install will get corrupted and not work. I got:
LINK : fatal error LNK1201
on a build, and the solution for that is find the downloaded item. This will be located in the vcpkg/downloads/ directory. Delete the item that was having issues and try the install again.
I have a standard windows forms application that is being deployed using the VS2017 setup project. When opening the setup project using the "File System", I added to the application folder the following:
Primary output from the win forms app.
The EPPlus library's dll.
Some excel files.
The setup project gives the output .msi package just fine. The problem is, when I run the .msi output after building the setup project (of course after building the source project) and run the application, I do not see my updates, even the files on C:\Program Files .... directory are not modified. I tried changing the product code and the increasing the version and it does not work. My questions are:
Besides removing and installing the program again, is there anyway to make the installer package actually updating the software's installation?
How to avoid the problem in #1 no matter how much I update the software?
What is the cause and how to avoid this error "Another version of this product is already installed"? I'm not sure of what I did for it to pop up.
If I want some part of the source code to be in a separate dll, is it as simple as adding a class library project and adding its output to the setup project?
Thank you very much.
The way you do the upgrade is to use the RemovePreviousVersions project setting. The steps are:
Increment the setup project's version and accept the changes, this will include a change of ProductCode.
Make sure that RemovePreviousVersions is set true.
The UpgradeCode (setup project properties) needs to be the same so don't change it.
Increment the file versions of the binaries that need updating (that's the standard rule about updating versioned binaries).
The resulting MSI will do a major upgrade (in Windows Installer terminology) and upgrade the older version, replacing it with your new product MSI. Note that an upgrade will work only with the same context of install. An Everyone will not upgrade a Just me, so that will result in two entries in Programs and Features. Doing the install creating a verbose log and searching foe FindRelatedProducts entries will tell you if it found the upgrade or not. msiexec /I [path to msi file] /l*vx [path to a text log file]
There's a longer explanation here:
https://www.red-gate.com/simple-talk/dotnet/visual-studio/updates-to-setup-projects/?_ga=2.138201520.1662048302.1514485579-1682631157.1514485579
which is old but relevant. and doesn't mention the requirement to update binary file versions (it wasn't needed with early VS setup projects).
I'm not very C++ savvy yet and have been looking at creating a small project to get better used to the language and so on.
Since what I want to do involves lots of disk scanning and file things I decided to look at the Boost libraries, specifically the filesystem library.
I've been working though this guide:
http://www.boost.org/doc/libs/1_61_0/more/getting_started/windows.html
I'm using Microsoft tools including Visual Studio 2015 on Windows 10.
I downloaded boost in zip format and extracted to:
G:\C++\boost\boost_1_61_0
Then ran the described commands:
> bootstrap
> .\b2
> b2 --build-dir="G:\C++\boost-build" --build-type=complete msvc stage
When this last command completed the small report message at the bottom read:
...failed updating 224 targets...
...skipped 20 targets...
...updated 3804 targets...
I don't know if that signifies problems or not.
Everything seems to have worked so far up until the point where I started to try and consume the binaries (Step 6 in the guide).
I added the other lib directory described in step 6.1. Although the lib directory I have is inside the stage directory, not the boost root as described in the guide.
I added this to the "Additional Include Directories", so that string now looks like:
G:\C++\boost\boost_1_61_0;G:\C++\boost\boost_1_61_0\stage\lib
When recompiling, if I remove the first entry I get this error:
C1083 Cannot open include file: 'boost/regex.hpp': No such file or directory
When I compile with both paths set I get:
LNK1104 cannot open file 'libboost_regex-vc140-mt-1_61.lib'
I've confirmed that the file named is in the directory here:
G:\C++\boost\boost_1_61_0\stage\lib
Pretty confused right now. What have I done wrong here?
Is there a better guide to follow? This guide does seem talk about VS2003 and 2005.
Any advice would be great.
As the name states, "Additional Include Directories" are for the files that you want to #include, which in your case is the G:\C++\boost\boost_1_61_0 directory.
The linker won't search for the libraries in the "Additional Include Directories", because those are not meant to be used for libraries, and it so can't find the boost libraries.
The linker searches "Additional Library Directories" for the required libraries, so you should put the path to the libraries there, i.e. G:\C++\boost\boost_1_61_0\stage\lib.
The property is located in Linker -> General.
I'm trying to use curl from within my windows c++ app but keep running into problems.
I'm using visual studio 2013 on a windows 8.1 machine.
Here's what I've done so far:
Cloned the repo from github
Built the libcurl project which produced three files: libcurl.dll, libcurl_imp.lib and libcurl_imp.exp
In my app project I added the curl include directory to the Additional Include Directories
Added the libcurl_imp.lib to the Additional Dependencies
Built my project
When I run my executable it says:
the program can't start because libcurl.dll is missing from your computer
I found a few things on it, but they solved it by adding the libcurl dll along with the exe, which isn't what I'm looking for as I want my executable to contain the libcurl so that it will work on machines without the need to have the dll.
Any ideas?
Thanks.
Edit
The 2nd step is done pretty much straight forward, I just right clicked on the project (libcurl) and chose buiild.
Due to the comments I've rebuilt it after changing the Configuration Type to Static library, so now it only produces one file: libcurl.dll which, as far as I know not a static library...
2nd edit
I wasted too much time on getting http functionality, and based on the info which I found thanks to a comment here (using libcurl without dll) I've decided to abandon this approach, and I found something which suits my needs perfectly and is simple to install/use: C++ REST SDK (codename "Casablanca")
Try to add libcurl.dll directory to PATH environment variable.
Today I came across a copy of SAIS that has been mouldering on my HD for some time, and found that it no longer works - PPC target! I downloaded the source, which is C++ that uses SDL to build a Windows binary. SDL should make it somewhat portable...
Under Xcode 5.1.1 I made a new Command Line Tool application and selected C++ as the language. Then I copied all the source over to the new project, along with the SDL2.framework that I downloaded.
Then I made a target for my machine. I went to my Build Phases and added SDL2.framework to the Link Binary With Libraries step, and added it to the Copy Files step as well. I then added the header folder inside the framework to my Header Search Path.
Did I miss anything here? Because when I build I get 'SDL.h' file not found. Yes, that file is in the framework.