Snow Leopard drops MacOSX10.4u.sdk SDK -- MacVim won't build on 10.6

305 views
Skip to first unread message
Message has been deleted
Message has been deleted

travisjeffery

unread,
Aug 30, 2009, 1:21:39 PM8/30/09
to vim_mac
Hey everyone,

Snow Leopard got rid of the MacOSX10.4u.sdk in /Developers/SDKs so now
the MacVim xcodeproject
won't build.

These are references to the old SDK:

---

MacVim.xcodeproj/project.pbxproj
219: 1D80FBE30CBBD6F200102A1C /* Carbon.framework */ = {isa
=
PBXFileReference; lastKnownFileType = wrapper.framework; name =
Carbon.framework; path = /Developer/SDKs/MacOSX10.4u.sdk/System/
Library/Frameworks/Carbon.framework; sourceTree = "<absolute>"; };

PSMTabBarControl/PSMTabBarControl.xcodeproj/johnp.pbxuser
631: path = /Developer/SDKs/MacOSX10.4u.sdk/System/Library/
Frameworks/
InterfaceBuilder.framework/Versions/A/Headers/IBInspector.h;
648: path = /Developer/SDKs/MacOSX10.4u.sdk/System/Library/
Frameworks/
InterfaceBuilder.framework/Versions/A/Headers/IBInspector.h;
665: path = /Developer/SDKs/MacOSX10.4u.sdk/System/Library/
Frameworks/
InterfaceBuilder.framework/Versions/A/Headers/IBViewProtocol.h;
682: path = /Developer/SDKs/MacOSX10.4u.sdk/System/Library/
Frameworks/
InterfaceBuilder.framework/Versions/A/Headers/IBViewProtocol.h;
1888: path = /Developer/SDKs/MacOSX10.3.9.sdk/System/
Library/
Frameworks/AppKit.framework/Versions/C/Headers/NSToolbar.h;
1905: path = /Developer/SDKs/MacOSX10.3.9.sdk/System/
Library/
Frameworks/AppKit.framework/Versions/C/Headers/NSToolbar.h;

PSMTabBarControl/PSMTabBarControl.xcodeproj/project.pbxproj
585: SDKROOT = /Developer/SDKs/
MacOSX10.4u.sdk;
679: SDKROOT = /Developer/SDKs/
MacOSX10.4u.sdk;
689: SDKROOT = /Developer/SDKs/
MacOSX10.4u.sdk;

build/MacVim.build/Release/MacVim.build/build-state.dat
5:N/Developer/SDKs/MacOSX10.4u.sdk/System/Library/Frameworks/
Carbon.framework/Carbon

build/MacVim.build/Release/MacVim.build/build-state~.dat
5:N/Developer/SDKs/MacOSX10.4u.sdk/System/Library/Frameworks/
Carbon.framework/Carbon

build/PSMTabBarControl.build/Release/PSMTabBarControlFramework.build/
build-state.dat
1(4@78"error: There is no SDK with the name or path '/Developer/SDKs/
MacOSX10.4u.sdk'273345120#18446744073709551615#0#0(1@0"0
(0#1#0"6003333849562827776#0"0#

build/PSMTabBarControl.build/Release/PSMTabBarControlFramework.build/
build-state~.dat
1(4@78"error: There is no SDK with the name or path '/Developer/SDKs/
MacOSX10.4u.sdk'273344762#18446744073709551615#0#0(1@0"0
(0#1#0"6003333849562827776#0"0#

edit-in-odb/Edit in ODBEditor.xcodeproj/project.pbxproj
231: SDKROOT = /Developer/SDKs/
MacOSX10.4u.sdk;
285: SDKROOT = /Developer/SDKs/
MacOSX10.4u.sdk;
298: SDKROOT = /Developer/SDKs/
MacOSX10.4u.sdk;

----

So will just switching those references to new SDK break stuff?

björn

unread,
Aug 30, 2009, 1:24:01 PM8/30/09
to vim...@googlegroups.com
2009/8/30 travisjeffery:

>
> Hey everyone,
>
> Snow Leopard got rid of the MacOSX10.4u.sdk in /Developers/SDKs so now
> the MacVim xcodeproject
> won't build.
>
> These are references to the old SDK:

Thanks,

I think I know what the problem is...I'll try to fix it right away.
When I'm done I'll push and ask you to see if it works.

Björn

travisjeffery

unread,
Aug 30, 2009, 1:41:43 PM8/30/09
to vim_mac
Awesome, sure. Thank you.

björn

unread,
Aug 30, 2009, 2:45:29 PM8/30/09
to vim...@googlegroups.com
2009/8/30 travisjeffery <travis...@gmail.com>:
>
> Awesome, sure. Thank you.

Please try to pull and build now...I think I got rid of all the 10.4u
sdk references.

Björn

björn

unread,
Aug 30, 2009, 3:06:36 PM8/30/09
to vim...@googlegroups.com
2009/8/30 björn:

Ooops...the Sparkle framework did not get copied in the last commit.
I've patched this and pushed the fix. Make sure you have the "Copy
Sparkle framework into app bundle" commit before you try.

Björn

travisjeffery

unread,
Aug 30, 2009, 3:10:04 PM8/30/09
to vim_mac
Okay, no problem with the SDK. But building now fails when making the
document icons for some reason:

---

=== BUILD NATIVE TARGET MacVim OF PROJECT MacVim WITH THE DEFAULT
CONFIGURATION (Release) ===
Check dependencies
PhaseScriptExecution "Make Document Icons" build/MacVim.build/Release/
MacVim.build/Script-1D1C31F00EFFBFD6003FE9A5.sh
cd /Users/travis/Documents/repos/vim7/src/MacVim
/bin/sh -c /Users/travis/Documents/repos/vim7/src/MacVim/build/
MacVim.build/Release/MacVim.build/Script-1D1C31F00EFFBFD6003FE9A5.sh

make -C makeicns
g++ -o makeicns makeicns.o IconFamily.o NSString+CarbonFSRefCreation.o
-O2 \
-framework Foundation -framework AppKit -framework Carbon
Command /bin/sh failed with exit code 2
Command /bin/sh failed with exit code 2
** BUILD FAILED **


The following build commands failed:
MacVim:
PhaseScriptExecution "Make Document Icons" /Users/travis/Documents/
repos/vim7/src/MacVim/build/MacVim.build/Release/MacVim.build/
Script-1D1C31F00EFFBFD6003FE9A5.sh
(1 failure)

---

Perhaps it's a problem with the deployment target?

On Aug 30, 2:45 pm, björn <bjorn.winck...@gmail.com> wrote:
> 2009/8/30 travisjeffery <travisjeff...@gmail.com>:

björn

unread,
Aug 30, 2009, 3:20:12 PM8/30/09
to vim...@googlegroups.com
2009/8/30 travisjeffery:

Please try building the icons manually to see if that works first.
Just cd into the "src/MacVim/icons" folder and type "make". Does that
work?

Björn

travisjeffery

unread,
Aug 30, 2009, 3:24:57 PM8/30/09
to vim_mac
No, here the error when ran make in src/MacVim/icons:

make -C makeicns
g++ -o makeicns makeicns.o IconFamily.o NSString+CarbonFSRefCreation.o
-O2 \
-framework Foundation -framework AppKit -framework Carbon
Undefined symbols:
"_GetScrapFlavorInfoList", referenced from:
+[IconFamily(ScrapAdditions) canInitWithScrap] in IconFamily.o
"_ClearCurrentScrap", referenced from:
-[IconFamily(ScrapAdditions) putOnScrap] in IconFamily.o
"_GetCurrentScrap", referenced from:
-[IconFamily(ScrapAdditions) initWithScrap] in IconFamily.o
-[IconFamily(ScrapAdditions) putOnScrap] in IconFamily.o
+[IconFamily(ScrapAdditions) canInitWithScrap] in IconFamily.o
"_GetScrapFlavorData", referenced from:
-[IconFamily(ScrapAdditions) initWithScrap] in IconFamily.o
"_GetScrapFlavorCount", referenced from:
+[IconFamily(ScrapAdditions) canInitWithScrap] in IconFamily.o
"_PutScrapFlavor", referenced from:
-[IconFamily(ScrapAdditions) putOnScrap] in IconFamily.o
"_GetScrapFlavorSize", referenced from:
-[IconFamily(ScrapAdditions) initWithScrap] in IconFamily.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
make[1]: *** [makeicns] Error 1
make: *** [MacVim-generic.icns] Error 2

björn

unread,
Aug 30, 2009, 3:35:08 PM8/30/09
to vim...@googlegroups.com
2009/8/30 travisjeffery:

Ugh. Have the Scrap functions been removed from the Carbon framework
in 10.6 by any chance? I'm afraid we'll have to ask Nico (who wrote
the icon generation stuff) to take a look at this when he reads this.

For now, you may be able to bypass the icon generation by going into
icons/Makefile and deleting line 6. Then go into icons/make_icons.py
and set dont_create to True on line 22. I don't know if that will
work, but you may be able to get it to work yourself.

Björn

travisjeffery

unread,
Aug 30, 2009, 3:40:26 PM8/30/09
to vim_mac
Your instructions worked, the build succeeded.

I don't know about the Scrap functions and yeah, hopefully Nico will
have a look.

Thanks.

Nico Weber

unread,
Aug 30, 2009, 7:49:44 PM8/30/09
to vim...@googlegroups.com

Oh, fun. I'll take a look some time this week (probably next weekend).

I might take a look at QuickCursor too, but no promises.

Nico

Nico Weber

unread,
Aug 30, 2009, 8:16:47 PM8/30/09
to vim...@googlegroups.com

Looks like we don't use the scrap manager code in IconFamily. The
attached patch should fix this problem.

Nico

0001-snow-leopard-seems-to-not-support-scrap-manager.patch
Message has been deleted

björn

unread,
Aug 31, 2009, 5:39:44 AM8/31/09
to vim...@googlegroups.com
2009/8/31 Nico Weber:

>
> Looks like we don't use the scrap manager code in IconFamily. The
> attached patch should fix this problem.

Nico,

Thanks for the quick response and the patch.

I've pushed this patch to the repo. Can somebody with Snow Leopard
confirm that MacVim builds cleanly now?

Björn

Travis Jeffery

unread,
Aug 31, 2009, 10:43:32 AM8/31/09
to vim...@googlegroups.com
Still getting an error:

=== BUILD NATIVE TARGET PSMTabBarControlFramework OF PROJECT
PSMTabBarControl WITH THE DEFAULT CONFIGURATION (Release) ===
Check dependencies

=== BUILD NATIVE TARGET Edit in ODBEditor OF PROJECT Edit in ODBEditor

WITH THE DEFAULT CONFIGURATION (Release) ===
Check dependencies

=== BUILD NATIVE TARGET MacVim OF PROJECT MacVim WITH THE DEFAULT
CONFIGURATION (Release) ===
Check dependencies
PhaseScriptExecution "Make Document Icons" build/MacVim.build/Release/
MacVim.build/Script-1D1C31F00EFFBFD6003FE9A5.sh
cd /Users/travis/Documents/repos/vim7/src/MacVim
/bin/sh -c /Users/travis/Documents/repos/vim7/src/MacVim/build/
MacVim.build/Release/MacVim.build/Script-1D1C31F00EFFBFD6003FE9A5.sh

make -C makeicns
make[1]: `makeicns' is up to date.
/usr/bin/python make_icons.py /Users/travis/Documents/repos/vim7/src/
MacVim/build/Release/MacVim.app/Contents/Resources
MacVim-cpp


Command /bin/sh failed with exit code 2
Command /bin/sh failed with exit code 2
** BUILD FAILED **


The following build commands failed:
MacVim:
PhaseScriptExecution "Make Document Icons" /Users/travis/Documents/
repos/vim7/src/MacVim/build/MacVim.build/Release/MacVim.build/
Script-1D1C31F00EFFBFD6003FE9A5.sh
(1 failure)

The icon files are created sans anything on them:

Like that.

MacVim-generic.icns

björn

unread,
Aug 31, 2009, 10:51:48 AM8/31/09
to vim...@googlegroups.com
2009/8/31 Travis Jeffery:
> Still getting an error:

Can you provide the output from "make" inside the "icons/" directory
instead. The output from Xcode does not tell us what went wrong, only
that something went wrong. Remember to call "make clean" first as
well.

Thanks,
Björn

Travis Jeffery

unread,
Aug 31, 2009, 11:02:09 AM8/31/09
to vim...@googlegroups.com
Whoops, sorry. Here you go:

/usr/bin/python setup.py install --install-lib .
running install
running build
running build_ext
building 'loadfont' extension
creating build
creating build/temp.macosx-10.6-universal-2.6
gcc-4.2 -fno-strict-aliasing -fno-common -dynamic -DNDEBUG -g -fwrapv -
Os -Wall -Wstrict-prototypes -DENABLE_DTRACE -arch i386 -arch ppc -
arch x86_64 -pipe -I/System/Library/Frameworks/Python.framework/
Versions/2.6/include/python2.6 -c loadfont.c -o build/temp.macosx-10.6-
universal-2.6/loadfont.o
creating build/lib.macosx-10.6-universal-2.6
gcc-4.2 -Wl,-F. -bundle -undefined dynamic_lookup -arch i386 -arch ppc
-arch x86_64 build/temp.macosx-10.6-universal-2.6/loadfont.o -o build/
lib.macosx-10.6-universal-2.6/loadfont.so
running install_lib
copying build/lib.macosx-10.6-universal-2.6/loadfont.so -> .
running install_egg_info
Removing ./loadfont-1.0-py2.6.egg-info
Writing ./loadfont-1.0-py2.6.egg-info
curl http://download.damieng.com/latest/EnvyCodeR --location -o
EnvyCodeR.zip
% Total % Received % Xferd Average Speed Time Time
Time Current
Dload Upload Total Spent
Left Speed
100 168k 100 168k 0 0 5748 0 0:00:30 0:00:30
--:--:-- 235k
unzip -jo EnvyCodeR.zip
Archive: EnvyCodeR.zip
inflating: Envy Code R Bold.ttf
inflating: Envy Code R Command Prompt.reg
inflating: Envy Code R Italic.ttf
inflating: Envy Code R.ttf
inflating: Read Me.txt
inflating: Envy Code R VS Italic-as-bold.ttf
inflating: Envy Code R VS.ttf
# unzip uses the file date from the zip file. Change the file date to
# "now", so that the zip is not unzipped in every `make` run.`
touch Envy\ Code\ R\ Bold.ttf
make -C makeicns
cc -fpascal-strings -O2 -c -o makeicns.o makeicns.m
cc -fpascal-strings -O2 -c -o IconFamily.o IconFamily.m
IconFamily.m: In function ‘-[IconFamily
setAsCustomIconForFile:withCompatibility:]’:
IconFamily.m:677: warning: ‘fileAttributesAtPath:traverseLink:’ is
deprecated (declared at /System/Library/Frameworks/
Foundation.framework/Headers/NSFileManager.h:162)
IconFamily.m:792: warning: ‘changeFileAttributes:atPath:’ is
deprecated (declared at /System/Library/Frameworks/
Foundation.framework/Headers/NSFileManager.h:163)
IconFamily.m: In function ‘-[IconFamily
setAsCustomIconForDirectory:withCompatibility:]’:
IconFamily.m:895: warning: ‘removeFileAtPath:handler:’ is deprecated
(declared at /System/Library/Frameworks/Foundation.framework/Headers/
NSFileManager.h:174)
IconFamily.m: In function ‘+[IconFamily(Internals)
resampleImage:toIconWidth:usingImageInterpolation:]’:
IconFamily.m:1069: warning: ‘bestRepresentationForDevice:’ is
deprecated (declared at /System/Library/Frameworks/AppKit.framework/
Headers/NSImage.h:128)
cc -fpascal-strings -O2 -c -o NSString+CarbonFSRefCreation.o NSString
+CarbonFSRefCreation.m
NSString+CarbonFSRefCreation.m: In function ‘-[NSString
(CarbonFSRefCreation) getFSRef:createFileIfNecessary:]’:
NSString+CarbonFSRefCreation.m:26: warning: ‘writeToFile:atomically:’
is deprecated (declared at /System/Library/Frameworks/
Foundation.framework/Headers/NSString.h:374)
g++ -o makeicns makeicns.o IconFamily.o NSString+CarbonFSRefCreation.o
-O2 \
-framework Foundation -framework AppKit -framework Carbon
/usr/bin/python make_icons.py .
MacVim-cpp
Traceback (most recent call last):
File "make_icons.py", line 198, in <module>
main()
File "make_icons.py", line 190, in main
textrenderer=SmallTextRenderer, backgroundrenderer=NoIconRenderer)
File "/Users/travis/Documents/repos/vim7/src/MacVim/icons/
docerator.py", line 561, in makedocicon
makedocicon_opts(optsFromDict(**kwargs))
File "/Users/travis/Documents/repos/vim7/src/MacVim/icons/
docerator.py", line 537, in makedocicon_opts
icons = dict([(s, renderer.createIconAtSize(s)) for s in sizes])
File "/Users/travis/Documents/repos/vim7/src/MacVim/icons/
docerator.py", line 516, in createIconAtSize
return createIcon(s, self.bgRenderer, self.textRenderer,
self.testtext)
File "/Users/travis/Documents/repos/vim7/src/MacVim/icons/
docerator.py", line 365, in createIcon
output = bg.backgroundAtSize(s).copy()
File "/Users/travis/Documents/repos/vim7/src/MacVim/icons/
docerator.py", line 204, in backgroundAtSize
self.drawAtSize(s)
File "/Users/travis/Documents/repos/vim7/src/MacVim/icons/
docerator.py", line 194, in drawAtSize
self.bgRenderer.groundAtSize(s).draw()
File "/Users/travis/Documents/repos/vim7/src/MacVim/icons/
docerator.py", line 147, in groundAtSize
self._performSplit(s)
File "/Users/travis/Documents/repos/vim7/src/MacVim/icons/
docerator.py", line 161, in _performSplit
ground, shadow = splitGenericDocumentIcon(self.unsplitted, s)
File "/Users/travis/Documents/repos/vim7/src/MacVim/icons/
docerator.py", line 218, in splitGenericDocumentIcon
data = r.data()
File "/Users/travis/Documents/repos/vim7/src/MacVim/icons/
docerator.py", line 57, in data
raise Exception("Unsupported image format")
Exception: Unsupported image format
make: *** [MacVim-generic.icns] Error 1

Chip Warden

unread,
Aug 31, 2009, 9:51:30 PM8/31/09
to vim_mac
Not to be a "me, too" poster, but I get the exact same error.

On Aug 31, 10:02 am, Travis Jeffery <travisjeff...@gmail.com> wrote:
> Whoops, sorry. Here you go:
>
> /usr/bin/python setup.py install --install-lib .
> running install
> running build
> running build_ext
> building 'loadfont' extension
> creating build
> creating build/temp.macosx-10.6-universal-2.6
> gcc-4.2 -fno-strict-aliasing -fno-common -dynamic -DNDEBUG -g -fwrapv -
> Os -Wall -Wstrict-prototypes -DENABLE_DTRACE -arch i386 -arch ppc -
> arch x86_64 -pipe -I/System/Library/Frameworks/Python.framework/
> Versions/2.6/include/python2.6 -c loadfont.c -o build/temp.macosx-10.6-
> universal-2.6/loadfont.o
> creating build/lib.macosx-10.6-universal-2.6
> gcc-4.2 -Wl,-F. -bundle -undefined dynamic_lookup -arch i386 -arch ppc  
> -arch x86_64 build/temp.macosx-10.6-universal-2.6/loadfont.o -o build/
> lib.macosx-10.6-universal-2.6/loadfont.so
> running install_lib
> copying build/lib.macosx-10.6-universal-2.6/loadfont.so -> .
> running install_egg_info
> Removing ./loadfont-1.0-py2.6.egg-info
> Writing ./loadfont-1.0-py2.6.egg-info
> curlhttp://download.damieng.com/latest/EnvyCodeR--location -o  

Nico Weber

unread,
Aug 31, 2009, 11:18:34 PM8/31/09
to vim...@googlegroups.com
> Not to be a "me, too" poster, but I get the exact same error.

Can one of you add

print r

as line 52 in src/vim/src/MacVim/icons/docerator.py (above the `if`
line) and rerun this again, and then send the output to this list?

Thanks,
Nico

Chip Warden

unread,
Aug 31, 2009, 11:27:54 PM8/31/09
to vim...@googlegroups.com
docerator.py:

def data(self):
"""Returns data in ARGB order (on intel, at least)."""
r = self.bitmapRep
print r
if r.bitmapFormat() != (NSAlphaNonpremultipliedBitmapFormat |
NSAlphaFirstBitmapFormat) or \
r.bitsPerPixel() != 32 or \
r.isPlanar() or \
r.samplesPerPixel() != 4:
raise Exception("Unsupported image format")
return self.bitmapRep.bitmapData()

make output:

/usr/bin/python setup.py install --install-lib .
running install
running build
running build_ext
building 'loadfont' extension
creating build
creating build/temp.macosx-10.6-universal-2.6
gcc-4.2 -fno-strict-aliasing -fno-common -dynamic -DNDEBUG -g -fwrapv -
Os -Wall -Wstrict-prototypes -DENABLE_DTRACE -arch i386 -arch ppc -
arch x86_64 -pipe -I/System/Library/Frameworks/Python.framework/
Versions/2.6/include/python2.6 -c loadfont.c -o build/temp.macosx-10.6-
universal-2.6/loadfont.o
creating build/lib.macosx-10.6-universal-2.6
gcc-4.2 -Wl,-F. -bundle -undefined dynamic_lookup -arch i386 -arch ppc
-arch x86_64 build/temp.macosx-10.6-universal-2.6/loadfont.o -o build/
lib.macosx-10.6-universal-2.6/loadfont.so
running install_lib
copying build/lib.macosx-10.6-universal-2.6/loadfont.so -> .
running install_egg_info
Removing ./loadfont-1.0-py2.6.egg-info
Writing ./loadfont-1.0-py2.6.egg-info
curl http://download.damieng.com/latest/EnvyCodeR --location -o
EnvyCodeR.zip
% Total % Received % Xferd Average Speed Time Time
Time Current
Dload Upload Total Spent
Left Speed
100 168k 100 168k 0 0 150k 0 0:00:01 0:00:01
--:--:-- 516k
NSBitmapImageRep 0x104a210a0 Size={128, 128} ColorSpace=(not yet
loaded) BPS=8 BPP=(not yet loaded) Pixels=128x128 Alpha=YES Planar=NO
Format=(not yet loaded) CurrentBacking=nil (faulting)
CGImageSource=0x104a14680
Traceback (most recent call last):
File "make_icons.py", line 198, in <module>
main()
File "make_icons.py", line 190, in main
textrenderer=SmallTextRenderer, backgroundrenderer=NoIconRenderer)
File "/usr/local/src/MacVim/src/MacVim/icons/docerator.py", line
562, in makedocicon
makedocicon_opts(optsFromDict(**kwargs))
File "/usr/local/src/MacVim/src/MacVim/icons/docerator.py", line
538, in makedocicon_opts
icons = dict([(s, renderer.createIconAtSize(s)) for s in sizes])
File "/usr/local/src/MacVim/src/MacVim/icons/docerator.py", line
517, in createIconAtSize
return createIcon(s, self.bgRenderer, self.textRenderer,
self.testtext)
File "/usr/local/src/MacVim/src/MacVim/icons/docerator.py", line
366, in createIcon
output = bg.backgroundAtSize(s).copy()
File "/usr/local/src/MacVim/src/MacVim/icons/docerator.py", line
205, in backgroundAtSize
self.drawAtSize(s)
File "/usr/local/src/MacVim/src/MacVim/icons/docerator.py", line
195, in drawAtSize
self.bgRenderer.groundAtSize(s).draw()
File "/usr/local/src/MacVim/src/MacVim/icons/docerator.py", line
148, in groundAtSize
self._performSplit(s)
File "/usr/local/src/MacVim/src/MacVim/icons/docerator.py", line
162, in _performSplit
ground, shadow = splitGenericDocumentIcon(self.unsplitted, s)
File "/usr/local/src/MacVim/src/MacVim/icons/docerator.py", line
219, in splitGenericDocumentIcon
data = r.data()
File "/usr/local/src/MacVim/src/MacVim/icons/docerator.py", line
58, in data
raise Exception("Unsupported image format")
Exception: Unsupported image format
make: *** [MacVim-generic.icns] Error 1

Nico Weber

unread,
Sep 1, 2009, 12:44:33 AM9/1/09
to vim...@googlegroups.com
> NSBitmapImageRep 0x104a210a0 Size={128, 128} ColorSpace=(not yet
> loaded) BPS=8 BPP=(not yet loaded) Pixels=128x128 Alpha=YES Planar=NO
> Format=(not yet loaded) CurrentBacking=nil (faulting)

Interesting. Does SL load images lazily? Just to make sure, what's the
output of

ls -l /System/Library/CoreServices/CoreTypes.bundle/Contents/
Resources/GenericDocumentIcon.icns

? But since the size seems to be set, that file should be there? If
so, I have to do some digging… :-/

Nico

Travis Jeffery

unread,
Sep 1, 2009, 12:51:04 AM9/1/09
to vim...@googlegroups.com
ls -l /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/
GenericDocumentIcon.icns
-rw-r--r-- 1 root wheel 46607 30 Jul 01:23 /System/Library/
CoreServices/CoreTypes.bundle/Contents/Resources/
GenericDocumentIcon.icns

björn

unread,
Sep 1, 2009, 3:29:44 PM9/1/09
to vim...@googlegroups.com
2009/9/1 Nico Weber:

I just installed Snow Leopard myself. Here is what I found out:

Uncomment the test for format that caused the error on line 58 and it
asserts a little later:

/usr/bin/python make_icons.py .
MacVim-cpp


Traceback (most recent call last):
File "make_icons.py", line 198, in <module>
main()
File "make_icons.py", line 190, in main
textrenderer=SmallTextRenderer, backgroundrenderer=NoIconRenderer)

File "/Users/winckler/macvim/src/MacVim/icons/docerator.py", line
561, in makedocicon
makedocicon_opts(optsFromDict(**kwargs))
File "/Users/winckler/macvim/src/MacVim/icons/docerator.py", line
537, in makedocicon_opts


icons = dict([(s, renderer.createIconAtSize(s)) for s in sizes])

File "/Users/winckler/macvim/src/MacVim/icons/docerator.py", line
516, in createIconAtSize


return createIcon(s, self.bgRenderer, self.textRenderer, self.testtext)

File "/Users/winckler/macvim/src/MacVim/icons/docerator.py", line
365, in createIcon
output = bg.backgroundAtSize(s).copy()
File "/Users/winckler/macvim/src/MacVim/icons/docerator.py", line
204, in backgroundAtSize
self.drawAtSize(s)
File "/Users/winckler/macvim/src/MacVim/icons/docerator.py", line
194, in drawAtSize
self.bgRenderer.groundAtSize(s).draw()
File "/Users/winckler/macvim/src/MacVim/icons/docerator.py", line
147, in groundAtSize
self._performSplit(s)
File "/Users/winckler/macvim/src/MacVim/icons/docerator.py", line
161, in _performSplit


ground, shadow = splitGenericDocumentIcon(self.unsplitted, s)

File "/Users/winckler/macvim/src/MacVim/icons/docerator.py", line
242, in splitGenericDocumentIcon
assert ir == ig == ib
AssertionError


make: *** [MacVim-generic.icns] Error 1


Ok. So I comment out the assertion (what's going on here...if
alpha=255 then r=g=b is supposed to hold...but why?) and the script
works. But...the icons come out looking strange:

http://bjorn.winckler.googlepages.com/BROKEN-MacVim-vim.icns.zip

Nico: any clue what's going on. Let me know if you have any specific questions.

Anyway, I'm focussing on the rest of the compilations problems (seems
like the scrollbars never appear, lots of compilation warnings, etc.,
I'll post again when this is fixed).

Björn

björn

unread,
Sep 1, 2009, 9:36:47 PM9/1/09
to vim...@googlegroups.com
2009/9/1 björn:

>
> Anyway, I'm focussing on the rest of the compilations problems (seems
> like the scrollbars never appear, lots of compilation warnings, etc.,
> I'll post again when this is fixed).

I've pushed a whole set of patches to address various Snow Leopard
issues. MacVim compiles and runs fine on Snow Leopard now, bar the
problem with the icon generation. It is possible to work around this
issue by commenting out certain lines in the docerator.py script as
I've mentioned previously (in this thread) in case somebody wants to
build MacVim on 10.6.

ATSUI is disabled on 10.6 for now (still there for 10.5 and 10.4). If
Jiang manages to get it working I'll put it back in, otherwise I will
try to merge the CoreText branch when I get a chance (read: in several
weeks, or even months time). At any rate, the CoreText renderer works
so it is always possible to pull the feat/core-text branch to try it
out.

If anybody builds MacVim on 10.5 or 10.4, please let me know if it
still works or if I inadvertently broke something in the process.

Note: you will have to reconfigure (./configure ...) and clean the
entire project for all the patches to work.

Björn

Axel Kielhorn

unread,
Sep 2, 2009, 10:39:42 AM9/2/09
to vim...@googlegroups.com

Am 02.09.2009 um 03:36 schrieb björn:
>
> If anybody builds MacVim on 10.5 or 10.4, please let me know if it
> still works or if I inadvertently broke something in the process.
>
> Note: you will have to reconfigure (./configure ...) and clean the
> entire project for all the patches to work.

I did a make clean and ./configure.

gcc -L/usr/local/lib -m32 -o Vim objects/buffer.o objects/
charset.o objects/diff.o objects/digraph.o objects/edit.o objects/
eval.o objects/ex_cmds.o objects/ex_cmds2.o objects/ex_docmd.o objects/
ex_eval.o objects/ex_getln.o objects/fileio.o objects/fold.o objects/
getchar.o objects/hardcopy.o objects/hashtab.o objects/if_cscope.o
objects/if_xcmdsrv.o objects/main.o objects/mark.o objects/memfile.o
objects/memline.o objects/menu.o objects/message.o objects/misc1.o
objects/misc2.o objects/move.o objects/mbyte.o objects/normal.o
objects/ops.o objects/option.o objects/os_unix.o objects/pathdef.o
objects/popupmnu.o objects/quickfix.o objects/regexp.o objects/
screen.o objects/search.o objects/spell.o objects/syntax.o objects/
tag.o objects/term.o objects/ui.o objects/undo.o objects/window.o
objects/gui.o objects/pty.o objects/gui_macvim.o objects/MMBackend.o
objects/MacVim.o objects/os_macosx.o objects/os_mac_conv.o
objects/netbeans.o objects/version.o -framework Cocoa -framework
Carbon -lm -lncurses -liconv -lintl
link.sh: Linked OK

Looks fine

I removed the build folder from MacVIm

xcodebuild leads to:

he following build commands failed:
PSMTabBarControlFramework:
CompileC ../build/PSMTabBarControl.build/Release/
PSMTabBarControlFramework.build/Objects-normal/i386/
PSMOverflowPopUpButton.o /Users/axel/src/MacVim/src/MacVim/
PSMTabBarControl/source/PSMOverflowPopUpButton.m normal i386 objective-
c com.apple.compilers.gcc.4_0
CompileC ../build/PSMTabBarControl.build/Release/
PSMTabBarControlFramework.build/Objects-normal/i386/
PSMTabBarControl.o /Users/axel/src/MacVim/src/MacVim/PSMTabBarControl/
source/PSMTabBarControl.m normal i386 objective-c
com.apple.compilers.gcc.4_0
CompileC ../build/PSMTabBarControl.build/Release/
PSMTabBarControlFramework.build/Objects-normal/i386/PSMTabBarCell.o /
Users/axel/src/MacVim/src/MacVim/PSMTabBarControl/source/
PSMTabBarCell.m normal i386 objective-c com.apple.compilers.gcc.4_0
CompileC ../build/PSMTabBarControl.build/Release/
PSMTabBarControlFramework.build/Objects-normal/i386/PSMAquaTabStyle.o /
Users/axel/src/MacVim/src/MacVim/PSMTabBarControl/source/
PSMAquaTabStyle.m normal i386 objective-c com.apple.compilers.gcc.4_0
CompileC ../build/PSMTabBarControl.build/Release/
PSMTabBarControlFramework.build/Objects-normal/i386/
PSMMetalTabStyle.o /Users/axel/src/MacVim/src/MacVim/PSMTabBarControl/
source/PSMMetalTabStyle.m normal i386 objective-c
com.apple.compilers.gcc.4_0
CompileC ../build/PSMTabBarControl.build/Release/
PSMTabBarControlFramework.build/Objects-normal/i386/
PSMProgressIndicator.o /Users/axel/src/MacVim/src/MacVim/
PSMTabBarControl/source/PSMProgressIndicator.m normal i386 objective-c
com.apple.compilers.gcc.4_0
CompileC ../build/PSMTabBarControl.build/Release/
PSMTabBarControlFramework.build/Objects-normal/i386/
PSMTabDragAssistant.o /Users/axel/src/MacVim/src/MacVim/
PSMTabBarControl/source/PSMTabDragAssistant.m normal i386 objective-c
com.apple.compilers.gcc.4_0
CompileC ../build/PSMTabBarControl.build/Release/
PSMTabBarControlFramework.build/Objects-normal/i386/
PSMUnifiedTabStyle.o /Users/axel/src/MacVim/src/MacVim/
PSMTabBarControl/source/PSMUnifiedTabStyle.m normal i386 objective-c
com.apple.compilers.gcc.4_0
MacVim:
CompileC build/MacVim.build/Release/MacVim.build/Objects-normal/i386/
MMAppController.o /Users/axel/src/MacVim/src/MacVim/MMAppController.m
normal i386 objective-c com.apple.compilers.gcc.4_0
CompileC build/MacVim.build/Release/MacVim.build/Objects-normal/i386/
MMTextView.o /Users/axel/src/MacVim/src/MacVim/MMTextView.m normal
i386 objective-c com.apple.compilers.gcc.4_0
CompileC build/MacVim.build/Release/MacVim.build/Objects-normal/i386/
MMVimController.o /Users/axel/src/MacVim/src/MacVim/MMVimController.m
normal i386 objective-c com.apple.compilers.gcc.4_0
CompileC build/MacVim.build/Release/MacVim.build/Objects-normal/i386/
MMWindowController.o /Users/axel/src/MacVim/src/MacVim/
MMWindowController.m normal i386 objective-c com.apple.compilers.gcc.4_0
CompileC build/MacVim.build/Release/MacVim.build/Objects-normal/i386/
MMFullscreenWindow.o /Users/axel/src/MacVim/src/MacVim/
MMFullscreenWindow.m normal i386 objective-c com.apple.compilers.gcc.4_0
CompileC build/MacVim.build/Release/MacVim.build/Objects-normal/i386/
MMVimView.o /Users/axel/src/MacVim/src/MacVim/MMVimView.m normal i386
objective-c com.apple.compilers.gcc.4_0
CompileC build/MacVim.build/Release/MacVim.build/Objects-normal/i386/
MMPreferenceController.o /Users/axel/src/MacVim/src/MacVim/
MMPreferenceController.m normal i386 objective-c
com.apple.compilers.gcc.4_0
CompileC build/MacVim.build/Release/MacVim.build/Objects-normal/i386/
DBPrefsWindowController.o /Users/axel/src/MacVim/src/MacVim/
DBPrefsWindowController.m normal i386 objective-c
com.apple.compilers.gcc.4_0
CompileC build/MacVim.build/Release/MacVim.build/Objects-normal/i386/
MMPlugInManager.o /Users/axel/src/MacVim/src/MacVim/MMPlugInManager.m
normal i386 objective-c com.apple.compilers.gcc.4_0
CompileC build/MacVim.build/Release/MacVim.build/Objects-normal/i386/
PlugInImpl.o /Users/axel/src/MacVim/src/MacVim/PlugInImpl.m normal
i386 objective-c com.apple.compilers.gcc.4_0
CompileC build/MacVim.build/Release/MacVim.build/Objects-normal/i386/
MMTextViewHelper.o /Users/axel/src/MacVim/src/MacVim/
MMTextViewHelper.m normal i386 objective-c com.apple.compilers.gcc.4_0
(19 failures)

This is on 10.5.8 with Xcode 3.1.3

Axel

björn

unread,
Sep 2, 2009, 12:03:15 PM9/2/09
to vim...@googlegroups.com
2009/9/2 Axel Kielhorn:

>
> Am 02.09.2009 um 03:36 schrieb björn:
>>
>> If anybody builds MacVim on 10.5 or 10.4, please let me know if it
>> still works or if I inadvertently broke something in the process.
>>
>> Note: you will have to reconfigure (./configure ...) and clean the
>> entire project for all the patches to work.
>
> I removed the build folder from MacVIm
>
> xcodebuild leads to:
>
> -snip-

Uh, where is the actual error? The output from xcodebuild is
semi-impossible to read but as far as I can tell that output did not
include the error messages. It may help if you open Xcode and build
from there, then look in the build window (Cmd-Shift-b).

Thanks,
Björn

Axel Kielhorn

unread,
Sep 2, 2009, 1:16:33 PM9/2/09
to vim...@googlegroups.com

Sorry, please see the attached file.

Axel


build.log

björn

unread,
Sep 2, 2009, 2:18:18 PM9/2/09
to vim...@googlegroups.com
2009/9/2 Axel Kielhorn:

>
> Sorry, please see the attached file.

Thanks Axel. The problem was that I used the availability macros
incorrectly (MAC_OS_X_VERSION_MAX_ALLOWED etc.) which was just now
pointed out to me in a private mail.

I've pushed a patch to the repo so MacVim should build on 10.5 again,
but please let me know if there are any other problems.

Björn

Nico Weber

unread,
Sep 2, 2009, 11:46:15 PM9/2/09
to vim...@googlegroups.com
> I've pushed a patch to the repo so MacVim should build on 10.5 again,
> but please let me know if there are any other problems.

Builds fine on 10.5.8 over here. Thanks!

Nico

uxp

unread,
Sep 2, 2009, 11:44:14 PM9/2/09
to vim_mac
I've got my MacBook Pro running 10.5.7 still. I just tried to compile
it on that. Heres the output where it starts to error from a clean
fetch from the git repo:

/usr/bin/python make_icons.py /Users/uxp/Projects/Release/MacVim.app/
Contents/Resources
MacVim-cpp
Wrote MacVim-cpp.icns
MacVim-txt
Wrote MacVim-txt.icns
MacVim-lisp
Wrote MacVim-lisp.icns
MacVim-html
Wrote MacVim-html.icns
MacVim-fscript
Wrote MacVim-fscript.icns
MacVim-generic
Wrote MacVim-generic.icns
MacVim-hs
Wrote MacVim-hs.icns
MacVim-js
Wrote MacVim-js.icns
MacVim-wiki
Wrote MacVim-wiki.icns
MacVim-bash
Wrote MacVim-bash.icns
MacVim-php
Wrote MacVim-php.icns
MacVim-sch
Wrote MacVim-sch.icns
MacVim-css
Wrote MacVim-css.icns
MacVim-sql
Wrote MacVim-sql.icns
MacVim-patch
Wrote MacVim-patch.icns
MacVim-vcf
Wrote MacVim-vcf.icns
MacVim-vim
Wrote MacVim-vim.icns
MacVim-tcl
Wrote MacVim-tcl.icns
MacVim-rb
Wrote MacVim-rb.icns
MacVim-yaml
Wrote MacVim-yaml.icns
MacVim-py
Wrote MacVim-py.icns
MacVim-mm
Wrote MacVim-mm.icns
MacVim-erl
Wrote MacVim-erl.icns
MacVim-xml
Wrote MacVim-xml.icns
MacVim-ics
Wrote MacVim-ics.icns
MacVim-perl
Wrote MacVim-perl.icns
MacVim-applescript
Wrote MacVim-applescript.icns
MacVim-tex
Wrote MacVim-tex.icns
MacVim-jsp
Wrote MacVim-jsp.icns
MacVim-h
Wrote MacVim-h.icns
MacVim-c
Wrote MacVim-c.icns
MacVim-m
Wrote MacVim-m.icns
MacVim-java
Wrote MacVim-java.icns
MacVim-log
Wrote MacVim-log.icns
MacVim-f
Wrote MacVim-f.icns
** BUILD FAILED **

The following build commands failed:
MacVim:
CompileC /Users/uxp/Projects/MacVim.build/Release/MacVim.build/
Objects-normal/i386/MMWindowController.o /Users/uxp/src/macvim7/src/
MacVim/MMWindowController.m normal i386 objective-c
com.apple.compilers.gcc.4_0
CompileC /Users/uxp/Projects/MacVim.build/Release/MacVim.build/
Objects-normal/i386/MMVimView.o /Users/uxp/src/macvim7/src/MacVim/
MMVimView.m normal i386 objective-c com.apple.compilers.gcc.4_0
CompileC /Users/uxp/Projects/MacVim.build/Release/MacVim.build/
Objects-normal/i386/MMFullscreenWindow.o /Users/uxp/src/macvim7/src/
MacVim/MMFullscreenWindow.m normal i386 objective-c
com.apple.compilers.gcc.4_0
(3 failures)

björn

unread,
Sep 3, 2009, 9:30:57 AM9/3/09
to vim...@googlegroups.com
2009/9/3 uxp:

>
> I've got my MacBook Pro running 10.5.7 still. I just tried to compile
> it on that. Heres the output where it starts to error from a clean
> fetch from the git repo:
>
> - snip -

This looks like the problem that I patched last night. Try pulling
again and do a complete clean and rebuild. Let me know if it still
doesn't work (I'll need to proper build log though...what you pasted
does not actually include the error).

Björn

Axel Kielhorn

unread,
Sep 3, 2009, 9:50:33 AM9/3/09
to vim...@googlegroups.com

** BUILD SUCCEEDED **

Thank you!

Axel

Nico Weber

unread,
Sep 24, 2009, 3:54:36 AM9/24/09
to vim...@googlegroups.com
>>
>> Interesting. Does SL load images lazily? Just to make sure, what's
>> the
>> output of
>>
>> ls -l /System/Library/CoreServices/CoreTypes.bundle/Contents/
>> Resources/GenericDocumentIcon.icns
>>
>> ? But since the size seems to be set, that file should be there? If
>> so, I have to do some digging… :-/

Fix for icon generation on Snow Leopard is attached. It would be cool
if someone could test that things still work on Leopard with this :-P

Nico

0001-fix-icon-generation-on-snow-leopard.patch

björn

unread,
Sep 24, 2009, 6:18:54 AM9/24/09
to vim...@googlegroups.com
2009/9/24 Nico Weber:

> Fix for icon generation on Snow Leopard is attached. It would be cool
> if someone could test that things still work on Leopard with this :-P

Thanks Nico!

I'll merge this tonight (which translates to "in about 8h") and if
nobody has tested it on Leopard by then I'll just push the patch
anyway (my guess is that people would rather just git-pull and test
instead of applying a patch and test).

Björn

uxp

unread,
Sep 24, 2009, 8:13:19 PM9/24/09
to vim_mac
I pulled a new (clean) copy from git on my MacBookPro1,1 (core duo,
not c2d) Running Leopard, OS 10.5.8, about an hour ago. That built
without a hitch, and runs great.

About 10 minutes ago I pulled a second clean copy onto my iMac running
Snow Leopard, OS 10.6.1, and it just completed compiling successfully.
Thanks for all your hard work. I for one really appreciate it.

Hopefully someone else can test and verify on their hardware.

uxp

Tim Hammerquist

unread,
Sep 24, 2009, 8:53:38 PM9/24/09
to vim...@googlegroups.com
björn <bjorn.w...@gmail.com> wrote:
> I'll merge this tonight (which translates to "in about 8h") and if
> nobody has tested it on Leopard by then I'll just push the patch
> anyway (my guess is that people would rather just git-pull and test
> instead of applying a patch and test).

The following applies to 10.6.

git pulled the icon fix to my existing repo, but couldn't get it to
build for the life of me. I think I corrupted it while trying the
makeicns workaround.

Cloned a new repo, used the same exact build options, and it built
without a hitch.

As a side note, I can't build with rubyinterp using
ruby (1.8.7) from MacPorts. Anyone else get this?

Tim

ZHHZ

unread,
Sep 24, 2009, 9:21:40 PM9/24/09
to vim_mac
For the rubyinterp, same thing here. I even tried with the both the
default from Snow Leopard and compiled one, neither works.

--Bruce

On Sep 24, 8:53 pm, Tim Hammerquist <pen...@gmail.com> wrote:

björn

unread,
Sep 25, 2009, 12:06:29 PM9/25/09
to vim...@googlegroups.com
2009/9/25 Tim Hammerquist:

>
> As a side note, I can't build with rubyinterp using
> ruby (1.8.7) from MacPorts.  Anyone else get this?

Tim,

I'm guessing it has something to do with Ruby inculding "-arch x86_64"
in the LDFLAGS. I'm just about to post a patch to this problem. In
the meantime you'll have to edit src/auto/config.mk so that the
LDFLAGS does not include the above flag (which I'm guessing won't be
so easy to do with MacPorts...but if you download the source manually
it is).

Björn

Tim Hammerquist

unread,
Sep 25, 2009, 5:22:18 PM9/25/09
to vim...@googlegroups.com
björn <bjorn.w...@gmail.com> wrote:
> 2009/9/25 Tim Hammerquist:
>> As a side note, I can't build with rubyinterp using
>> ruby (1.8.7) from MacPorts.  Anyone else get this?
>
> I'm guessing it has something to do with Ruby inculding "-arch x86_64"
> in the LDFLAGS.  I'm just about to post a patch to this problem.  In
> the meantime you'll have to edit src/auto/config.mk so that the
> LDFLAGS does not include the above flag (which I'm guessing won't be
> so easy to do with MacPorts...but if you download the source manually
> it is).

Using the following:

ruby (MacPorts @1.8.7-p174)
MacVim (git master, HEAD=24d9b9)

Bjorn,

I pulled your most recent fix that included patches to
src/configure{,.in}. However, I'm still getting an error building
--with-rubyinterp.

The output is attached.

Did I misunderstand? Do I still need to build a custom ruby from
source? Or is there somethint else going on here?

Hope this helps,

Tim

macvim+ruby-build_output.txt

Kazuki Sakamoto

unread,
Sep 25, 2009, 7:30:31 PM9/25/09
to vim...@googlegroups.com
Hi,

On Sat, Sep 26, 2009 at 6:22 AM, Tim Hammerquist <pen...@gmail.com> wrote:
> ruby (MacPorts @1.8.7-p174)
> MacVim (git master, HEAD=24d9b9)

> Did I misunderstand?  Do I still need to build a custom ruby from
> source?  Or is there somethint else going on here?

MacVim (MacVim.app/Contents/MacOS/Vim) is for architecture i386.
ruby (libruby.dylib) is for architecture x86_64.

So, you need to install ruby with i386 x86_64 universal variant.

sudo port uninstall ruby (or deactivate)
sudo port install ruby +universal universal_archs="i386 x86_64"


By the way, in my experience,
"a combination of MacVim i386 and Vim x86_64" seems ok.

sakamoto

Tim Hammerquist

unread,
Sep 25, 2009, 8:45:57 PM9/25/09
to vim...@googlegroups.com
Kazuki Sakamoto <sakamot...@gmail.com> wrote:
> Tim Hammerquist <pen...@gmail.com> wrote:
>> ruby (MacPorts @1.8.7-p174)
>> MacVim (git master, HEAD=24d9b9)
>> Did I misunderstand?  Do I still need to build a custom ruby from
>> source?  Or is there something else going on here?

>
> MacVim (MacVim.app/Contents/MacOS/Vim) is for architecture i386.
> ruby (libruby.dylib) is for architecture x86_64.
>
> So, you need to install ruby with i386 x86_64 universal variant.
>
> sudo port uninstall ruby (or deactivate)
> sudo port install ruby +universal universal_archs="i386 x86_64"

Thanks!

I build the ruby macport as you described and it, as well as a
MacVim+rubyinterp, built without any issues.

FYI, MacPorts' ruby19 port will not build with those universal args.
It's a very similar error:

ld: warning: in ./libruby1.9.dylib, file is not of required architecture
Undefined symbols for architecture i386:
"_ruby_options", referenced from:
_main in main.o
"_ruby_sysinit", referenced from:
_main in main.o
"_ruby_init_stack", referenced from:
_main in main.o
"_ruby_run_node", referenced from:
_main in main.o
"_ruby_init", referenced from:
_main in main.o
ld: symbol(s) not found for architecture i386

For whatever reason, the same commands to the ruby19 port don't build a
compatible dylib. I haven't had a chance to go over the output, and
it's not a big deal. In any case, it's an issue for MacPorts, not you
good folk. :)

Thanks for all your help!

Tim

björn

unread,
Sep 26, 2009, 6:43:09 AM9/26/09
to vim...@googlegroups.com
2009/9/26 Kazuki Sakamoto:

>
> By the way, in my experience,
> "a combination of MacVim i386 and Vim x86_64" seems ok.

Oh no! Don't do this! Due to my complete non-experience with 64 bit
I have managed to screw up the usage of variable widths -- some
messages have structures like this:

long var1
int var2

If this is passed from 64 bit Vim to 32 bit MacVim things will go
"kaboom" (or something less severe).

This is the reason I forced the -m32 flag when building the Vim
binary. I will fix this properly when I get the time.

Björn

björn

unread,
Sep 27, 2009, 4:09:39 PM9/27/09
to vim...@googlegroups.com
2009/9/26 björn:

I fixed this problem now, so it should be safe to have Vim 64 bit and
MacVim 32 bit (not that you'd want to anyway, but that's no reason not
to fix this problem). At the same time I tried compiling MacVim 64
bit -- it is possible to get it to compile but you have to go into the
Xcode project files and force it to compile 64 bit (both for MacVim
and PSMTabBarControl). Beware though: there are masses of warnings,
some are really problems that I need to fix too.

Some observations regarding 64 bit MacVim:

1. File sizes in 64 bit:

-rwxr-xr-x 1 winckler staff 613928 Sep 27 21:57 MacVim
-rwxr-xr-x 1 winckler staff 2475280 Sep 27 21:57 Vim

... and 32 bit:

-rwxr-xr-x 1 winckler staff 334344 Sep 2 14:31 MacVim
-rwxr-xr-x 1 winckler staff 2083056 Sep 2 14:31 Vim

Seems the MacVim binary almost _doubles_ in size! (Why?)

2. Memory usage in Activity Monitor shows me that a newly started 64
bit MacVim uses 12.4 Mb, 32 bit uses 9.1 Mb (although these numbers do
tend to change so I wouldn't take this too seriously).


Björn

Tyson Roberts

unread,
Sep 27, 2009, 10:14:19 PM9/27/09
to vim...@googlegroups.com
Is it possible that you're doing a dual compile 64/32 bit and the code
size is doubling because you have a darwin binary containing both? A
quick command line should check that, but if it is in fact doubling in
size, I have no answers other than some peculiarity about how MacVim
declares things (are you somehow compiling the entire code into an int
array and then operating off of it? :D).

Kazuki Sakamoto

unread,
Sep 27, 2009, 11:27:20 PM9/27/09
to vim...@googlegroups.com
On Mon, Sep 28, 2009 at 5:09 AM, björn <bjorn.w...@gmail.com> wrote:
> I fixed this problem now, so it should be safe to have Vim 64 bit and
> MacVim 32 bit (not that you'd want to anyway, but that's no reason not
> to fix this problem).

Thanks! I've checked it on Snow Leopard and Leopard.
It works fine.

(Without your fix, scroll bar doesn't work. I haven't noticed it.)

sakamoto

björn

unread,
Sep 28, 2009, 5:17:40 AM9/28/09
to vim...@googlegroups.com
2009/9/28 Kazuki Sakamoto:

>
> On Mon, Sep 28, 2009 at 5:09 AM, björn <bjorn.w...@gmail.com> wrote:
>> I fixed this problem now, so it should be safe to have Vim 64 bit and
>> MacVim 32 bit (not that you'd want to anyway, but that's no reason not
>> to fix this problem).
>
> Thanks! I've checked it on Snow Leopard and Leopard.
> It works fine.

Good!

> (Without your fix, scroll bar doesn't work. I haven't noticed it.)

Yes. That appears to have been the only problem...I did not notice it
at first either! :-)

Björn

björn

unread,
Sep 28, 2009, 5:29:09 AM9/28/09
to vim...@googlegroups.com
2009/9/28 Tyson Roberts:

>> Some observations regarding 64 bit MacVim:
>>
>> 1.  File sizes in 64 bit:
>>
>> -rwxr-xr-x  1 winckler  staff   613928 Sep 27 21:57 MacVim
>> -rwxr-xr-x  1 winckler  staff  2475280 Sep 27 21:57 Vim
>>
>> ... and 32 bit:
>>
>> -rwxr-xr-x  1 winckler  staff   334344 Sep  2 14:31 MacVim
>> -rwxr-xr-x  1 winckler  staff  2083056 Sep  2 14:31 Vim
>>
>> Seems the MacVim binary almost _doubles_ in size!  (Why?)
>
> Is it possible that you're doing a dual compile 64/32 bit and the code
> size is doubling because you have a darwin binary containing both? A
> quick command line should check that, but if it is in fact doubling in
> size, I have no answers other than some peculiarity about how MacVim
> declares things (are you somehow compiling the entire code into an int
> array and then operating off of it? :D).

Actually, it would have to be a long array as I just found out [1] --
ints are still 4 bytes LP64. :-)

I scratched my head after posting that, so I decided to do another
clean build of 32 bit MacVim and I got this:

-rwxr-xr-x 1 winckler staff 495288 Sep 27 22:35 MacVim
-rwxr-xr-x 1 winckler staff 2196224 Sep 27 22:35 Vim

Both builds (64bit/32bit) were one architecture only, debug mode, Vim
with normal features only. However, I still don't understand why file
sizes are so different: the first 32 bit binary was also a debug build
[or at least so I thought...maybe it is not] and it is much smaller
(apparently its not a 64 bit vs 32 bit problem though).

Björn

[1] Table 2-1:
http://developer.apple.com/mac/library/documentation/Darwin/Conceptual/64bitPorting/transition/transition.html

Ernst

unread,
Oct 15, 2009, 9:53:39 AM10/15/09
to vim_mac
Hello Bjorn,

In September you sugested to build MacVim from source on Snow Leopard;
but I waited until it would install via the MacPorts package manager.
Because that still doesn't work I'm considering building from source
after all. Do you know when MacVim will work in MacPorts?

Ernst

travis

unread,
Oct 15, 2009, 5:24:11 PM10/15/09
to vim_mac
Have you taken a look at homebrew? (http://github.com/mxcl/homebrew)

It's a new package manager for the Mac and it would be very easy for
you (or anyone else) to create
a formula (see brew help/documentation) to install MacVim.

björn

unread,
Oct 15, 2009, 6:07:11 PM10/15/09
to vim...@googlegroups.com
2009/10/15 Ernst <ernstj...@hotmail.com>:

Hi Ernst,

The easiest would be to download the latest snapshot:

http://code.google.com/p/macvim/wiki/Snapshot

unless you need to configure special features (although the snapshot
contains the most common ones) in which case it is quite easy to build
your own. Just follow the build instructions:

http://code.google.com/p/macvim/wiki/Building


Björn

Reply all
Reply to author
Forward
0 new messages