Cocoapods - Invalid symlinks (Headers) prevents submission to App Store - macos

I'm getting following error when trying to submit osx application:
We have discovered one or more issues with your recent delivery for
"Planiro Tracker". To process your delivery, the following issues must
be corrected:
Invalid Symlink - Your package contains a symbolic link
'com.droidlabs.PlaniroTracker.pkg/Payload/PlaniroTracker.app/Contents/Frameworks/Alamofire.framework/Headers'
which resolves to a location
'com.droidlabs.PlaniroTracker.pkg/Payload/PlaniroTracker.app/Contents/Frameworks/Alamofire.framework/Versions/Current/Headers'
that does not exist or is outside of the package.
Invalid Symlink -
Your package contains a symbolic link
'com.droidlabs.PlaniroTracker.pkg/Payload/PlaniroTracker.app/Contents/Frameworks/PromiseKit.framework/Headers'
which resolves to a location
'com.droidlabs.PlaniroTracker.pkg/Payload/PlaniroTracker.app/Contents/Frameworks/PromiseKit.framework/Versions/Current/Headers'
that does not exist or is outside of the package.
I checked contents of the applications, and all frameworks installed by cocoapods contains invalid "Headers" symlink. Cocoapods version 0.36.4.
I added mkdir -p "${destination}/$1/Versions/A/Headers" to Pods-frameworks.sh as temporary workaround, but it's strange that dirs are not created (not sure where it should happen) and maybe I'm doing something wrong?

Delete the Header symlink and resubmit.
Worked for me.
Make sure that the folder "headers" is in the root of your framework folder
Make also sure that the binary is in the root folder.
example:

Related

Installation of VCPKG followed by any call to "vcpkg install" results in "Changing the working dir failed"

When I follow the steps in the VCPKG documentation page to install on Windows, the noted steps fail on the line .\bootstrap-vcpkg.bat.
Specifically, these are the steps I follow, exactly according to the instructions at the above link.
Run Powershell (not as administrator)
cd <parent_directory>
git clone https://github.com/Microsoft/vcpkg.git
cd .\vcpkg\
.\bootstrap-vcpkg.bat
.\vcpkg integrate install
All above steps (seem to) succeed, until the last (in red, below).
I see the following output:
(Note: the screenshot also shows an additional line at the end - in which I attempted to install a desired package for use in a project - which failed with the same error.)
I looked through the source code of vcpkg and found that the offending line of code looks like this (vcpkg.cpp):
Modifying the vcpkg.cpp source to display the missing path, rebuilding, and testing shows that the missing directory is:
<vcpkg>/installed/...
...But the installed directory does not exist in the vcpkg root directory.
Because I am following the basic installation instructions from the vcpkg documentation, I'm stumped as to what I am doing wrong, what is wrong in my setup, or what to do about it.
Can someone please explain why installation of VCPKG followed by any call to "vcpkg install" results in the error Changing the working dir failed?
I had mistakenly defined the VCPKG_ROOT environment variable to a directory that is a subdirectory of the root directory of the vcpkg project.
This is an easy mistake to make, as I describe below.
The vcpkg executable itself checks for the existence of the VCPKG_ROOT environment variable, and if present, uses its value to override the path to the root folder for the vcpkg project that is used internally by the running vcpkg binary.
I created an environment variable with the same name (VCPKG_ROOT) for a different purpose - so that my own downstream application could be provided the path to the include files for a library installed by vcpkg. It makes sense that I would choose the name VCPKG_ROOT, because in fact vcpkg, by default, installs libraries into a subdirectory of its own root directory.
Specifically:
If the root directory of the 'vcpkg' project is <vcpkg>...
...then by default the vcpkg executable installs libraries such that the include paths for the libraries that are installed are placed in <vcpkg>\installed\...\include\
(And other library files, such as binaries, are also placed in directories nested within <vcpkg>.)
The problem was that I defined VCPKG_ROOT to be the second bullet, not the first. So it's an easy mistake to make, given that the choice of name "VCPKG_ROOT" kind of makes sense in both scenarios!
I just suggested an improved error message via a pull request to the vcpkg project - if accepted, this might save some other poor soul the stress and lost time of tracking down this glitch.

About Hyperledger Fabric composer: error when execute cmd composer card list

I followed the hyperledger composer tutorial to create a admin card and it is already imported, but when I execute "composer card list" to check the cards it returned this error.
Error: Can't find end of central directory : is this a zip file ? If it is, see http://stuk.github.io/jszip/documentation/howto/read_zip.html
My OS is mac OS 12, and all the relevant environments are latest.
How should I handle this problem?
this is a bug with the underlying NodeJS readdir function, its list everything in the folder even the hidden files.in your case just go to the ./compser/cards folder in your home directory and delete the hidden files in that folder
This happened to us and We found out that by mistake we have created a file in ".composer/card" folder. Once we deleted that file, the issue got resolved.

How to install Pylucene locally without root access on a server?

recently I try to install pylucene on a server in my own home directory because I have no root priviledge.
Now I have successfully installed ant and JCC locally on CentOS under my own home directory. The directory of JCC is "/home/myname/.local/lib/python2.6/site-packages"
I have also successfully "make" under the pylucene directory, but when "make install" it shows that it tries to move some files into the directory " /usr/lib64/python2.6/site-packages/" which I have no permission to access it.
I do changed the Makefile several places as required.
In the comments it says:
PREFIX: where programs are normally installed on your system (Unix).
But there is no variable named as PREFIX
I changed
PREFIX_PYTHON=/usr
ANT=/home/myname/packages/apache-ant-1.9.7/bin/ant
PYTHON=$(PREFIX_PYTHON)/bin/python2.6
JCC=$(PYTHON) -m jcc.__main__
NUM_FILES=8
When I read the Makefile I do not see a environmental variable that controls the installing directory or I miss something ?
SOlved
Thank you guys. I have figured it out.
I just move the builded “lucene” folder directly to my local "site-packages" directory and it works.
INSTALL_OPT=--prefix <path>
The homebrew formula has an example of this.

zeroMQ: cannot open libzmq.so.4

I am trying to install the zeroMQ for my server(redhat 7). Here is what I did:
1) download the zeroMQ and unpack it.
2) navigate to the file where I put the zeroMQ and run the commands below:
./configure
make
make install
Now I can find two head files in /usr/local/include: zmq.h and zmq_utils.h and five files in /usr/local/lib: libzmq.a libzmq.la libzmq.so libzmq.so.4 libzmq.so.4.0.0.
Then I try to code like this:
#include <zmq.h>
...
void * context = zmq_init(1);
But I get this error message: undefined reference to `zmq_init'
I find that the include works well but it cant find 'zmq_init', so maybe it's the problem of lib files. But all of the lib files have been in /usr/local/lib, right?
What should I do?
Problem solved:
I got that error message because the lib files are in the directory: /usr/local/lib
What we need to do is to create a file named local-lib.conf under the directory /etc/ld.so.conf.d/ and write /usr/local/lib in it. The name of the file is not important but its extension must be .conf.
Then, we must navigate to /etc/ld.so.conf.d/ and type this command: sudo ldconfig
I tried the fix provided by #Yves above, but that didn't work out for me so here's another way for Debian/Git installations.
Alternative fix:
I have faced this issue on a Docker container which was occuring due to the libzmq/czmq which was installed by cloning the git repo.
The problem is that the shared libraries when installed using git are located in the /usr/local/lib folder instead of /usr/lib/ where usually, in my case a C/C++ program looks for shared library files.
I fixed it by copying all files from /usr/local/lib folder to/usr/lib/ using the command
$ sudo cp -R /usr/local/lib/* /usr/lib
This was for a RPi/ Ubuntu-16.04 docker, the command or location of the files may vary depending on your OS.

Developer/Tools/sdp: No such file or directory

I am working to make my application apple scriptable,for which i use the developer material in the link here
That tutorial take CircleView Application for example, and make it into an apple Scriptable application through some procedural steps.
While following that steps,after a new run script has been added in CircleView Application as said in the tutorial , i got error
Developer/Tools/sdp: No such file or directory
I don't know how to solve
I had an error that was complaining there was no /usr/bin/sdp
I found the file in /Applications/Xcode.app/Contents/Developer/usr/bin/sdp and fixed the error with:
cd /usr/bin
sudo ln -s "/Applications/Xcode.app/Contents/Developer/usr/bin/sdp"
Which created a symlink to where sdp was installed. I installed Xcode via the AppStore and so I'm not sure why this file / symlink was not created in the first place, but this fixed my problems.

Resources