VOGONS


Ykhwong's Daum Build and OSX

Topic actions

First post, by LewisWoolridge

User metadata
Rank Newbie
Rank
Newbie

I'm attempting to use the Daum build on a Mac and it isn't launching at all. I've looked all of the net and there is very little information regarding Daum and OSX.

As suggested by Ykhwong in the install text, I started with a vanilla SVN (in this case Dominus' build, which launches out-of-the-box), replaced the DosBox binary in the application package with the binary from the .7z on Ykhwong's site. I also added the accompanying library and config files to the same directory and the moved the downloaded-separately OPT directory to the system root.

After that, attempting to launch DosBox results in failure. There are no signs of why. The console reports only that "Permission is denied".

I have also attempted to launch the binary with sudo from the Terminal, but it reports "command not found" .

It seems to me that the DosBox binary is not being seen as a binary by the system, but I don't have enough knowledge to say.

Any help is greatly appreciated!

Lewis

2009 iMac | OS 10.6.8 | 2.8GHz Core i7 | 8GB RAM | Radeon HD 4850

Reply 2 of 69, by LewisWoolridge

User metadata
Rank Newbie
Rank
Newbie

Thanks very much for looking into it.

You mentioned in another post that you intend to compile with static libraries. Sounds like that might address many issues and simplify things.

I look forward to your next build!

Lewis

Reply 3 of 69, by Red32

User metadata
Rank Newbie
Rank
Newbie
ykhwong wrote:

Recently I performed a clean install of of OS X mavericks for compiling the dosbox source.
I can take a look at the issue sooner or later.

I join the question.

Last edited by Red32 on 2014-01-08, 22:06. Edited 4 times in total.

Reply 4 of 69, by Dominus

User metadata
Rank DOSBox Moderator
Rank
DOSBox Moderator

It should just work...

Windows 3.1x guide for DOSBox
60 seconds guide to DOSBox
DOSBox SVN snapshot for macOS (10.4-11.x ppc/intel 32/64bit) notarized for gatekeeper

Reply 5 of 69, by Red32

User metadata
Rank Newbie
Rank
Newbie

In fact I really don't understand what I did wrong. I put the files in the folder /opt/local/lib
I did sudo chmod 777 on dosbox
I open dosbox in Terminal and it says:
/Users/Red/Desktop/20131117_Intel_i386/dosbox
dyld: Library not loaded: libtbb.dylib
Referenced from: /Users/Red/Desktop/20131117_Intel_i386/dosbox
Reason: image not found
Trace/BPT trap: 5

I've tried to do export LIBS='/opt/local/lib/libtbb.dylib' and it doesn't work.
After that I've changed directory to dosbox binary and run export DYLD_LIBRARY_PATH="./LIBS/"
After that I got error:
MBPRed:20131117_Intel_i386 Red$ /Users/Red/Desktop/20131117_Intel_i386/dosbox
dyld: Library not loaded: /opt/local/lib/libphysfs.1.dylib
Referenced from: /Users/Red/Desktop/20131117_Intel_i386/dosbox
Reason: no suitable image found. Did find:
/opt/local/lib/libphysfs.1.dylib: file too short
Trace/BPT trap: 5

after that I did "sudo port install physfs" and "sudo port -f activate physfs" and got that error:
MBPRed:20131117_Intel_i386 Red$ /Users/Red/Desktop/20131117_Intel_i386/dosbox
dyld: Library not loaded: /opt/local/lib/libphysfs.1.dylib
Referenced from: /Users/Red/Desktop/20131117_Intel_i386/dosbox
Reason: no suitable image found. Did find:
/opt/local/lib/libphysfs.1.dylib: mach-o, but wrong architecture
Trace/BPT trap: 5

And after that I don't know what to do.

I'm not a programmer. I don't have experience in compiling the sources and I don't want to do that. Can you help, ykhwong?
I read the manuals. Maybe I'm wrong but I see that they all about compiling the sources, not installing and running...
Ykhwong, do you compile your dosbox as universal binary (for both PPC and Intel platforms) ?

My OS is OS X Mavericks 10.9.1. Any news?

Last edited by Red32 on 2014-01-14, 09:26. Edited 1 time in total.

Reply 6 of 69, by Jarvik7

User metadata
Rank Newbie
Rank
Newbie

Your "wrong architecture" error is probably caused by you installing a 64bit copy of the lib while dosbox is searching for a 32bit copy.
You can replace libphysfs.1.dylib (1kb) with a copy of the other libphysfs dylib (>200k) in the zip and it will work.

At least, it did for me before I did a clean install of Mavericks. Now I get a bus error on start that must have previously been prevented by some old files left over from 5+ years of updating the same osx install. Maybe something related to x11/xquartz...

So for now I'm using the win32 version under wineskin until a fixed build comes out.

Hopefully the next build will be built properly as an OSX .app with the libs built into the bundle rather than requiring separate installation into the global path (an unsafe practice).

Last edited by Jarvik7 on 2014-01-14, 08:45. Edited 1 time in total.

Reply 7 of 69, by Red32

User metadata
Rank Newbie
Rank
Newbie

Jarvik7, thanks. I'll try and write here about your advice.

I totally agree with you that this DosBox version requires to be packed. It's not "Apple way" to put libs and frameworks outside the application. I also tried Wineskin and win32 version and it works very cool and there is no need to make mess on hard drive to make it possible to launch. But I haven't solved the problem with languages. Have some problems with language inside of Wineskin.

I prefer to use OSXDosBoxWrapper to launch wrapped dosbox and I dreamed about a simple binary to run Windows 98.

Reply 8 of 69, by Jarvik7

User metadata
Rank Newbie
Rank
Newbie
Red32 wrote:

Jarvik7, thanks. I'll try and write here about your advice.

I totally agree with you that this DosBox version requires to be packed. It's not "Apple way" to put libs and frameworks outside the application. I also tried Wineskin and win32 version and it works very cool and there is no need to make mess on hard drive to make it possible to launch. But I haven't solved the problem with languages. Have some problems with language inside of Wineskin.

I prefer to use OSXDosBoxWrapper to launch wrapped dosbox and I dreamed about a simple binary to run Windows 98.

Let me know if you get "bus error 10" or not after replacing that dylib. Googling hasn't given me anything and there isn't enough information provided to troubleshoot it on my own. I haven't installed x11 or xquartz (which I had on my older Mavericks install), so it could be that. Then again, 0.74 and dominus' builds work fine.

Ideally Ykhwong would apply his patchset to Boxer, but that's asking too much 😜

Reply 9 of 69, by Red32

User metadata
Rank Newbie
Rank
Newbie

Where to get x86 version? I have libphysfs.1.dylib as a symlink to 2.0.3 version. Tried to google and I've found only this:
sudo port clean physfs
sudo port install physfs +universal
sudo port -f activate physfs
cd /Users/Red/Desktop/20131117_Intel_i386/
export LIBS='/opt/local/lib/libtbb.dylib'
export DYLD_LIBRARY_PATH="./LIBS/"
/Users/Red/Desktop/20131117_Intel_i386/dosbox
and I got the same error.

Jarvik7. I want to recommend you to try OSXDosBoxWrapper. It's just a .app folder which runs binary of itself and DosBox which mounts Resources folders and runs scripts. You just click - it just works. It's very easy to pack and share with somebody. No need to install something like Boxer. And when you run the wrapper it runs everything automatically. No need to click the folder with the game/application and do something else..
Link: http://portingteam.com/topic/584-sticky-osxdo … -10-dosbox-073/

You can replace DosBox binary to your version. To do that you have to remove current binary completely(strange bug) and put a new binary after that. Do not replace straightly. It will start the old binary.

Reply 10 of 69, by Jarvik7

User metadata
Rank Newbie
Rank
Newbie

Red: Ykhwong's zip of libraries contains several libphysfs.* files, just make a copy of one of the big ones and rename it to libphysfs.1.dylib.
libphysfs.1.dylib is supposed to just be a symlink to the big file anyways, but it seems to be broken.

As for properly compiling a 32bit version yourself through ports etc, I haven't tried so don't know. Googling the error message should give useful answers though (I've seen them before).

As for your problem with the wrapper starting the old binary if you directly replace it, that can probably be fixed using 'touch' in the terminal.

Reply 11 of 69, by Dominus

User metadata
Rank DOSBox Moderator
Rank
DOSBox Moderator

Only use the libs that come with yhkwongs built. Mixing libs and binaries depending on those, compiled with different compilers or against different SDKs is bound to lead to errors.
Not to mention that the Mac-deployment-target needs to be the same as well (yhkwong if you read this, use depöoyment target 10.5 for the best compatibilty to older OS X versions - best use SDK 10.5 along with that).

Using MacPorts to build libs needs also some work. By default Macports builds native architecture only, meaning for at least 10.7 and newer it will be 64bit.
If you build or rebuild everything with the universal variant (port install portname +universal) builds both 32 and 64bit "fat" binaries

Windows 3.1x guide for DOSBox
60 seconds guide to DOSBox
DOSBox SVN snapshot for macOS (10.4-11.x ppc/intel 32/64bit) notarized for gatekeeper

Reply 12 of 69, by Red32

User metadata
Rank Newbie
Rank
Newbie

Thanks to all of you guys.
Finally it works. Short manual:
1) Unarchive opt archive from ykhwong site to /opt/local/lib
2) In terminal
sudo rm /opt/local/lib/libphysfs.1.dylib
sudo cp /opt/local/lib/libphysfs.2.0.2.dylib /opt/local/lib/libphysfs.1.dylib
cd /Users/Red/Desktop/20131117_Intel_i386/ /*or any other path to dosbox*/
export DYLD_LIBRARY_PATH="./LIBS/"
./dosbox

Jarvik7. I don't have that bus error 10. I found the answer what is bus error in C/C++ http://stackoverflow.com/questions/212466/wha … -is-a-bus-error
I don't know why it appears. Thanks for the help once again.
And one more thing. I believe that we can wrap that dosbox with libs, autorun, terminal scripts with some kind of software or manually. Or maybe Xcode has some features... I've heard about App Wrapper. I'll try to find something for that.

Last edited by Red32 on 2014-01-14, 18:13. Edited 1 time in total.

Reply 13 of 69, by IIGS_User

User metadata
Rank Oldbie
Rank
Oldbie

App Wrapper, the premier tool to package applications for the Mac App Store & web sites
I use this for my Xojo project files, to add Application category and internal Apple Help files to the compiled application.
If you own an Apple certificate, you could also add the Gatekeeper functionality (Codesign) using AppWrapper.

Klimawandel.

Reply 14 of 69, by Red32

User metadata
Rank Newbie
Rank
Newbie

Guys, I have a good news about Ykhwong Build for OS X. I made a application using AppleScript.
It makes backup of /opt/local/lib on startup then creates symlink, then starts Ykhwong DOSBox with environment variables! 😊 On DOSBox startup or quit or crash it unlinks /opt/local/lib and returns old lib folder. So you'll not have problems with lib folder.

I'm fixing minor bugs and alpha testing my repack. I can upload it soon.

Jarvick7. I got bus error 10 one time. It was something with dylibs too

Last edited by Red32 on 2014-01-15, 16:00. Edited 1 time in total.

Reply 15 of 69, by Dominus

User metadata
Rank DOSBox Moderator
Rank
DOSBox Moderator

Don't do it this way.
People might have LOADS of files in /opt/local/lib when they are using MacPorts.
Rather edit the dosbox binary to point at a different folder. Use otool or so for that.

Windows 3.1x guide for DOSBox
60 seconds guide to DOSBox
DOSBox SVN snapshot for macOS (10.4-11.x ppc/intel 32/64bit) notarized for gatekeeper

Reply 16 of 69, by Dominus

User metadata
Rank DOSBox Moderator
Rank
DOSBox Moderator

Another reason why taewong should static link the libraries...

Windows 3.1x guide for DOSBox
60 seconds guide to DOSBox
DOSBox SVN snapshot for macOS (10.4-11.x ppc/intel 32/64bit) notarized for gatekeeper

Reply 17 of 69, by Red32

User metadata
Rank Newbie
Rank
Newbie
Dominus wrote:

Don't do it this way.
People might have LOADS of files in /opt/local/lib when they are using MacPorts.
Rather edit the dosbox binary to point at a different folder. Use otool or so for that.

I understand that, but I'm not programmer to compile, build from sources and I prefer to wait developer's "official" improvements. Then I'll do .app for new release (if he doesn't do it). Or I can upload .app package then Ykhwong can use it to pack his releases for OS X with applying fixes.

In fact there is no danger for macport's /opt/local/lib folder because script makes backup for it (with administrative privileges) and restores the folder before DOSBox starts... (no influence on DOSBox). So when DOSBox is running you have the original /opt/local/lib which was before with all of your files.

Anyway you have to rewrite this folder to run this DOSBox with opt.7z archive from Ykhwong's site. I think that I made it better with backing up and there is no problem to download libs from macports.

hmmm You got me interested.. I'll try otool. Maybe it's not so difficult for me.

Reply 18 of 69, by Dominus

User metadata
Rank DOSBox Moderator
Rank
DOSBox Moderator

First of all it's already a big no no to put any files in /opt/local. It can wreak havoc with Macports.
Second backing up a folder with hundreds of MB of files and doing other stuff with it - all with admin rights... - not a good idea.
You can use otool WITHOUT having to compile dosbox. Best way is to convince taewong to static compile and then make an app out of that...

Again reconsider doing this

Windows 3.1x guide for DOSBox
60 seconds guide to DOSBox
DOSBox SVN snapshot for macOS (10.4-11.x ppc/intel 32/64bit) notarized for gatekeeper

Reply 19 of 69, by Red32

User metadata
Rank Newbie
Rank
Newbie
Dominus wrote:
First of all it's already a big no no to put any files in /opt/local. It can wreak havoc with Macports. Second backing up a fold […]
Show full quote

First of all it's already a big no no to put any files in /opt/local. It can wreak havoc with Macports.
Second backing up a folder with hundreds of MB of files and doing other stuff with it - all with admin rights... - not a good idea.
You can use otool WITHOUT having to compile dosbox. Best way is to convince taewong to static compile and then make an app out of that...

Again reconsider doing this

Agree

in fact it doesn't matter the size of /opt/local/lib for mv command. You can rename or move files and folders inside one HDD/SSD without delay at all.