Closed tstucki closed 12 years ago
I am receiving a similar error: log file
My terrible hack solution was to comment out line '49' of cascadenik-compile.py and replace with the a manual call to 'mv':
#os.rename(tmp_file, dest_file)
os.system('mv ' + tmp_file + ' ' + dest_file)
Forgot to mention that i am on the mapnik2 branch.
Thanks, Matt
Looks like this was replaced with shutil.move(), which can cross filesystem bounds, some time ago.
os.rename() apparently won't work if the files are on different filesystems. In my case /tmp is on a different filesystem than /home. Switching to shutli.move() (http://docs.python.org/library/shutil.html#shutil.move) fixed it for me.
This is the error I get:
owner@owner-desktop:~/Documents/mapnik/mapnik$ cascadenik-compile.py funcls_roads_l.mml out.xml output file: out.xml /home/owner/Documents/mapnik/mapnik ('/tmp/cascadenik-mapnik-HVy47I.xml', 'out.xml') owner@owner-desktop:~/Documents/mapnik/mapnik$ cascadenik-compile.py funcls_roads_l.mml out.xml Traceback (most recent call last): File "/usr/local/bin/cascadenik-compile.py", line 5, in
pkg_resources.run_script('cascadenik==1.0.2', 'cascadenik-compile.py')
File "/usr/lib/python2.6/dist-packages/pkg_resources.py", line 467, in run_script
self.require(requires)[0].run_script(script_name, ns)
File "/usr/lib/python2.6/dist-packages/pkg_resources.py", line 1200, in run_script
execfile(script_filename, namespace, namespace)
File "/usr/local/lib/python2.6/dist-packages/cascadenik-1.0.2-py2.6.egg/EGG-INFO/scripts/cascadenik-compile.py", line 48
os.unlink(dest_file)z
^
SyntaxError: invalid syntax
owner@owner-desktop:~/Documents/mapnik/mapnik$ cascadenik-compile.py funcls_roads_l.mml out.xml
output file: out.xml /home/owner/Documents/mapnik/mapnik
Traceback (most recent call last):
File "/usr/local/bin/cascadenik-compile.py", line 5, in
pkg_resources.run_script('cascadenik==1.0.2', 'cascadenik-compile.py')
File "/usr/lib/python2.6/dist-packages/pkg_resources.py", line 467, in run_script
self.require(requires)[0].run_script(script_name, ns)
File "/usr/lib/python2.6/dist-packages/pkg_resources.py", line 1200, in run_script
execfile(script_filename, namespace, namespace)
File "/usr/local/lib/python2.6/dist-packages/cascadenik-1.0.2-py2.6.egg/EGG-INFO/scripts/cascadenik-compile.py", line 92, in
sys.exit(main(layersfile, outputfile, options.dict**))
File "/usr/local/lib/python2.6/dist-packages/cascadenik-1.0.2-py2.6.egg/EGG-INFO/scripts/cascadenik-compile.py", line 49, in main
os.rename(tmp_file, dest_file)
OSError: [Errno 18] Invalid cross-device link