use vs2017 build perl - perl

When I build perl use microsoft vc2017, I got an error :
Running pm_to_blib for cpan/Module-Load-Conditional directly
Running pm_to_blib for cpan/Module-Loaded directly
Running pm_to_blib for cpan/NEXT directly
Running pm_to_blib for dist/Net-Ping directly
Running pm_to_blib for cpan/Params-Check directly
Running pm_to_blib for cpan/Perl-OSType directly
Running pm_to_blib for cpan/PerlIO-via-QuotedPrint directly
Can't copy p to scripts/p: No such file or directory at Makefile.PL line 26.
Unsuccessful Makefile.PL(cpan/Pod-Checker): code=512 at ..\make_ext.pl line
518.
NMAKE : fatal error U1077: “..\miniperl.exe”: 返回代码 (return code)“0x2”
Stop.
What can I do?

This seems to be a bug in the Windows SDK, see
Perl ticket #133666
VS forum setargv.obj is broken in the latest windows sdk
The Perl bug reporter confirmed that the bug went away after updating the SDK. Another alternative seems to be to switch from a CFG=DebugFull to a CFG=Debug build.

Related

Xcode 13.2 command PhaseScriptExecution failed with a nonzero exit code

While building my project, I get this error:
line 2: /usr/local/bin/carthage: No such file or directory. Command PhaseScriptExecution failed with a nonzero exit code
Tried so many methods to resolve this issue, including switching Xcode versions.
It's worth to mention that it only occurs on an M1 Mac device which I'm currently using, same project without changing any part of the configurations works on an Intel Mac.
The project is using Carthage, which is likely installed using Homebrew. On M1 Macs, Homebrew links its binaries into /opt/homebrew/bin while on Intel Macs, they are linked into /usr/local/bin.
This means that on an M1 Mac, Carthage is probably found at /opt/homebrew/bin/cartage.
Your build script should use something like $(which carthage) or simply carthage instead of relying on an absolute installation path.
I had a similar error. My issue was that I didn't have a ~/.bash_profile. Creating an empty file fixed the error

Trying to install SDL Perl on Windows 10, problems with "make" (and "dmake" and "gmake")

I am using Windows 10 and Strawberry Perl. I found this nice tutorial on building a 3D engine in Perl. Which requires SDL. For a couple of days I've been trying to install it, but it doesn't work. First I tried via CPAN, no success. No I am trying manually, but I am getting error messages when using "make". If I type "perl -V:make" it says I should use "dmake". If I do so, there's a dmake warning, telling me to use gmake instead. If I do that, there's the following message:
"to undefined at C:/Perl64/site/lib/ExtUtils/Install.pm line 1199. gmake: *** [Makefile:942: pm_to_blib] Error 2"
Any suggestions how to fix this? Or is there an easy (easier) way to install SDL?
It seems like the Perl SDL module uses SDL version 1.2.14, whereas the documentation says
The best course of action is to move to SDL 2.0 or later as quickly as
possible
So, I would recommend looking at the Python bindings PySDL2 instead. The following worked for me on Windows 10:
Downloaded Python 3.8 from here:
https://www.python.org/ftp/python/3.8.2/python-3.8.2-amd64.exe
Then added the following to the User enviroment variables for "Path" (NOTE: at the beginning, not at the end):
%USERPROFILE%\AppData\Local\Programs\Python\Python38
%USERPROFILE%\AppData\Local\Programs\Python\Python38\Scripts
Then, from the command prompt install pysdl2:
>pip install pysdl2
Collecting pysdl2
Downloading https://files.pythonhosted.org/packages/60/ba/ddb48261848874eeb3d54963edbf3c74fff86499746aeb23151f123953bb/PySDL2-0.9.7-py3-none-any.whl (541kB)
|████████████████████████████████| 542kB 2.2MB/s
Installing collected packages: pysdl2
Successfully installed pysdl2-0.9.7
>pip install pysdl2-dll
Collecting pysdl2-dll
Downloading https://files.pythonhosted.org/packages/01/37/f9aa5472fb85ce94507c69110916133ad29b650d2bf277de2cce37d7ad7d/pysdl2_dll-2.0.12-py2.py3-none-win_amd64.whl (2.5MB)
|████████████████████████████████| 2.5MB 3.2MB/s
Installing collected packages: pysdl2-dll
Successfully installed pysdl2-dll-2.0.12
Then, add a new User environment variable PYTHONPATH with value:
%USERPROFILE%\AppData\Local\Programs\Python\Python38\Lib\site-packages
Close the command prompt, and reopen a new one to update the environment variables. Then I created a test Python script:
import sys
import sdl2.ext
resource_dir=r'C:\Users\hakon\AppData\Local\Programs\Python\Python38\Lib\site-packages\sdl2\examples'
RESOURCES = sdl2.ext.Resources(resource_dir, "resources")
sdl2.ext.init()
window = sdl2.ext.Window("Hello World!", size=(640, 480))
window.show()
factory = sdl2.ext.SpriteFactory(sdl2.ext.SOFTWARE)
sprite = factory.from_image(RESOURCES.get_path("hello.bmp"))
spriterenderer = factory.create_sprite_render_system(window)
spriterenderer.render(sprite)
processor = sdl2.ext.TestEventProcessor()
processor.run(window)
sdl2.ext.quit()
and finally run it from the command prompt:
> python test.py

Linking problems with nix package manager and termux

I tried to install the nix package manager on an Android device with termux.
When I try to execute the nix applicatives (for instance nix-store or nix-env) I get the following error
/nix/store/y9mfv3sx75mbfibf1zna1kq9v98fk2nb-nix-1.11.16/bin/nix-env:
error while loading shared libraries:
/nix/store/kfk65xrfzndyyz6if5fxk4wrwz76h2lh-glibc-2.25-49/lib/libc.so:
invalid ELF header
The file seems to be a script for the GNU linker, so I'm wondering what is the problem, could it be that termux's version of ld is unable to correctly interpret GNU Linker's scripts?
Thanks in advance for any help.
Edit: It seems that if unset the LD_PRELOADED and the LD_LIBRARY_PATH variables the nix-applications work fine. Problem is that in doing so termux cannot lunch any other non nix application, such as bash for instance.

Could not run VS Code on CentOS 7 with x2go

I have installed the latest version of VS Code on CentOS 7.
However when I try to run VS Code, it loads for some time trying to open, but then nothing happens, no errors, nothing.
I have tried to installed both trough rpm package and zipped files, but got the same result in both cases.
I'm using x2go to connect to my CentOS 7.
Add the following line to the file /etc/x2go/x2goagent.options:
X2GO_NXAGENT_DEFAULT_OPTIONS+=" -extension BIG-REQUESTS"
Then restart the server and try again.
I had the same problem and added the --verbose flag to get more info (see below). Googling for the "gl_surface_glx.cc" error brought me to https://github.com/atom/atom/issues/4360 which contains the above workaround. VS Code now works for me on CentOS7 with X2GO.
Without this workaround the following error is seen (using the --verbose flag):
$ code --user-data-dir=/home/user1646217
--verbose [19526:0719/091952.335817:WARNING:audio_manager.cc(317)] Multiple instances of AudioManager detected
[19526:0719/091952.335923:WARNING:audio_manager.cc(278)] Multiple
instances of AudioManager detected
[19549:0719/091952.363736:ERROR:gl_surface_glx.cc(411)] GLX 1.3 or
later is required.
[19549:0719/091952.363836:ERROR:gl_initializer_x11.cc(130)]
GLSurfaceGLX::InitializeOneOff failed.
[19549:0719/091952.366430:ERROR:gpu_child_thread.cc(327)] Exiting GPU
process due to errors during initialization

Mongodb Error on running phpunit test

I tried to run mongdodb's driver test using phpunit as stated at http://www.php.net/manual/en/mongo.testing.php but it seems to have a problem with a MongoInt32Test.php filew.
# phpunit tests/mongosuite.php
Warning: require_once(MongoInt32Test.php): failed to open stream: No such file or directory in C:\Documents and Settings\owner\Desktop\mongo-php-driver\tests\MongoSuite.php on line 4
Fatal error: require_once(): Failed opening required 'MongoInt32Test.php' (include_path='.;\programming_tools\xampp-portable\php\PEAR') in C:\Documents and Settings\owner\Desktop\mongo-php-driver\tests\MongoSuite.php on line 4
I am using a php_mongo-1.3.1-5.4-vc9.dll and running mongodb 2.0.8 in windows xp. Anybody knows how to fix this? I can't find MongoInt32Test.php anywhere.
The PHPUnit tests in the extension are legacy tests and are no longer supported. I created a ticket, PHP-695, to remind us to remove mention of them from the documentation. All extension tests are phpt files, and instructions for executing them are documented in the GitHub repository.