I am stuck in the old code/build/debug loop of C while I try to learn how to debug the SqueakSSL plugin on Squeak.
The Plugin builds (but fails) when compiled as an external plugin in plugins.ext, but does not compile when moved to plugins.int as an internal plugin.
The reason it fails is that the include for #include “openssl/ssl.h” fails and many functions in the plugin are not referenceable (howdya like those c terms!)
I tried changing the #include statment through various contortions and those failed, so it looks like the quick fix method is not to be.
To simplify debugging, I like to remove clutter. Ergo, I created a debugCogClean directory and added to it the minimal directories and files needed for a functioning image (with monticello) to run.
The plugins needed are:
INTERNAL_PLUGINS = \
AsynchFilePlugin \
B2DPlugin \
BitBltPlugin \
FilePlugin \
SocketPlugin \
MiscPrimitivePlugin
the directory tree is:
|-- platforms
| |-- Cross
| | |-- BitBltPlugin
| | |-- plugins
| | | |-- AsynchFilePlugin
| | | |-- B3DAcceleratorPlugin
| | | |-- FilePlugin
| | | `-- SocketPlugin
| | `-- vm
| `-- unix
| |-- config
| |-- doc
| | `-- HowToBuildFromSource.html
| |-- plugins
| | |-- AsynchFilePlugin
| | |-- B3DAcceleratorPlugin
| | | `-- zzz
| | |-- FilePlugin
| | `-- SocketPlugin
| |-- vm
| |-- vm-display-Quartz
| | |-- Resources
| | | `-- SqueakHelp
| | | `-- images
| | `-- zzz
| |-- vm-display-X11
| |-- vm-display-custom
| |-- vm-display-fbdev
| |-- vm-display-null
| |-- vm-sound-ALSA
| |-- vm-sound-MacOSX
| |-- vm-sound-NAS
| |-- vm-sound-OSS
| |-- vm-sound-Sun
| |-- vm-sound-custom
| `-- vm-sound-null
|-- src
| |-- plugins
| | |-- AsynchFilePlugin
| | |-- B2DPlugin
| | |-- B3DAcceleratorPlugin
| | |-- BitBltPlugin
| | |-- FilePlugin
| | |-- MiscPrimitivePlugin
| | `-- SocketPlugin
| `-- vm
`-- unixbuild
`-- bld
|-- AsynchFilePlugin
|-- B2DPlugin
|-- BitBltPlugin
|-- FilePlugin
|-- MiscPrimitivePlugin
|-- SocketPlugin
|-- vm
|-- vm-display-X11
|-- vm-display-null
|-- vm-sound-ALSA
|-- vm-sound-OSS
`-- vm-sound-null
This will be my base point for debugging plugins. Now, for the SqueakSSL plugin, I will create a directory debugCogSqueakSSL and copy in that clean tree. then jus t add the relevant SqueakSSL files.
Hopefully I can get this done soon.
Leave a comment