Dear Federico,
I just got a similar email from someone using mingw/msys. He built
a dll (I always used a
static library). He had the same problem; but he solved it copying
gsl.dll into the
python directory.
In my opinion gsl.dll should be installed in the %Systemroot%\system32\
directory (this
is typically c:\windows\system32\.
I do not know if then the library has to use __stdcall instead of _cdecl ...
Could you give it a try?
Sincerely yours
Pierre
Dear Pierre,
I confused names - the guide was not written by Brad Chapan, but by
Brian Gladman, and it is available over here:
http://gladman.plushost.co.uk/oldsite/computing/gnu_scientific_library.php
however, I realized that trying to use libraries compiled with Visual
Studio 2010 against minGW might not work as well as I'd like, so I
just downloaded msys for minGW, and compiled the GSL with minGW using
msys, and that went smoothly.
After doing that, I obtained a 'normal' directory structure, and I was
able to build pyGSL fine, so the installation went well.
After the installation, I tried following the readme file directions
and changed to the /tests directory, and ran:
python run_test.py - and got the following message:
C:\TEMP\pygsl-0.9.5\tests>python run_test.py
Did you try to import pygsl in the build directory?
Well, that does not work out of the box. If you want to do that, please
use
python setup.py build_ext -i
to add the necessary extension module in the local pygsl/ directory!
Please read the README first! Any further questions or missing information
please post to [email protected]
<mailto:[email protected]>!
Traceback (most recent call last):
File "run_test.py", line 69, in <module>
run()
File "run_test.py", line 47, in run
import pygsl
File "C:\Python27\lib\site-packages\pygsl\__init__.py", line 57, in
<module>
import pygsl.init
ImportError: DLL load failed: The specified module could not be found.
C:\TEMP\pygsl-0.9.5\tests>
I wasn't in the directory, but I tried to fix it by doing:
python setup.py build_ext -i
as reccomanded, then repeating the command. This runs fine with no
errors/bugs, but doesn't fix the problem, I get the same error about
missing DLL.
Is there a PATH file that is not set or what exactly is the DLL that
the program is failing to run?
Federico
On Wed, Mar 2, 2011 at 9:56 AM, Pierre SCHNIZER <[email protected]
<mailto:[email protected]>> wrote:
Dear Federico,
> After extensive googling, I managed to compile the GSL libraries
on windows using Visual Studio 2010 with Brad Chapman's excellent
guide.
Congratulation... Compiling on windows is a story of itself ...
Please can you post a link to the guide you mention above?
Unfortunately I have not access to the compiler (and currently not
even to a
windows machine) so I can only give you hints to success.
A first point: blanks separate arguments to commands in command
line tools,
parantheses, brackets, braces have special meanings. So these can
create
extra headache if you have them in the name of the pathes; for a
first run
I would try to avoid them.
Further try to type the command that fails in the shell (using
copy; if
you use the dos shell, set it to quick edit mode; it is still
painfull, but
the pain is a little less)
The library resides in:
C:\Program Files (x86)\gsl-1.14
and the directory structure looks like this: (apologies about
the spam)
Better too much than too little info ... ;-)
¦ +---gslhdrs
¦ ¦ +---Win32
¦ ¦ +---Debug
Can you have a look,in these directories and look for the *.h files?
Are they there
The actual compiled directory files are here:
C:\Program Files (x86)\gsl-1.14\build.vc10\lib\Win32\Debug>dir
Volume in drive C is OS
Volume Serial Number is CA49-670D
Directory of C:\Program Files
(x86)\gsl-1.14\build.vc10\lib\Win32\Debug
06/02/2011 17:10 <DIR> .
06/02/2011 17:10 <DIR> ..
06/02/2011 17:10 1,113,268 cblas.lib
06/02/2011 17:10 61,440 cblas.pdb
06/02/2011 17:10 17,849,866 gsl.lib
06/02/2011 17:10 266,240 gsl.pdb
4 File(s) 19,290,814 bytes
2 Dir(s) 172,105,408,512 bytes free
Fine, but where did it put the include files? Is there a standard
directory? The unix makes files of GSL include a link command to the
include directory, executed at the beginning of the build. What has
happend to them in your build?
Now - how do I set up the gsl_site.py file?
My best guess, was something like this:
# Some systems do not provide gsl-config. So here the
locations can be entered
# by hand.
import os
# The path to the directory where gsl is installed. Currently
setup.py assumes
# that the include files are located in "prefix/include".
prefix = os.path.join("C:\\", "Program Files (x86)", "gsl-1.14")
So this is the way to write it for gcc:
The flag -I is the way to specify a include directory (just to
make sure) -g is the debug flag
cflags = "-g -I" + os.path.join(prefix, "include")
So I guess in your case it should be
cflags = "/I" + os.path.join(prefix, "gslhdrs", "Win32", "Debug")
Use some find tool and search for the .h files in the source
directory...
building 'errno' extension
C:\Program Files (x86)\Microsoft Visual Studio
9.0\VC\BIN\cl.exe /c /nologo /Ox
/MD /W3 /GS- /DNDEBUG -DSWIG_COBJECT_TYPES=1
-DGSL_RANGE_CHECK=1 -DDEBUG=1 -DNUM
ERIC=0 -DPYGSL_GSL_MAJOR_VERSION=1
-DPYGSL_GSL_MINOR_VERSION=14 -UNDEBUG -I"C:\P
rogram Files (x86)\gsl-1.14\include" -IInclude -I.
-IC:\Python27\lib\site-packag
es\numpy\core\include -IC:\Python27\include -IC:\Python27\PC
/Tcsrc/init/errorno
.c /Fobuild\temp.win32-2.7\Release\src/init/errorno.obj
Found executable C:\Program Files (x86)\Microsoft Visual
Studio 9.0\VC\BIN\cl.ex
e
cl : Command line warning D9025 : overriding '/DNDEBUG' with
'/UNDEBUG'
errorno.c
src/init/errorno.c(6) : fatal error C1083: Cannot open include
file: 'gsl/gsl_er
rno.h': No such file or directory
error: Command "C:\Program Files (x86)\Microsoft Visual Studio
9.0\VC\BIN\cl.exe
/c /nologo /Ox /MD /W3 /GS- /DNDEBUG -DSWIG_COBJECT_TYPES=1
-DGSL_RANGE_CHECK=1
-DDEBUG=1 -DNUMERIC=0 -DPYGSL_GSL_MAJOR_VERSION=1
-DPYGSL_GSL_MINOR_VERSION=14
-UNDEBUG -I"C:\Program Files (x86)\gsl-1.14\include" -IInclude
-I. -IC:\Python27
\lib\site-packages\numpy\core\include -IC:\Python27\include
-IC:\Python27\PC /Tc
src/init/errorno.c
/Fobuild\temp.win32-2.7\Release\src/init/errorno.obj" failed
with exit status 2
which obviously means the compilation fails to find gsl_erno.h
Right. As stated above, try to find the directory of the header
files.
Then it should work. Please come back if it does not.
Sincerely yours
Pierre
--
+---------------------------------------------------------------------+
GSI Helmholtzzentrum für Schwerionenforschung GmbH
Planckstraße 1
D-64291 Darmstadt
www.gsi.de
Gesellschaft mit beschränkter Haftung
Sitz der Gesellschaft: Darmstadt
Handelsregister: Amtsgericht Darmstadt, HRB 1528
Geschäftsführung: Professor Dr. Dr. h.c. Horst Stöcker, Dr. Hartmut Eickhoff
Vorsitzende des Aufsichtsrates: Dr. Beatrix Vierkorn-Rudolph
Stellvertreter: Ministerialdirigent Dr. Rolf Bernhardt
+---------------------------------------------------------------------+
------------------------------------------------------------------------------
Free Software Download: Index, Search & Analyze Logs and other IT data in
Real-Time with Splunk. Collect, index and harness all the fast moving IT data
generated by your applications, servers and devices whether physical, virtual
or in the cloud. Deliver compliance at lower cost and gain new business
insights. http://p.sf.net/sfu/splunk-dev2dev
_______________________________________________
pygsl-discuss mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/pygsl-discuss